在 Ubuntu 上 DHCP 老是断连,通常不是单一原因,而是下面几类里的一种或几种叠加。我按最常见 → 较少见给你梳理,并给出对应排查/解决办法。
DHCP 客户端(Ubuntu 一般用 systemd-networkd 或 NetworkManager)在租约快到期时会续租:
就会导致:
✅ 查看租约:
cat /var/lib/dhcp/dhclient.leases
或(networkd):
journalctl -u systemd-networkd
✅ 解决:
如果是 WiFi:
✅ 关闭 WiFi 电源管理:
sudo iwconfig wlan0 power off
(wlan0 换成你的网卡)
✅ 查看断线日志:
journalctl -u NetworkManager
如果你:
NetworkManagersystemd-networkd二者会抢 DHCP,导致反复断连。
✅ 检查:
systemctl status systemd-networkd
systemctl status NetworkManager
✅ 建议:
Ubuntu 默认:
如果你手动改过 /etc/network/interfaces 或 netplan,很容易出问题。
✅ 查看 netplan:
cat /etc/netplan/*.yaml
✅ 正确示例(DHCP):
network:
version: 2
ethernets:
eth0:
dhcp4: true
然后:
sudo netplan apply
某些路由器:
✅ 试试固定 MTU:
sudo ip link set eth0 mtu 1492
✅ 判断方法:
Ubuntu 默认开 IPv6,有时:
✅ 临时关闭:
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
请直接看日志:
journalctl -u NetworkManager -b
# 或
journalctl -u systemd-networkd -b
把出现 DHCP, timeout, lease, carrier lost 的日志贴出来,我可以精准判断。
你可以告诉我:
我可以直接给你一套对症配置。