Jad*_*ias 77 networking linux ethernet
我想检查指定的 ethX 是否物理上启动或关闭。我如何使用命令行执行此操作?
小智 78
$ ethtool <eth?>
例如:
$ ethtool eth0
Run Code Online (Sandbox Code Playgroud)
提供:
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 pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000001 (1)
Link detected: yes
Run Code Online (Sandbox Code Playgroud)
小智 53
检查/sys/class/net/eth0/operstate此目录中的其他文件。
据我所知,这是特定于 Linux 2.6+ 的,但它为内核驱动程序提供了一个干净的接口。
sys可以在此处找到文件系统这部分的完整文档:
https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-net
Kur*_*urt 36
ethtool [interface]
最后一行显示了你想要的:
# ethtool eth0
eth0 的设置:
支持的端口:[ TP ]
支持的链路模式:10baseT/Half 10baseT/Full
100baseT/半 100baseT/全
1000baseT/全
支持自动协商:是
广告链接模式:10baseT/Half 10baseT/Full
100baseT/半 100baseT/全
1000baseT/全
广告自动协商:是
速度:1000Mb/s
双工:全
端口:双绞线
菲亚德:0
收发器:内部
自动协商:开
支持唤醒:g
唤醒:d
当前消息级别:0x00000037 (55)
检测到链接:是
goo*_*goo 28
ip link show
Run Code Online (Sandbox Code Playgroud)
是另一个。好老
ifconfig dev_name
Run Code Online (Sandbox Code Playgroud)
或者
ifconfig -a
Run Code Online (Sandbox Code Playgroud)
还会告诉您界面是否已启动。注意:使用这些方法时要小心,因为它们可能会显示有关链接状态的过时信息。
您也可以使用 mii-tool 查看链接是否已启动并检查协商速度。
# mii-tool
eth0:协商 100baseTx-FD,链接正常
要快速添加到@ goo的答案中,您可以将ip link或解释ip link show INTERFACE如下。
这是一个在管理上处于开启状态但在物理上处于关闭状态的端口:
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
换句话说,UP您可以看到表示系统已配置为尝试使用 NIC 进行网络连接。在NO-CARRIER这里告诉你什么阻止网络从工作的问题。
这是一个在管理上关闭的端口(它的物理层在技术上是“向上”的 - 它是一个虚拟机):
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
最后,这个端口工作正常:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq state UP mode DEFAULT group default qlen 1000
它是管理上的UP,LOWER_UP表示物理层正在工作(即有载波),第二个UP确认(实际上)IP 层已启动。
| 归档时间: |
|
| 查看次数: |
608181 次 |
| 最近记录: |