温馨提示×

ubuntu dhcp为何慢如蜗牛

小樊
45
2026-10-18 18:25:15
栏目: 智能运维

Ubuntu 上 DHCP 获取 IP 慢如蜗牛,通常不是网卡本身的问题,而是系统里某些“等待”被拖长了。下面按最常见 → 较少见给你排一遍。


一、最常见原因(90% 的情况)

1️⃣ 等待 IPv6 DHCP(尤其路由器不支持)

Ubuntu 默认会同时尝试:

  • IPv4 DHCP
  • IPv6 SLAAC / DHCPv6

如果路由器 不支持 IPv6 DHCP,系统会傻等超时。

✅ 解决:

sudo nano /etc/netplan/00-installer-config.yaml

示例:

network:
  version: 2
  ethernets:
    enp0s3:
      dhcp4: true
      dhcp6: false
      accept-ra: false

然后:

sudo netplan apply

2️⃣ systemd-networkd / NetworkManager 冲突

有时两者都在管网络,导致重复请求、互相阻塞。

查看:

systemctl status systemd-networkd
systemctl status NetworkManager

✅ 推荐方案(桌面版):

  • 用 NetworkManager
  • 禁用 networkd
sudo systemctl disable systemd-networkd

服务器版反之。


3️⃣ DHCP 服务器响应慢(路由器问题)

Ubuntu 其实很快,只是:

  • 路由器 CPU 弱
  • 开启了 AP 隔离 / 客户端列表扫描
  • 开启了“安全检测”

✅ 测试:

sudo dhclient -v enp0s3

看卡在哪一步。


二、偏底层原因

4️⃣ 网卡等待链路训练(尤其虚拟机)

常见于:

  • VirtualBox
  • 老网卡驱动

查看:

dmesg | grep enp

✅ 可尝试:

ethernet:
  wakeonlan: false

5️⃣ DNS 解析卡住(不是 DHCP 慢,是“感觉慢”)

DHCP 完了之后:

  • systemd-resolved 在等 DNS

查看:

resolvectl status

✅ 临时验证:

sudo systemctl stop systemd-resolved

三、快速自检清单(30 秒)

# 1. 看 DHCP 耗时
sudo dhclient -v enp0s3

# 2. 看是否卡 IPv6
ip a

# 3. 看网络管理服务
systemctl | grep -E 'NetworkManager|networkd'

四、一句话总结

Ubuntu DHCP 慢,90% 是 IPv6 + NetworkManager/netplan 配置问题,不是系统烂。

如果你愿意,把下面信息贴出来我可以直接帮你改:

  • Ubuntu 版本
  • 桌面版 / 服务器版
  • cat /etc/netplan/*.yaml
  • ip a 输出

0 踩