admin管理员组文章数量:1546817
由于在家里和外面两种场景下使用树莓派,家里的wifi是192.168.3.1,在外面我用的我的360随身wifi,它的IP固定是192.168.253.1(百度未找到修改它的方法),为了方便连接树莓派,需要给树莓派设置一个固定的IP,通过网线直连,给eth0配置一个固定ip是可以的,但如果不想带网线想通过无线连接怎么办?
网上大多是通过在/etc/dhcpcd.conf文件中配置多个SSID来实现的,但经过我的反复实验发现不能达到连接不同的wifi,例如配置了如下内容:
SSID MyWiFi
static ip_address=192.168.3.111/24
static routers=192.168.3.1
static domain_name_servers=192.168.3.1
interface eth0
static ip_address=192.168.1.3/24
static routers=192.168.1.1
这时通过MyWiFi和网线连接都是可以的。但是增加MyWiFi2之后如下:
SSID My360WiF
static ip_address=192.168.153.111/24
static routers=192.168.253.1
static domain_name_servers=192.168.253.1
SSID MyWiFi
static ip_address=192.168.3.111/24
static routers=192.168.3.1
static domain_name_servers=192.168.3.1
interface eth0
static ip_address=192.168.1.3/24
static routers=192.168.1.1
这时关闭MyWiFi连接到My360WiFi之后虽然界面上wlan0IP地址却是192.168.3.111,但ifconfig可以看到IP还是192.168.153.111,同时看到360WiFi也提示有一个设备连接了,但是却ping不通网关,本机也ping不通树莓派,如下图:
也可能是360WiFi的问题,但是使用另一种方法却是两个WiFi切换正常的。
1.修改/etc/wpa_supplicant/wpa_supplicant.conf文件,给network项增加id_str项如下:
network={
ssid="MyWiFi"
psk="xxxxx"
key_mgmt=WPA-PSK
id_str="home"
}
network={
ssid="My360WiFi"
psk="xxxxxxxxx"
key_mgmt=WPA-PSK
id_str="move"
}
2.修改/etc/network/interface文件,增加如下内容:
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface home inet static
address 192.168.3.111
gateway 192.168.3.1
netmask 255.255.255.0
iface move inet static
address 192.168.253.111
gateway 192.168.253.1
netmask 255.255.255.0
最后效果如下图:
虽然界面上显示的IP是192.168.253.5,而且也ping不通网关,但是本机可以ping通树莓派,而且也可以通过ssh和vnc连接上,在没有360WiFi有MyWiFi的时候也能顺利连接到MyWiFi,时间也不早了,打完收工。
注:上面的方法参考了如下网页:
https://forum.level1techs/t/multiple-static-ips-for-different-wi-fi-connections-on-linux-is-it-possible/102753/21
networking - How to setup multiple WiFi networks? - Raspberry Pi Stack Exchange
版权声明:本文标题:树莓派为连接不同Wifi分配固定IP的方法 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727183293a1100823.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论