我有一个远程 xen 服务器,我注意到 autoneg 中的速度链接是 100 全双工;我的整个网络都是 1000 全双工;你知道这是什么原因吗?Ethtool 提到了我的服务器公布的速度和链接伙伴公布的速度(我的交换机),以及其他较慢的速度,也是 1000 全双工。我很想尝试以这种方式手动强制速度:
ethtool -s eth0 speed 1000 duplex full autoneg off
我可以尝试另一个命令,但我不确定它是否有用,它是:
ethtool -s eth0 speed 1000 duplex full autoneg on
显然我担心的是链接会中断,而且这是一个远程服务器;我可以访问它(它只有 2 英里远),但我宁愿避开它(在家工作);
如果失败,我只想测试手动速度并反转到自动协商,我正在考虑使用 crontab 每小时设置一次自动协商,但我认为这不是一个好策略。
在这种情况下你会怎么做?
答案1
如果自动协商的结果为 100Mbps,则很有可能:
- 另一侧配置为100Mbps(或为100Mbps硬件)。
- 物理层存在故障(即电缆质量下降或连接器接触不良)。
假设您知道两端都不是 100Mbps 硬件,并且您没有将另一端的 NIC 或交换机重新配置为 100Mbps 配置,那么您可以假设问题出在电缆或连接上。
如果您想通过远程方式获得更明确的答案,您可以尝试铜线测试(如果可能)。即使链路被断开,测试完成后也会自动重新启用,通常需要大约 30-60 秒。与临时凑合的 cron 作业相比,这种方法更可靠、更专业;它还可能提供有关电缆故障的确切信息以及故障发生的位置。但请注意,这实际上不会产生任何修复,因为它很可能表明您需要前往现场进行修复。
但是,如果您强制使用 1000Mbps 全双工,则链接很可能会断开。假设存在物理问题,自动协商会协商较慢的速度,因为并非所有数据线都已连接。如果您强制使用 1000 F/D,则 NIC 需要所有 4 对才能建立链接。您不仅不会学到任何东西,而且还会给自己带来风险和更多工作。
回答你关于我会怎么做的问题,我会等到我去现场时再做,并确保我随身带着替换的跳线。在这种情况下,如果你把任何事情都交给运气,你只能假设你最终会切断自己的联系,让你觉得自己像个傻瓜,并在此过程中给自己“火上浇油”。