我刚刚在 Linux 中安装了新的千兆网络接口卡 (NIC)。如何判断它是否真的设置为千兆速度?我看到ethtool
有一个设置速度的选项,但我似乎不知道如何报告其当前速度。
答案1
只需使用类似这样的命令ethtool eth0
即可获取所需信息。例如:
$ sudo ethtool eth0 | grep Speed
Speed: 1000Mb/s
答案2
当 ethtool 缺失时,可以使用来自内核的信息:
cat /sys/class/net/<interface>/speed
名为 eth0 的接口示例:
cat /sys/class/net/eth0/speed
答案3
笔记:的手册页mii-tool
有以下免责声明:
This program is obsolete. For replacement check ethtool.
用于mii-tool
观察协商的网络速度。
前任。
eth0: no link
eth1: negotiated 100baseTx-FD, link ok
答案4
正如 Khaled 提到的,你应该能够仅使用接口作为参数来运行 ethtool。这将列出支持的速度、宣传的速度、当前速度以及许多其他内容:
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
Link detected: yes
您还可dmesg
以为您的接口运行 ,并执行 grep ,但如果您的系统已经运行了很长时间并且当前缓冲区不再具有该信息,这可能不起作用(在这种情况下,您必须 grep 较旧的 /var/log/dmesg.* 文件):
dmesg |grep eth0
[ 2.867481] e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
[ 19.429444] ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 19.431555] e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
[ 19.449341] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 26.972379] e1000: eth0: e1000_set_tso: TSO is Enabled
[ 29.920458] eth0: no IPv6 routers present