seo 发表于 2022-5-31 13:31:31

linux ethtool 查看网卡状态

linux ethtool 查看网卡状态发布时间:2022/5/31 13:11:00
            
                                                       
                                                       
            
      
      
               
                  ethtool 工具关于网络协商功能介绍;

ethtool - Display or change ethernet card settings(ethtool 是用来显示和更改网卡设置的工具);这个工具比较复杂,功能也特别多。由于洋文比较难懂。所以我们还是把网络设备协商方式的设置方法说一说。

2.1 ethtool 显示网络端口设置功能;

这个功能比较好办。就是ethtool 后面直接接网絽接口就行;比如下面的例子;

# ethtool eth0
Settings for eth0:
         Supported ports: [ TP MII ]
         Supported link modes: 10baseT/Half 10baseT/Full
                                 100baseT/Half 100baseT/Full
         Supports auto-negotiation: Yes
         Advertised link modes: 10baseT/Half 10baseT/Full
                                 100baseT/Half 100baseT/Full
         Advertised auto-negotiation: No 注:自动协商关闭
         Speed: 100Mb/s 注:速度 100Mb
         Duplex: Full 注:全双工
         Port: MII
         PHYAD: 32
         Transceiver: internal
         Auto-negotiation: off
         Supports Wake-on: pumbg
         Wake-on: d
         Current message level: 0x00000007 (7)
         Link detected: yes 注:eth0已经激活;
2.2 ethtool 设置网卡的协商模式;

在ethtool的-h帮助中我们查看到有这样的帮助信息;

ethtool -s DEVNAME /
               [ speed 10|100|1000 ] /
               [ duplex half|full ] /
               [ port tp|aui|bnc|mii|fibre ] /
               [ autoneg on|off ] /


* 实例一: 把网卡eth0 速度改为10Mb/s,采用半双工;

# ethtool -s eth1 speed 10 duplex half
# ethtool eth1
Settings for eth1:
         Supported ports: [ TP MII ]
         Supported link modes:   10baseT/Half 10baseT/Full
                                 100baseT/Half 100baseT/Full
         Supports auto-negotiation: Yes
         Advertised link modes:10baseT/Half 10baseT/Full
                                 100baseT/Half 100baseT/Full
         Advertised auto-negotiation: No
         Speed: 10Mb/s 注:速度 10M/s
         Duplex: Half注:半双工
         Port: MII
         PHYAD: 32
         Transceiver: internal
         Auto-negotiation: off
         Supports Wake-on: pumbg
         Wake-on: d
         Current message level: 0x00000007 (7)
         Link detected: no 注:eth1没有激活;

* 实例二: 把网卡eth0 速度改为100Mb/s,采用全双工;

# ethtool -s eth1 speed 100 duplex full
# ethtool eth1
Settings for eth1:
         Supported ports: [ TP MII ]
         Supported link modes:   10baseT/Half 10baseT/Full
                                 100baseT/Half 100baseT/Full
         Supports auto-negotiation: Yes
         Advertised link modes:10baseT/Half 10baseT/Full
                                 100baseT/Half 100baseT/Full
         Advertised auto-negotiation: No
         Speed: 100Mb/s注:速度 100M/s
         Duplex: Full 注:全双工
         Port: MII
         PHYAD: 32
         Transceiver: internal
         Auto-negotiation: off
         Supports Wake-on: pumbg
         Wake-on: d
         Current message level: 0x00000007 (7)
         Link detected: no 注:eth1网卡没有激活;



命令描述:

ethtool 是用于查询及设置网卡参数的命令。

使用概要:
ethtool ethx       //查询ethx网口基本设置,其中 x 是对应网卡的编号,如eth0、eth1等等
ethtool –h      //显示ethtool的命令帮助(help)
ethtool –i ethX    //查询ethX网口的相关信息
ethtool –d ethX    //查询ethX网口注册性信息
ethtool –r ethX    //重置ethX网口到自适应模式
ethtool –S ethX    //查询ethX网口收发包统计
ethtool –s ethX       //设置网口速率10/100/1000M、设置网口半/全双工、设置网口是否自协商

使用举例:
1)# ethtool eth1
    Settings for eth1:
         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: umbg
         Wake-on: d
         Link detected: yes
2)# ethtool -i eth1
    driver: e1000
    version: 5.0.43-k1
    firmware-version: N/A
    bus-info: 06:08.1
3)# ethtool -S eth1
    NIC statistics:
      rx_packets: 58068300
      tx_packets: 87124083
      rx_bytes: 1589713008
      tx_bytes: 2165825901
      rx_errors: 0
      tx_errors: 0
      rx_dropped: 0
      tx_dropped: 0
      multicast: 0
      collisions: 0
      rx_length_errors: 0
      rx_over_errors: 0
      rx_crc_errors: 0
      rx_frame_errors: 0
      rx_fifo_errors: 0
      rx_missed_errors: 0
      tx_aborted_errors: 0
      tx_carrier_errors: 0
      tx_fifo_errors: 0
      tx_heartbeat_errors: 0
      tx_window_errors: 0
4)# ethtool -s eth1 autoneg off speed 100 duplex full

相关参考:
1)# which ethtool      //查询 ethtool 存放的路径
   /sbin/ethtool
2)# rpm -qf /sbin/ethtool      //查询 ethtool 的版本信息
    ethtool-1.6-5
3)将 ethtool 设置永久保存在网络设备的方法
         解决方法一:
         ethtool 设置可通过 /etc/sysconfig/network-scripts/ifcfg-ethX 文件保存,从而在设备下次启动时激活选项。
例如:ethtool -s eth0 speed 100 duplex full autoneg off
此指令将eth0设备设置为全双工自适应,速度为100Mbs。若要eth0启动时设置这些参数, 修改文件/etc/sysconfig/network-scripts/ifcfg-eth0 ,添加如下一行:
ETHTOOL_OPTS="speed 100 duplex full autoneg off"
          解决方法二:
          将ethtool设置写入/etc/rc.d/rc.local之中。
               
      
      
   
            
      
      
https://www.yilongzhijia.cn/tupian/seo365t.jpg
页: [1]
查看完整版本: linux ethtool 查看网卡状态