![重新启动 RPI 2 时 DHCP 失败](https://linux22.com/image/1453089/%E9%87%8D%E6%96%B0%E5%90%AF%E5%8A%A8%20RPI%202%20%E6%97%B6%20DHCP%20%E5%A4%B1%E8%B4%A5.png)
当我们启动我的 Raspberry pi 2 时,出现以下错误:
当 RPI 重新启动时,我们得到了一个 IP,并且能够上网,所以我们不知道这个错误到底意味着什么。我们连接到 WPA2-企业网络。
这是我的接口文件:
auto lo
iface lo inet loopback
iface eth0 inet dhcp
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
这是我的 wpa_supplicant.conf 文件:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="Here comes my ssid"
proto=RSN
key_mgmt=WPA-EAP
pairwise=CCMP
auth_alg=OPEN
identity="Here comes my identity"
password="here comes my password"
}
如何解决这个问题?
答案1
您获得通过 DHCP 获得的 IP 地址意味着您的 Raspberry 上有另一个 DHCP 客户端处于活动状态。您可以通过运行以下命令来检查安装了多少个客户端:
dpkg -l | grep dhcp
就我的情况而言(5 月 5 日的 Raspberry Pi 2 图像),我得到了:
ii dhcpcd5 6.7.1-1+rpi1 armhf DHCPv4, IPv6RA and DHCPv6 client with IPv4LL support
ii isc-dhcp-client 4.2.2.dfsg.1-5+deb70u6 armhf ISC DHCP client
ii isc-dhcp-common 4.2.2.dfsg.1-5+deb70u6 armhf common files used by all the isc-dhcp* packages
因此显然安装了两个 DHCP 客户端(dhcpcd5 和 isc-dhcp-client)。DHCPCD 检测到另一个客户端的存在,但未启动,并显示错误。要消除错误,您可以删除 dhcpcd 客户端:
apt-get remove dhcpcd5
答案2
我遇到了类似的问题,通过运行以下命令可以解决:
sudo systemctl disable dhcpcd.service
sudo systemctl reboot
问题似乎是,它dhcpcd.service
正在安装在某些更新中,并且与/etc/network/interfaces
答案3
DHCPD 守护程序允许您的 RaspberryPi 所运行的 Linux 作为您网络的 DHCP 服务器。
然而,在大多数情况下,您的网络上已经在运行 DHCP 服务器 - 通常是 ISP 提供的调制解调器/路由器。
你的 RaspberryPi 正在尝试启动 DHCPD 守护进程,但因为你已预先配置了操作系统(通过编辑/etc/network/interfaces
)以告知网络接口为 DHCP 客户端(即获得如果 DHCPD 守护进程无法启动(设计使然),则表示该守护进程无法获取 IP 地址(而不是分发 IP 地址)。这是正常现象。
我唯一应该提到的是,因为您不希望您的 RaspberryPi 成为您网络上的 DHCP 服务器,所以我建议您禁用该守护进程,以便它不会启动(从而使用资源)并且不会显示您遇到的错误 - 请参阅此答案:https://raspberrypi.stackexchange.com/questions/22297/disabling-dhcp-server。