如何取消无线接口与接入点的关联?

时间:2008-10-21 11:54:45

标签: linux wireless

我正在尝试创建一个在linux中睡眠无线网卡的脚本。为此,我正在使用deepsleep的{​​{1}}命令:

iwpriv

问题是此命令仅在无线卡断开连接并解除关联时才有效。当它连接时没有问题,因为如果我断开连接,它会自动解除关联。但如果它断开连接,有时它会自动关联(但不会连接)到未加密的网络,因此我无法运行iwpriv wlan0 deepsleep 1 命令。我发现的唯一解决方法是先将模式更改为Ad-Hoc,然后再将其更改为Managed,然后才能使用该卡:

iwpriv

但我认为这有点棘手。

是否存在更直接的方法来解除Linux中的无线网卡?

3 个答案:

答案 0 :(得分:1)

许多驱动程序使用与NULL AP关联的约定与当前AP断开连接。加上这个短暂的延迟,你可能有你想要的。例如,

iwconfig wlan0 ap 00:00:00:00:00:00
sleep 1
iwpriv wlan0 deepsleep 1

通常,与AP断开连接的时间不应超过250-500毫秒,但小数睡眠命令(例如睡眠0.25)不可移植。

答案 1 :(得分:0)

我没有修复,但您可以尝试将卡的ESSID设置为随机字符串,并希望附近没有接入点使用该ESSID。这应该阻止自动连接到任何未加密的网络。不是解决方案,但可能是更好的创可贴。

答案 2 :(得分:0)

如果你执行ifconfig wlan0 down会不会解除关联?