Debian 上 DHCP 服务(通常是 ISC DHCP Server,包名 isc-dhcp-server)无法启动,原因有很多种。下面按最常见 → 较少见的顺序说明,并给出排查方法。
DHCP 对配置语法非常敏感。
查看错误:
sudo journalctl -xe
sudo systemctl status isc-dhcp-server
常见错误:
subnetrange 不在 subnet 网段内快速检查:
sudo dhcpd -t
如果没输出,说明配置语法 OK。
/etc/default/isc-dhcp-server 里指定的网卡不存在或未 UP。
查看配置:
cat /etc/default/isc-dhcp-server
示例:
INTERFACESv4="eth0"
检查网卡:
ip a
如果网卡名是 ens33、enp0s3,必须改成对应名称。
DHCP 服务器网卡必须有静态 IP,且要和 subnet 在同一网段。
错误示例:
subnet 192.168.1.0 netmask 255.255.255.0 { ... }
但网卡是:
inet 10.0.0.1/24
解决:
sudo nano /etc/network/interfaces
或 Netplan(Debian 12+ 常见)
常见于:
检查:
sudo ss -lunp | grep :67
sudo systemctl enable isc-dhcp-server
sudo systemctl restart isc-dhcp-server
Debian 默认 AppArmor 可能阻止日志/lease 文件写入。
查看:
sudo aa-status
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;
}
网卡:
inet 192.168.1.1/24
dhcpd -t
ip a
cat /etc/default/isc-dhcp-server
systemctl status isc-dhcp-server
journalctl -xe
请贴出以下信息:
cat /etc/debian_version)/etc/dhcp/dhcpd.conf 内容systemctl status isc-dhcp-server 输出我可以直接告诉你是哪一行配置导致起不来。