/sys/class/net/eth0/carrier_changes 值的含义

/sys/class/net/eth0/carrier_changes 值的含义

有人能告诉我该文件中存储的数字是什么意思吗?最近,启动完成后需要 2-3 分钟才能建立互联网连接,我想找出原因。

答案1

据我观察,有两个文件放在/sys/class/net/eth0/一起是有意义的。第一个是carrier,第二个是carrier_changes这些文件与您的互联网连接所需时间(2-3 分钟)无关。

从我的测试来看,当您从 eth0 端口拔下电缆时,文件carrier会显示0并且carrier_changes增加一。重新插入电缆后,carrier显示1已连接,并carrier_changes再次增加一。示例如下:

从连接电缆开始:

terrance@terrance-ubuntu:/sys/class/net/eth0$ cat carrier_changes 
2
terrance@terrance-ubuntu:/sys/class/net/eth0$ cat carrier
1

拆除的电缆:

terrance@terrance-ubuntu:/sys/class/net/eth0$ cat carrier
0
terrance@terrance-ubuntu:/sys/class/net/eth0$ cat carrier_changes 
3

重新连接的电缆:

terrance@terrance-ubuntu:/sys/class/net/eth0$ cat carrier
1
terrance@terrance-ubuntu:/sys/class/net/eth0$ cat carrier_changes 
4

因此,从外观上看,它carrier_changes会跟踪电缆被移除以及与系统连接的次数,或者执行了可能的网络更改的次数。


导致连接速度缓慢的其他可能原因或解决方案:

电缆/电缆上的连接器可能已损坏。尝试使用另一根电缆连接路由器。

eth0您还可以查看实际获取 IP 地址所需的时间。可以执行以下watch命令ifconfigwatch -n 5 'ifconfig eth0'

也许可以看看路由器的 DHCP 租约设置了多长时间。也许路由器范围内的 IP 地址不足,它正在等待另一个空闲的 IP 地址。

也许可以尝试重置系统电源,方法是切断系统的所有电源,然后按几次电源按钮以耗尽系统中的所有剩余电量。然后重新插入电源并打开电源。


希望这可以帮助!

答案2

如果您使用 Cat5 以太网电缆连接两个千兆以太网接口(千兆连接需要 Cat6 电缆),也会发生这种情况。

您可以测试禁用自动协商并修复与快速以太网的连接:

# ethtool -s YOUR_INTERFACE_NAME speed 100 duplex full autoneg off

为了使此操作在重启后永久生效,方法会根据你使用的 Linux 发行版而改变,请查看这里这里这里

相关内容