在 Debian 系统中,验证 DHCP 服务是否正常工作,可以从服务器是否运行、是否分配地址、客户端是否能获取地址几个层次来检查。下面按常见场景说明。
systemctl status isc-dhcp-server
正常应看到 active (running)。
重启/启动服务:
sudo systemctl restart isc-dhcp-server
sudo systemctl enable isc-dhcp-server
DHCP 使用 UDP 67(服务器)和 68(客户端):
ss -ulnp | grep 67
或
netstat -ulnp | grep 67
应看到类似:
UNCONDED 0 0 0.0.0.0:67 0.0.0.0:* users:(("dhcpd",pid=...,fd=...))
dhcpd -t
无输出通常表示配置语法正确。
配置文件位置:
/etc/dhcp/dhcpd.conf
cat /var/lib/dhcp/dhcpd.leases
可以看到已分配的 IP、MAC、租期等信息:
lease 192.168.1.100 {
starts 3 2026/01/21 10:00:00;
ends 3 2026/01/21 11:00:00;
hardware ethernet 00:11:22:33:44:55;
}
journalctl -u isc-dhcp-server -f
或
tail -f /var/log/syslog | grep dhcp
常见成功日志:
DHCPDISCOVER
DHCPOFFER
DHCPREQUEST
DHCPACK
dhclient -v eth0
成功时会看到:
DHCPDISCOVER
DHCPOFFER
DHCPREQUEST
DHCPACK
查看获取到的 IP:
ip addr show eth0
cat /var/lib/dhcp/dhclient.leases
DHCP 服务器必须监听正确的接口。
cat /etc/default/isc-dhcp-server
示例:
INTERFACESv4="eth0"
DHCP 服务器的接口不能是 DHCP 获取的 IP,例如:
ip addr show eth0
应为:
inet 192.168.1.1/24
tcpdump -i eth0 port 67 or port 68 -n
客户端请求时应看到:
isc-dhcp-server 正在运行/etc/dhcp/dhcpd.conf 配置正确/var/lib/dhcp/dhcpd.leases 有租约记录如果你愿意,可以告诉我:
我可以帮你按具体环境一步步排查。