在 Ubuntu 24.04 Server 上 DHCP 获取不到 IP,而且之前日志里看到 eth0: lost carrier,这说明问题不是 DHCP 配置本身,而是 网卡物理链路或驱动问题。
1.确认网卡是否识别
1 2
| ip link lspci -nnk | grep -A3 -i ethernet
|
2.安装 RTL8125 驱动
基于dkms管理驱动
1 2 3 4 5 6 7 8 9 10
| 1.requirement sudo apt install build-essential dkms linux-headers-$(uname -r) git
2.clone git clone https://github.com/awesometic/realtek-r8125-dkms.git
3.build && install cd realtek-r8125-dkms sudo ./dkms-install.sh sudo modprobe r8125
|
- 驱动装好后,
ip link 查看接口状态
ethtool eth0 看 Link detected: yes
3.检查 netplan 配置
假设网卡是 eth0:
1 2 3 4 5
| network: version: 2 ethernets: eth0: dhcp4: true
|
4.手动尝试 DHCP
1 2
| sudo ip link set eth0 up sudo dhclient -v eth0
|
- 如果能拿到 IP → 问题是 netplan 或 wait-online 服务卡住
- 如果依然不行 → 驱动或物理链路问题
5.检查链路和物理连接
Link detected: yes → 驱动正常,网线通
Link detected: no → 网线坏、接口没开、交换机端口问题
结论
- DHCP 获取不到 IP 本质上是 网卡链路不通或驱动不支持
- 对 RTL8125 网卡,最关键的是安装 r8125 DKMS 驱动
- 网线、交换机、虚拟机网卡设置也要检查。