mii-tool如何查看网卡状态

联启 网络工具 13

本文目录导读:

mii-tool如何查看网卡状态-第1张图片-电脑手机工具软件下载 - 免费实用工具合集 | 联启科技

  1. 基本用法
  2. 命令输出解读
  3. 常用参数及高级用法
  4. 与 ethtool 的对比
  5. 常见问题及排查思路
  6. 总结命令

mii-tool 是一个用于查看和配置网络接口卡(NIC)物理层状态的 Linux 命令行工具,它主要用于检测网卡的链路状态协商速度双工模式

使用 mii-tool 查看网卡状态非常简单,以下是具体方法和关键输出解读。

基本用法

在终端中执行以下命令:

mii-tool [网络接口名]

查看特定网卡eth0):

mii-tool eth0

查看所有网卡状态(不指定接口名):

mii-tool

命令输出解读

执行命令后,你会看到类似如下的输出:

状态正常:

eth0: negotiated 100baseTx-FD flow-control, link ok

状态异常(断开):

eth0: no link

输出字段含义:

  • eth0:网络接口名称。
  • negotiated:表示该网卡已经通过与交换机(或对端设备)协商,自动确定了连接参数。
  • 100baseTx:协商后的速率,通常为 10baseT100baseTx(100M)或 1000baseT(1000M/千兆),如果没有协商成功,可能会显示 100baseTx-HD10baseT-HD 表示只能以低性能运行。
    • -FD (Full Duplex): 全双工,网卡可以同时发送和接收数据。推荐状态
    • -HD (Half Duplex): 半双工,网卡在同一时间只能发送或接收数据,性能较差,容易导致冲突和降速。
  • flow-control:表示启用了流量控制(可选,通常显示或隐藏)。
  • link ok:物理链路已连接,网线插好了。
  • no link:物理链路断开,网线没插好、对端设备未通电或网线损坏。

常用参数及高级用法

除了基本查看,mii-tool 还可以用来查看或强制设置网卡工作模式(注意:此操作可能导致网络中断,请谨慎使用)。

显示更详细的物理层信息(-v)

mii-tool -v eth0

输出会包含更底层的信息,如PHY(物理收发器)地址、寄存器状态等。

eth0: negotiated 100baseTx-FD, link ok
  product info: vendor 00:00:00, model 0 rev 0
  basic mode:   autonegotiation enabled
  basic status: autonegotiation complete, link ok
  capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
  advertising:  1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
  link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD

可以看到它支持 1000baseT-FD(千兆),但由于对端设备支持原因,最终协商为 100baseTx-FD

强制设置网卡模式(设置 -F)

警告: 强制设置网卡模式通常不推荐,除非排障需要(例如排查协商错误),错误的设置可能导致网络不通或性能大幅下降。

# 强制设置为 100M 全双工
sudo mii-tool -F 100baseTx-FD eth0
# 恢复为自动协商(推荐)
sudo mii-tool -r eth0

查看是否启用自动协商

mii-tool eth0

如果输出中有 autonegotiation enablednegotiated,则表明启用了自动协商,如果被强制设置,则不会显示协商过程。

与 ethtool 的对比

重要提示: mii-tool 是一个较老的工具,主要适用于较旧的网卡(特别是10/100Mbps),对于现代千兆或更高速网卡,ethtool 是更推荐、更强大的工具

特性 mii-tool ethtool
适用网卡 较老的 10/100M 网卡 所有现代网卡(千兆/万兆等)
链接状态 支持 支持
自动协商 支持 支持
速度/双工 支持 支持
详细信息 较少 非常详细(寄存器、驱动、缓冲等)
支持光口 通常不支持 支持(SFP+/QSFP等)
当前状态 逐渐被淘汰 标准工具

建议:在大多数现代Linux发行版中,优先使用 ethtoolmii-tool 报错或无法识别网卡,可以直接使用 ethtool

# 查看 eth0 状态
ethtool eth0

常见问题及排查思路

  1. 输出为 no link

    • 首先检查网线是否插紧。
    • 检查对端设备(交换机、路由器)的端口是否工作正常、指示灯是否亮起。
    • 确认网线类型(直通线还是交叉线)是否正确(现代网卡大多支持自动翻转,通常直通线即可)。
    • 尝试更换网线或交换机端口。
  2. 输出显示半双工但实际希望全双工

    • 最常见原因:网卡与交换机之间的自动协商失败一侧强制设置了模式(例如你强制设定了100M全双工,但交换机设为自动协商,导致协商不完整,最终降级为半双工)。
    • 解决办法尽量不要强制设置任何参数,让两侧都启用自动协商,如果必须手动设置,确保网卡和对端设备两侧设置完全一致(例如都是 100M 全双工)。
  3. 网络速度很慢(例如百兆环境却只有10M)

    • 使用 mii-tool -vethtool eth0 查看协商结果。
    • 检查网线质量,特别是距离过长或线序损坏的超五类/六类线可能导致降速。
    • 确保对端交换机端口支持并设置了所需速率。

总结命令

命令 作用
mii-tool 查看所有网卡状态
mii-tool eth0 查看特定网卡状态
mii-tool -v eth0 查看详细状态
sudo mii-tool -r eth0 恢复自动协商
sudo mii-tool -F 100baseTx-FD eth0 强制设置(慎用)

首选建议: 对于现代系统,直接使用 ethtool 通常是更好的选择,如果非要使用 mii-tool,请先确认网卡兼容性。

标签: tool 网卡状态

抱歉,评论功能暂时关闭!