温馨提示×

ubuntu dhcp为什么掉线

小樊
48
2026-10-27 15:08:30
栏目: 智能运维

在 Ubuntu 上出现 DHCP 掉线(IP 丢失 / 定期断网) 是比较常见的问题,原因通常集中在 网络管理组件、DHCP 租约、驱动或硬件 这几类。下面按常见原因 + 排查方法给你梳理一下。


一、最常见原因

1. NetworkManager 与 systemd-networkd 冲突

Ubuntu 桌面版默认用 NetworkManager,服务器版可能用 systemd-networkd。

如果两者同时管理同一网卡,就会出现 DHCP 被反复释放。

检查:

systemctl status NetworkManager
systemctl status systemd-networkd

解决:

  • 桌面版:禁用 networkd
sudo systemctl disable --now systemd-networkd
  • 服务器版:禁用 NetworkManager
sudo systemctl disable --now NetworkManager

2. DHCP 租约到期未续租

DHCP 服务器分配 IP 是有期限的(如 1 小时 / 12 小时)。

如果 Ubuntu 没及时续租,就会“掉线”。

查看租约:

cat /var/lib/dhcp/dhclient.leases

解决:

  • 确保 dhclient 在运行
ps aux | grep dhclient
  • 重启网络
sudo systemctl restart NetworkManager

3. 网卡被电源管理“睡死”

尤其是 无线网卡 / 笔记本。

检查:

iwconfig

看 Power Management: on

关闭:

sudo iwconfig wlan0 power off

4. 网卡驱动 / 固件问题

常见于:

  • Realtek
  • 某些 USB 网卡

查看:

dmesg | grep -i eth
dmesg | grep -i wlan

典型现象:

link down
eth0: link is not ready

解决:

  • 更新内核
  • 安装厂商驱动

5. 路由器 / 交换机问题

不一定是 Ubuntu 的问题:

  • 路由器 DHCP 池太小
  • ARP 表满
  • 路由器重启

验证:

ping 192.168.1.1

掉线时是否能 ping 通网关。


二、快速排查步骤(推荐)

# 1. 看当前 IP
ip addr

# 2. 看路由
ip route

# 3. 看 DHCP 日志
journalctl -u NetworkManager -b

# 4. 手动续租
sudo dhclient -r
sudo dhclient eth0

三、临时稳定方案(服务器常用)

干脆不用 DHCP,改静态 IP:

sudo nano /etc/netplan/01-netcfg.yaml
network:
  version: 2
  ethernets:
    eth0:
      dhcp4: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8]
sudo netplan apply

四、你可以补充这些信息,我能更精确定位

  1. Ubuntu 版本(22.04 / 20.04 / 18.04?)
  2. 有线还是无线?
  3. 桌面版还是服务器版?
  4. 掉线频率(几分钟 / 几小时?)
  5. journalctl -u NetworkManager 报错内容

我可以帮你直接看日志定位。

0 踩