我有一个连接到交换机的 Ubuntu 16.04 服务器,他们协商半双工连接而不是全双工,我不知道为什么。我尝试使用另一个端口和电缆(另一个服务器使用它通过全双工成功连接)但问题仍然存在,因此这排除了电缆或交换机端口问题,我认为问题与 Ubuntu 配置或 NIC 有关.
# lspci | grep Ethernet
02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5722 Gigabit Ethernet PCI Express
# mii-tool -v eno1
eno1: negotiated 1000baseT-HD flow-control, link ok
product info: vendor 00:50:ef, model 45 rev 0
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
link partner: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
关于如何解决这个问题并获得全双工连接(1000baseT-FD)的任何想法?我不喜欢强制链接到 1000baseT-FD,我更愿意修复/调试自动协商,以便自动选择此模式。
有一个错误会
mii-tool
导致在千兆速度链接的情况下切换 HD 和 FD。您可以通过运行来确认链接实际上正在
1000baseT-FD
运行ethtool
:或者,您可以从中
dmesg
看出该链接正在运行全双工: