zoukankan      html  css  js  c++  java
  • 21.Linux ethtool 命令详解

    命令描述:

    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 [speed 10|100|1000] [duplex half|full]  [autoneg on|off]        //设置网口速率10/100/1000M、设置网口半/全双工、设置网口是否自协商

    ethtool -E eth0 magic 0x10798086 offset 0x10 value 0x1A  修改网卡EEPROM内容(0x1079 网卡device id , 0x8086网卡verdor id  )

    ethtool -e eth0  : dump网卡EEPROM内容

     

    使用举例:
    1)[root@linux /]# 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)[root@linux /]# ethtool -i eth1

       driver: e1000
       version: 5.0.43-k1
       firmware-version: N/A
       bus-info: 06:08.1

     


    3)[root@linux /]# 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)[root@linux /]# ethtool -s eth1 autoneg off speed 100 duplex full

     

    相关参考:
    1)[root@linux /]# which ethtool        //查询 ethtool 存放的路径
        /sbin/ethtool
    2)[root@linux /]# 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之中。

     

    典型用法:查询网络端口位置ethtool -p

     

    这个命令多用于管理多网口的服务器主机,由于背板的网络端口数量大,有时候不知道那个物理端口对应eth0或其他设备号,我们就可以使用这个命令来查询。

           用法:ethtool -p eth0

           效果:设备号eth0对应的物理端口的两个指示灯会闪烁

     

     

    典型用法:修改端口速率ethtool -s

           这个命令多用于手工设置网络速率,一般千兆网卡支持10|100|1000三个速率,单位是Mbps。

           用法:ethtool -s eth0 speed 1000 duplex full autoneg off

           效果:将设备号eth0对应的物理端口设置为速率为1000Mbps,全双工工作模式,同时关闭自动协商。

           注:若需要永久更改有两种方法:1. 将上述命令写入/etc/rc.local文件中,开机自动执行;2. 在/etc/sysconfig/network-scripts/ifcfg-eth0中添加一行ETHTOOL_OPTS="speed 1000 duplex full autoneg off"。这里仅仅以eth0为例,其他设备号同理。

     

    命令格式集合

     ethtool DEVNAME Display standard information about device 显示该设备的标准信息。
            ethtool -s|--change DEVNAME     Change generic options 更改基本选项
                    [ speed 10|100|1000 ] //端口速率选项,单位是Mbps
                    [ duplex half|full ] //端口半双工和全双工选项
                    [ port tp|aui|bnc|mii|fibre ] //端口选项,默认为TP
                    [ autoneg on|off ] //自动协商选项,默认为on
                    [ phyad %%d ] //物理地址号,一般为1或0
                    [ xcvr internal|external ]
                    [ wol p|u|m|b|a|g|s|d... ]
                    [ sopass %%x:%%x:%%x:%%x:%%x:%%x ]
                    [ msglvl %%d ] 
            ethtool -a|--show-pause DEVNAME Show pause options 显示相应设备中止选项设置情况
            ethtool -A|--pause DEVNAME      Set pause options 对相应设备进行中止选项设置
                    [ autoneg on|off ]
                    [ rx on|off ]
                    [ tx on|off ]
            ethtool -c|--show-coalesce DEVNAME  Show coalesce options 显示相应设备联合选项设置情况
            ethtool -C|--coalesce DEVNAME   Set coalesce options 对相应设备进行联合选项设置
                    [adaptive-rx on|off]
                    [adaptive-tx on|off]
                    [rx-usecs N]
                    [rx-frames N]
                    [rx-usecs-irq N]
                    [rx-frames-irq N]
                    [tx-usecs N]
                    [tx-frames N]
                    [tx-usecs-irq N]
                    [tx-frames-irq N]
                    [stats-block-usecs N]
                    [pkt-rate-low N]
                    [rx-usecs-low N]
                    [rx-frames-low N]
                    [tx-usecs-low N]
                    [tx-frames-low N]
                    [pkt-rate-high N]
                    [rx-usecs-high N]
                    [rx-frames-high N]
                    [tx-usecs-high N]
                    [tx-frames-high N]
                    [sample-interval N]
            ethtool -g|--show-ring DEVNAME  Query RX/TX ring parameters 查询接收/发送回环参数
            ethtool -G|--set-ring DEVNAME   Set RX/TX ring parameters 设置接收/发送回环参数
                    [ rx N ]
                    [ rx-mini N ]
                    [ rx-jumbo N ]
                    [ tx N ]
            ethtool -k|--show-offload DEVNAME    Get protocol offload information 获取协议卸载信息
            ethtool -K|--offload DEVNAME    Set protocol offload 设置协议卸载
                    [ rx on|off ]
                    [ tx on|off ]
                    [ sg on|off ]
                    [ tso on|off ]
                    [ ufo on|off ]
                    [ gso on|off ]
            ethtool -i|--driver DEVNAME     Show driver information 显示相应设备的驱动信息
            ethtool -d|--register-dump DEVNAME      Do a register dump 寄存器转存
            ethtool -e|--eeprom-dump DEVNAME        Do a EEPROM dump EEPROM转存
                    [ raw on|off ]
                    [ offset N ]
                    [ length N ]
            ethtool -E|--change-eeprom DEVNAME      Change bytes in device EEPROM 更改设备EEPROM中的字节
                    [ magic N ]
                    [ offset N ]
                    [ value N ]
            ethtool -r|--negotiate DEVNAME  Restart N-WAY negotation 重启N路交互
            ethtool -p|--identify DEVNAME   Show visible port identification (e.g. blinking) 显示可见的端口识别(比如相应端口指示灯会亮)
                   [ TIME-IN-SECONDS ]
            ethtool -t|--test DEVNAME       Execute adapter self test 执行适配器自我测试
                   [ online | offline ]
            ethtool -S|--statistics DEVNAME Show adapter statistics 显示适配器的统计信息
            ethtool -h|--help DEVNAME       Show this help 显示帮助

     

     

     

    转自:https://blog.csdn.net/sdvch/article/details/48712519

     

     

     

     

     

     

     

  • 相关阅读:
    Microsoft training Kits
    WCF Load Test
    SQL Server Central Management System
    连贯NHibernate 1.0正式发布
    C#全角和半角转换
    Silverlight 2应用所采用的WCF技术
    实用工具特别推荐 Robocopy GUI
    SmtpClient发送邮件遭遇The specified string is not in the form required for a subject.
    SQL Server 2008使用扩展事件进行高级故障排除
    Visual Studio 2010新特性
  • 原文地址:https://www.cnblogs.com/zhongguiyao/p/13942778.html
Copyright © 2011-2022 走看看