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