我之前已经能够使用 WiFi 适配器连接到 BeagleBone 上的开放 WiFi 网络,方法是将以下内容添加到/etc/network/interfaces
:
auto wlan0
allow-hotplug wlan0 # For automatic connection
iface wlan0 inet dhcp
wireless-essid OpenNetwork
然而,这似乎不再起作用了。我尝试过多个 BeagleBones 和多个 WiFi 适配器,但总是得到这样的结果:
$ ifup wlan0
Listening on LPF/wlan0/b4:75:0e:1f:2c:b4
Sending on LPF/wlan0/b4:75:0e:1f:2c:b4
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 7
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 12
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 14
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 17
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 9
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 2
No DHCPOFFERS received.
No working leases in persistent database - sleeping.
奇怪的是我是能够连接以下内容:
iwconfig wlan0 essid OpenNetwork && dhclient wlan0
有什么建议么?
答案1
这对我有用。这是一个相当肮脏的修复,我希望有人可以改进这个答案。
wlp3s0
是我的wifi网络接口,DIR-300NRU是ssid。根据您的情况调整这些。
我的界面配置在/etc/network/interfaces
:
auto wlp3s0
allow-hotplug wlp3s0
iface wlp3s0 inet dhcp
wireless-essid "DIR-300NRU"
wireless-mode managed
我跑:
sudo ifup wlp3s0
(下一步不是解决方案的一部分)
我检查我的 wifi 设备:
$ sudo iw dev wlp3s0 info
Interface wlp3s0
ifindex 3
wdev 0x1
addr 74:df:bf:b5:07:bb
type managed
wiphy 0
txpower 20.00 dBm
当 DHCP 尝试连接时,我在另一个终端中运行以下命令:
sudo iw dev wlp3s0 connect DIR-300NRU
现在 wifi 一直工作,直到我重新启动系统。我可以看到输出更改sudo iw dev wlp3s0 info
为:
$ sudo iw dev wlp3s0 info
Interface wlp3s0
ifindex 3
wdev 0x1
addr 74:df:bf:b5:07:bb
ssid DIR-300NRU
type managed
wiphy 0
channel 1 (2412 MHz), width: 40 MHz, center1: 2422 MHz
txpower 20.00 dBm
答案2
我找到了一个解决方案,但它有点hacky
iface dev inet manual
post-up iw dev wlan1 connect essid
post-up dhclient dev
根据需要替换 dev 和 ssid。