在 Ubuntu 上“DHCP 不分配 IP”通常分两种情况:Ubuntu 作为 DHCP 客户端拿不到地址,或 Ubuntu 作为 DHCP 服务器不分配地址。下面分别说明常见原因和排查方法。
ip link
如果接口是 DOWN,先启用:
sudo ip link set eth0 up
查看配置:
cat /etc/netplan/*.yaml
正确示例(DHCP):
network:
version: 2
ethernets:
eth0:
dhcp4: true
应用配置:
sudo netplan apply
确认网络中有 DHCP 服务器:
sudo dhclient -v eth0
如果一直无响应,可能是:
确认没有拦截 UDP 67/68。
systemctl status NetworkManager
systemctl status isc-dhcp-server
若失败,看日志:
journalctl -u isc-dhcp-server
常见问题:
range示例:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8;
}
编辑:
/etc/default/isc-dhcp-server
确保:
INTERFACESv4="eth0"
DHCP 服务器接口必须有对应网段 IP:
ip addr show eth0
sudo ss -lunp | grep 67
ip addr
ip route
journalctl -u isc-dhcp-server
tcpdump -i eth0 port 67 or port 68
如果你能贴出:
我可以直接帮你定位具体原因。