在 Debian 上排查 DHCP 故障,通常分为 服务器端(isc-dhcp-server / kea) 和 客户端(DHCP 获取失败) 两类。下面按“通用思路 + 常见命令 + 典型问题”来说明。
dpkg -l | grep -E 'isc-dhcp-server|kea'
常见服务名:
isc-dhcp-serverkea-dhcp4systemctl status isc-dhcp-server
# 或
systemctl status kea-dhcp4-server
如果失败:
journalctl -u isc-dhcp-server -xe
dhcpd -f -d -cf /etc/dhcp/dhcpd.conf
-f:前台运行-d:调试日志-cf:指定配置文件会直接打印 DHCPDISCOVER / DHCPOFFER / DHCPREQUEST 等过程
编辑:
/etc/default/isc-dhcp-server
加入:
OPTIONS="-d"
或在 dhcpd.conf 中:
log-facility local7;
配合 /etc/rsyslog.conf 输出到单独文件。
dhcpd -t -cf /etc/dhcp/dhcpd.conf
/etc/default/isc-dhcp-server
示例:
INTERFACESv4="eth0"
查看是否监听:
ss -upln | grep dhcp
dhclient -v eth0
释放再获取:
dhclient -r eth0
dhclient -v eth0
tcpdump -i eth0 port 67 or port 68
你应该看到:
journalctl -u networking
journalctl -u dhclient
iptables -L -n
确保:
临时关闭测试:
systemctl stop nftables
服务端日志常见:
no free leases on subnet
解决:
rangedefault-lease-timehost fixed {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.50;
}
若 IP 不在 subnet 内会直接失败。
dhcpd 只会在指定接口启动,否则:
Not configured to listen on any interfaces!
systemctl status kea-dhcp4-server
journalctl -u kea-dhcp4-server
配置文件:
/etc/kea/kea-dhcp4.conf
测试配置:
kea-dhcp4 -t /etc/kea/kea-dhcp4.conf
systemctl statusjournalctl -xedhcpd -tdhcpd -f -dtcpdumpdhclient -v如果你愿意,可以贴出:
tcpdump 输出我可以直接帮你定位具体原因。