igo*_*nya 4 linux command-line networking wifi wpa-supplicant
我使用以下命令进行连接:
sudo wpa_supplicant -B -D nl80211 -i wlan_card -c /etc/wpa_supplicant/connection.conf
Run Code Online (Sandbox Code Playgroud)
它连接良好,并保持持久连接。如果 AP 出现故障,连接就会断开,如果 AP 恢复正常,连接就会恢复。如果我关闭 wifi 接口电源:
sudo ip link set wlan_card down
Run Code Online (Sandbox Code Playgroud)
它下降了。当我提出这个问题时:
sudo ip link set wlan_card up
Run Code Online (Sandbox Code Playgroud)
最初使用 wpa_supplicant 启动的连接再次重新连接。
这种稳定、持久的连接非常好,但如果我想连接到不同的 AP,就会出现问题。
当我尝试将 wpa_cli 与任何命令一起使用时,它只会给出以下错误:
Failed to connect to non-global ctrl_ifname: (nil) error: No such file or directory
Run Code Online (Sandbox Code Playgroud)
当我尝试断开连接时:
sudo iw dev wlan_card disconnect
Run Code Online (Sandbox Code Playgroud)
它断开连接,但立即重新连接,因此,目前,我必须保留:
ps -AlF|grep -i wpa
sudo kill -KILL wpa_pid
Run Code Online (Sandbox Code Playgroud)
我想知道停止连接的正确方法,还是杀死是唯一的方法?
在连接到不同的 AP 之前,您可以停止正在运行的服务实例wpa_supplicant:
sudo killall wpa_supplicant
Run Code Online (Sandbox Code Playgroud)
配置您的/etc/wpa_supplicant/connection.conf然后通过 进行连接wpa_supplicant。