本节书摘来自异步社区《树莓派开发实战(第2版)》一书中的第2章,第2.3节,作者[英]Simon Monk(蒙克),韩波 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。
面临问题
你想给自己的树莓派配置一个静态IP地址,这样该地址就不会发生变化了。
解决方案
要给树莓派配置IP地址,无论它使用的是有线网络,还是无线网络,你都需要编辑配置文件 /etc/network/interfaces。
如果你想查看自己的/etc/network/interfaces文件,可以借助下列命令。
$ more /etc/network/interfaces该文件看起来应该如下所示。
auto lo iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp这相当于说,Raspbian会留意你的树莓派上的3个网络接口,每个接口前面都以单词iface开头。
Lo
本地环回接口,该接口可忽略。
eth0
一个使用以太网接口的网络连接。
wlan0
一个使用USB Wi-Fi无线网卡或树莓派 3内置的Wi-Fi网卡的网络接口。
对于树莓派上面的每个网络连接,它们都有不同的IP地址。就本例来说,你将为以太网接口指定一个静态的IP地址。如果你想把Wi-Fi接口的IP地址也设置成静态的,只需编辑接口文件中的相应条目即可。
要想编辑该文件,可以借助如下所示的命令。
$ sudo nano /etc/network/interfaces首先,要确定使用哪个IP地址。对这个IP地址的要求是:它应该是网络中其他机器尚未使用的地址,同时还要位于你的家用集线器的IP地址范围之内。就这里而言,我们将使用192.168.1.116。
编辑该文件内容,将单词dhcp改为static,并添加如下所示内容。
address 192.168.1.116 netmask 255.255.255.0 gateway 192.168.1.1按照这里的要求修改文件后,静态IP地址192.168.1.116已经被分配给了接口eth0。
auto lo iface lo inet loopback iface eth0 inet static address 192.168.1.116 netmask 255.255.255.0 gateway 192.168.1.1 allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp对于大部分网络来说,网络掩码都应该设为255.255.255.0,同时将网关设置为家庭路由器本身的IP地址。这样的话,该IP地址就与你连接路由器的管理控制台所用地址完全一致了。
编辑保存该文件之后,请运行下面的命令来清空所有现存的DHCP配置项,然后重启树莓派,以便让所做修改生效。
$ sudo rm /var/lib/dhcp/* $ sudo reboot进一步探讨
内部IP地址通常都类似于192.168.1.116这样,对于每台电脑来说,只有最后一个数字会有所变化。内部IP地址的另一种常用格式是10.0.0.16。
参考资料
在Wikipedia网站上,有关于IP地址的详尽说明,具体请参考http://bit.ly/13ZsgoY 。
相关资源:敏捷开发V1.0.pptx