【Linux】解决可恶的 “NIC Link is Down”_从善若水的博客-CSDN博客
- -可恶的 “NIC Link is Down”. 怎样解决 “NIC Link is Down”. 可能是 e1000e网卡驱动的bug. Switch Port 出了问题. 尝试更新你的BIOS && 开启ASPM模式. 关闭 流控(flow control). 更换主板与板载网卡和CPU🚑. 可恶的 “NIC Link is Down”.
前一段时间调试5G实时视频业务,网卡总是会出现 NIC Link is Down的错误,一般几秒之后网卡就会恢复。但是也会遇到一些情况网卡发生 NIC Link is Down之后无法自动恢复,这时候只能重新启动测试PC才能恢复。
下面是我通过dmesg抓到的错误信息:
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Down
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Up1000Mbps Full Duplex, Flow Control: Rx/Tx
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Down
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Up1000Mbps Full Duplex, Flow Control: Rx/Tx
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Down
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Up1000Mbps Full Duplex, Flow Control: Rx/Tx
May2909:10:35 server kernel: e1000e: eth0 NIC Link is Down
总的来说错误原因就是 kernel: e1000e: eth0 NIC Link is Down。
这是最简单的方式了,只需要替换一根网线,然后继续观察问题是否会再次出现。有些时候有问题的网线会导致这样的错误。
可以尝试更新最新版本的 e1000e 网卡驱动,具体步骤如下:
换一个NIC再进行测试,观察问题是否再次出现。如果NIC是绑定在主板上的,那只能更换一个主板再进行测试了。
改变 PC/Server 的交换机端口,再进行测试。你可以通过 ethtool命令查看Linux上的网络配置与交换机上的配置是否一致。
根据经验如果关闭 ASPM模式也可能导致这样的问题。除此之外,保证你的BIOS版本是最新的,如果不是可以进行更新。
有些时候开启 流控之后会导致一些奇怪的网络错误,可以使用命令将其关闭,并观察问题是否会再次出现,
ethtool-A eth0 rx off tx off
使用下述命令查看修改是否生效,
[root@CSRS:~]thtool -a eth0
Pause parametersforeth0:
Autonegotiate: on
RX: off
TX: off
如果看到off,那么流控已经被关闭了。
有一次我发现在 E3-1230v2上持续出现这样的问题,后来我索性将磁盘移植到一块新的 E3-1230v2上,并更换了主板(包括板载NIC)。