我的 openwrt 路由器出了点小问题。我想知道 10M、100M、1000M 等格式或 10BaseT 的链路速度……但我在 /proc 或使用“ip”命令找不到它,而且“dmesg”也不提供这些数据。
你知道我在哪里可以找到它吗?如果数据是十六进制格式,对我来说就足够了。谢谢。
答案1
您可以使用ethtool
命令
http://linux.die.net/man/8/ethtool
编辑:
您需要检查“速度”部分。检查以下内容:
root ~ ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
如您所见,我的卡支持 10/100/1000,但是“速度”部分显示的是其当前运行的速度:
Speed: 100Mb/s
答案2
经过几个小时阅读 /proc/* 文件后,我找到了解决方案。芯片组:ar8113
"cat /proc/ar8113/port_status"
输出为:
LinkUp | NWay 模式已启用 RXPause | TXPause 已启用 双工已启用 | 速度 100M