使用 Debian 自动连接到任何开放的 WiFi

使用 Debian 自动连接到任何开放的 WiFi

我有一个已注册到 WiFi 网络上的 WiFi 模块。该区域内还有其他几个 WiFi 网络。但是,计算机不知道可以连接到哪个 WiFi 网络。

因此,计算机必须尝试查看可以使用哪个 WiFi 访问互联网。如果它无法使用一个 WiFi 上网(例如访问 cnn.com),则应尝试下一个。

有没有办法使用 debian 或类似 WiCD 的程序自动执行此操作?

答案1

您可以在 BASH 中执行此操作。只需每分钟检查一次您的连接或 ping 响应(如果响应太高)。扫描网络并切换。

对于扫描,您可以使用:
$ iwlist wlan0 scan

为了连接,您可以使用

#!/bin/bash
killall -9 dhclient
ifconfig wlan0 down
ifconfig wlan0 up
iwconfig wlan0 channel CHAN
iwconfig wlan0 essid ESSID
ifconfig wlan0 up
dhclient wlan0

您可以使用 grep/awk/cut 轻松地将扫描脚本绑定(组合)到连接脚本,这些都是非常有用的工具。

如果您正在使用 Ubuntu(Spying!!!)通过以下方式关闭网络管理器服务:
临时解决方案直到重新启动
$ /etc/init.d/network-manager 停止
永久解决方案直到 chmod +x(当您想要网络管理器返回时)
$ chmod -x /etc/init.d/network-manager

在 Fedora 上(您现在是安全的!)该服务称为 NetworkManager:
temp sol:
$ service NetworkManager stop
perm sol:
$ service NetworkManager disable

相关内容