Raspberry Pi 配置为静态 IP 也获得 DHCP IP
Raspberry Pi configured for static IP also gets a DHCP IP
我已将 Raspberry Pi 配置为静态 IP。我的 /etc/network/interfaces
看起来像这样:
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
然而,出于某种奇怪的原因,每次我重新启动我的 Pi 或我的路由器时,我的 Pi 都会获得请求的 IP (192.168.1.2),但也会获得一个 DHCP 地址 (192.168.1.18)。所以我的 Pi 有两个地址。
当然,这不一定是问题,我只是觉得奇怪。难道我做错了什么?还是不够?我的路由器几乎完全锁定以进行管理,但我可以为设备输入静态 IP - 如果我将 Pi 配置为执行此操作,是否有必要?
动态地址在 ifconfig
中不明显:
eth0 Link encap:Ethernet HWaddr b8:27:eb:5d:87:71
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:236957 errors:0 dropped:34 overruns:0 frame:0
TX packets:260738 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:35215632 (33.5 MiB) TX bytes:70023369 (66.7 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:27258 errors:0 dropped:0 overruns:0 frame:0
TX packets:27258 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3397312 (3.2 MiB) TX bytes:3397312 (3.2 MiB)
但我也可以在 .18 上进行 ping、ssh 和所有操作。
接口eth0上的IP地址可以通过ip addr
查看。可能是 eth0 配置了两个 IP 地址 192.168.1.2 和 192.168.1.18。
您也可以通过
向接口eth0添加多个IP地址
sudo ip addr add <IP address> dev eth0
如果您不想要 IP 地址 192.168.1.18,您可以通过
将其删除
sudo ip addr del 192.168.1.18 dev eth0
由于您可以如上所述向接口 eth0
添加多个 IP 地址,我相信解决您的问题的方法是从 /etc/network/interfaces
文件中删除 auto eth0
行。
我已将 Raspberry Pi 配置为静态 IP。我的 /etc/network/interfaces
看起来像这样:
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
然而,出于某种奇怪的原因,每次我重新启动我的 Pi 或我的路由器时,我的 Pi 都会获得请求的 IP (192.168.1.2),但也会获得一个 DHCP 地址 (192.168.1.18)。所以我的 Pi 有两个地址。
当然,这不一定是问题,我只是觉得奇怪。难道我做错了什么?还是不够?我的路由器几乎完全锁定以进行管理,但我可以为设备输入静态 IP - 如果我将 Pi 配置为执行此操作,是否有必要?
动态地址在 ifconfig
中不明显:
eth0 Link encap:Ethernet HWaddr b8:27:eb:5d:87:71
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:236957 errors:0 dropped:34 overruns:0 frame:0
TX packets:260738 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:35215632 (33.5 MiB) TX bytes:70023369 (66.7 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:27258 errors:0 dropped:0 overruns:0 frame:0
TX packets:27258 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3397312 (3.2 MiB) TX bytes:3397312 (3.2 MiB)
但我也可以在 .18 上进行 ping、ssh 和所有操作。
接口eth0上的IP地址可以通过ip addr
查看。可能是 eth0 配置了两个 IP 地址 192.168.1.2 和 192.168.1.18。
您也可以通过
向接口eth0添加多个IP地址sudo ip addr add <IP address> dev eth0
如果您不想要 IP 地址 192.168.1.18,您可以通过
将其删除sudo ip addr del 192.168.1.18 dev eth0
由于您可以如上所述向接口 eth0
添加多个 IP 地址,我相信解决您的问题的方法是从 /etc/network/interfaces
文件中删除 auto eth0
行。