温馨提示×

如何分析dmesg网卡掉线

小樊
43
2026-10-18 04:52:01
栏目: 编程语言

分析 dmesg 中**网卡掉线(link down / disconnect / reset)**问题,通常可以按下面的思路一步一步来。


一、先确认“掉线”的表现

常见现象包括:

  • 网络突然中断,几秒~几分钟后恢复
  • ip link 看到 state DOWN
  • SSH 断开、NFS 卡死、数据库连接失败
  • dmesg 中有 link down / link up / carrier lost

二、提取 dmesg 中的网卡相关日志

1. 过滤网卡名(如 eth0、ens33、enp3s0)

dmesg | grep -i eth
dmesg | grep -i ens
dmesg | grep -i enp

2. 通用关键词搜索

dmesg | grep -iE "link|carrier|down|up|reset|timeout|error|eth"

3. 带时间戳查看(推荐)

dmesg -T | grep -i eth

三、常见 dmesg 报错及含义

1. 网卡 link 状态变化(最常见)

eth0: link down
eth0: link up, 1000 Mbps, full duplex

含义:物理链路断开又恢复
可能原因:

  • 网线松动 / 水晶头接触不良
  • 交换机端口问题
  • 光模块 / 光纤问题
  • 网卡或主板供电不稳

✅ 排查:

  • 换网线
  • 换交换机端口
  • 看对端设备日志

2. 载波丢失(carrier lost)

eth0: carrier lost

含义:物理层信号丢失
原因:

  • 网线质量差
  • 距离过长
  • 电磁干扰

3. 网卡 reset / watchdog

eth0: NIC Link is Down
ixgbe 0000:03:00.0: adaptor reset

含义:驱动或硬件触发重置
原因:

  • 驱动 bug
  • 固件问题
  • 中断异常 / MSI-X 问题

✅ 排查:

ethtool -i eth0

升级:

  • 网卡驱动
  • 网卡固件
  • 内核

4. 超时 / TX timeout

NETDEV WATCHDOG: eth0: transmit queue 0 timed out

含义:发送队列卡死
原因:

  • 驱动死锁
  • 高负载
  • 虚拟化问题(virtio)

✅ 排查:

  • ethtool -S eth0
  • 看 tx_timeout
  • 升级内核 / 驱动

5. PCIe 错误(服务器常见)

pcieport 0000:00:1c.0: AER: Corrected error received

含义:PCIe 总线不稳定
原因:

  • 网卡松动
  • 主板问题
  • 电源不足

✅ 排查:

lspci -vv | grep -i ethernet

四、结合 ethtool 进一步分析

ethtool eth0
ethtool -S eth0
ethtool -i eth0

重点关注:

  • Speed / Duplex 是否异常
  • rx_errors / tx_errors
  • reset / link_down

五、系统层面辅助排查

journalctl -k | grep eth
ip monitor

六、典型分析流程(总结)

  1. dmesg -T | grep eth
  2. 看是否有 link down / reset / timeout
  3. 判断是否周期性(硬件 vs 驱动)
  4. 换线 / 换口 / 换卡
  5. 升级驱动 / 固件 / 内核
  6. 服务器看 PCIe 和电源

如果你愿意,可以把具体的 dmesg 网卡日志贴出来,我可以直接帮你判断是网线问题、驱动问题还是硬件故障。

0 踩