在 Debian 上 DHCP 获取 IP 很慢,通常不是 DHCP 协议本身慢,而是系统或网络环境里的某些环节在等待/重试。下面按常见原因 → 现象 → 解决办法给你梳理。
Debian 默认会同时尝试:
如果路由器 不支持 IPv6 或响应慢,就会卡很久。
现象
dhclient / networking / NetworkManagerdhcp6 相关等待解决
# 禁用 IPv6(临时)
sysctl -w net.ipv6.conf.all.disable_ipv6=1
# 永久(/etc/sysctl.conf)
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
或只关 DHCPv6(推荐):
# /etc/network/interfaces
iface eth0 inet6 manual
dhclient 默认会:
典型表现
解决(加快失败)
# /etc/dhcp/dhclient.conf
timeout 10;
retry 1;
Debian 上如果:
NetworkManager/etc/network/interfaces会导致 双重 DHCP 请求 / 等待
检查
systemctl status NetworkManager
解决 二选一:
systemctl disable --now NetworkManager
DHCP 之前必须:
如果:
就会卡很久
检查
ip link
ethtool eth0
验证
dhclient -v eth0
看卡在哪一步:
DHCPDISCOVER 后没 DHCPOFFER → 服务端问题慢通常来自:
systemd-networkd 或 NetworkManager# 1. 看 DHCP 过程
dhclient -v eth0
# 2. 看系统日志
journalctl -u networking
journalctl -u dhclient
# 3. 看是否卡 IPv6
ip addr
# /etc/dhcp/dhclient.conf
timeout 10;
retry 1;
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
如果你愿意,可以告诉我:
我可以直接给你最合适的配置模板。