树莓派 装机后的必要操作 之 设置静态IP地址
我的树莓派型号:Raspberry Pi 2 Model B V1.1
装机系统:NOOBS v1.9.2
为了避免IP变来变去,我们将IP地址设置为静态的指定IP。
在终端中查看当前IP地址:
ifconfig
得到的输出:
出这个输出里面,我们得到了3个比较重要的信息:
address(addr) : 125.217.42.72
broadcast(Bcast) : 125.217.43.255
netmask(Mask) : 255.255.254.0
- address(addr) 就是这个树莓派的IP地址。
broadcast(Bcast) 是广播网段,有了这个位址才能广播封包到区域网路内的所有主机。通过广播网段可以推算出gateway,gateway 是闸讯通,正确设定闸讯通才能连接外面的网路,否则只能连接区域网路内的主机。(broadcast(Bcast)中最后一个是减去1,得到的就是gateway:125.217.43.254)
pi@raspberrypi:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 125.217.43.254 0.0.0.0 UG 202 0 0 eth0 125.217.42.0 0.0.0.0 255.255.254.0 U 202 0 0 eth0
netmask(Mask) 就是网络掩码:又称子网掩码 用于从IP地址中提取网络号或主机号。网络掩码的结构为网络号全部是1,主机号全部是0的IP地址。
好了,知道了这些,我们就可以给树莓派设置静态IP地址了。
使用下面的命令,打开/etc/network/interfaces
文件,这个文件是用来设置网络的。
sudo leafpad /etc/network/interfaces
你会看到原文件里面大概是这个样子:
# interfaces(5) file used by ifup(8) and ifdown(8)
# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
将下面这行:
iface eth0 inet manual
修改为:
# iface eth0 inet manual
iface eth0 inet static
address 125.217.42.72
netmask 255.255.254.0
gateway 125.217.43.254
保存文件,并重启树莓派,这样,我们的设置就生效了。IP地址不会再改变了。
如果你想将IP地址设置为自动设置,就将刚刚的改动,再重新修改回去,就可以。
参考网站:
树莓派折腾录一. 必要的初始化(Raspberry Pi 2 model B + raspbian jessie)
http://blog.csdn.net/wangmi0354/article/details/50836398
Embedded Linux 的系统管理,#4: 网路设定
http://www.jollen.org/blog/2006/04/embedded_linux_4.html
网路参数设定指令
http://linux.vbird.org/linux_server/0140networkcommand/0140networkcommand.php
什么是netmask
http://zhidao.baidu.com/link?url=_LveB2qfR00wTKwGJuq1MwvdVtrptr1YVgLqo-KI9cvJSd7qrtFOKUzhDuL2YTn2HQNiJKuTUVQFCZrjVAp9lq
树莓派3更换软件源、设置静态IP、激活蓝牙
http://henson.github.io/post/raspberrypi3/