我一直在尝试确定我的 pi 上的 WiFi。简而言之,它启动时非常不可靠。我希望它位于静态 IP 上并且
目前我有一个监视器连接到 pi 来调试它。 eth0 已拔出。这是当前的行为:
- 开机
- ping 路由器:
Destination Host Unreachable
- 跑步
sudo ifdown eth0
- 现在wifi可以工作,但是使用dhcp ip,而不是静态ip(有时是,有时不是)
我最终将问题归结为 eth0 接口干扰 wlan0 或者存在路由问题。我只是不明白怎么办。我对 Linux 网络还是个新手。
如果有人能指出我正确的方向,我将不胜感激:) 提前谢谢您
设置:
/etc/网络/接口
auto eth0
allow-hotplug eth0
#iface eth0 inet manual
iface eth0 inet static
address 192.168.2.211
netmask 255.255.255.0
gateway 192.168.2.1
audo wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface home inet manual
address 192.168.2.212
netmask 255.255.255.0
gateway 192.168.2.1
wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="myssid"
scan_ssid=1
key_mgmt=WPA-PSK
proto=RSN
psk="************"
# pairwise=CCMP
# auth_alg=OPEN
id_str="home"
}
启动后立即使用路由表route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 eth0
0.0.0.0 192.168.2.1 0.0.0.0 UG 303 0 0 wlan0
192.168.2.0 192.168.2.1 255.255.255.0 UG 0 0 0 eth0
192.168.2.0 192.168.2.1 255.255.255.0 UG 303 0 0 wlan0
我知道无线在启动时和之后都已连接ifdown eth0
pi@octopi ~ $ iwconfig ; ifconfig
wlan0 IEEE 802.11bgn ESSID:"myssid" Nickname:"<WIFI@REALTEK>"
Mode:Managed Frequency:2.432 GHz Access Point: 00:11:22:33:44:55
Bit Rate:150 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Power Management:off
Link Quality=100/100 Signal level=81/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
eth0 Link encap:Ethernet HWaddr b8:27:eb:35:43:0f
UP BROADCAST MULTICAST MTU:1500 Metric:1
...
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
...
wlan0 Link encap:Ethernet HWaddr 74:da:38:83:a8:b0
inet addr:192.168.2.102 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1234 errors:0 dropped:93 overruns:0 frame:0
TX packets:347 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:192425 (187.9 KiB) TX bytes:85591 (83.5 KiB)
注意:我的静态 IP 位于 dhcp 池之外。
答案1
每个接口应该有不同的 IP 地址,因为它们是不同的网络,除非您发布配置来桥接它们;正常情况下,它们不能同时属于 192.168.2.0/24。
因此,我建议创建一个 br0(桥接接口),它将代表两个接口,并只为该虚拟接口提供一个地址;这样您就可以为两个接口定义相同的 IP 地址。
请注意,默认情况下,连接时以太网的路由优先级高于 WiFi。
auto eth0
allow-hotplug eth0
iface eth0 inet manual
bridge_stp off
auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
bridge_stp off
auto br0
iface br0 inet static
bridge_ports eth0 wlan0
address 192.168.2.211
netmask 255.255.255.0
gateway 192.168.2.1
bridge_stp off