linux 網路命令ethtool與mii-tool及nm-tool

來源:互聯網
上載者:User

最近測試伺服器在ftp及scp方面的網路穩定性,網路老是自動中斷,但是本地串連還在,ping正常機器不通,期間用到一些基礎命令,為方便記錄和擴充知識,順便記錄點相關內容如下:

1、ethtool

  Ethtool是Linux下用於查詢及設定網卡參數的命令。  

概要:  

ethtool ethX //查詢ethX網口基本設定  

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]\ //設定網口速率10/100/1000M  

[duplex half|full]\ //設定網口半/全雙工系統  

[autoneg on|off]\ //設定網口是否自協商  

[port tp|aui|bnc|mii]\ //設定網口類型  

[phyad N]\   

[xcvr internal|exteral]\  

[wol p|u|m|b|a|g|s|d...]\  

[sopass xx:yy:zz:aa:bb:cc]\  

[msglvl N]

怎樣使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 -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 顯示協助

查詢網路連接埠位置:ethtool -p ethX

這個命令多用於管理多網口的伺服器主機,由於背板的網路連接埠數量大,有時候不知道那個物理連接埠對應eth0或其他裝置號,我們就可以使用這個命令來查詢。

       用法:ethtool -p eth0

       效果:裝置號eth0對應的物理連接埠的兩個指示燈會閃爍

修改網路連接埠速率:ethtool -s
       這個命令多用於手工設定網路速率,一般千兆網卡支援10|100|1000三個速率,單位是Mbps。

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

       效果:將裝置號eth0對應的物理連接埠設定為速率為1000Mbps,全雙工系統工作模式,同時關閉自動協商。

    

2、mii-tool

mii-tool(這是Linux下專門設定網卡工作模式的命令) 

 MII的全稱是Media Independent Interface,字面意思上就是媒體無關的介面,因此它是獨立於具體裝置的,仔細想想標準化的東西都是獨立於具體裝置的。雖然如此,很多乙太網路卡裝置並不支援這些參數的配置,因此當你執行mii-tool的時候,會得到Operation not supported的提示,要不就是沒有使用超級使用者身份,還有就是若介面編號設定超過eth7時,直接使用mii-tool 不加參數,會出現NO MII xxxxxxxxxx interface 之類的提示,是因為超過了預設值,使用協助資訊可以瞭解。

1. 查看網卡的工作模式,輸入命令:   

#mii-tool -v   

eth0: negotiated 100baseTx-FD, link ok  

product info: vendor 00:aa:00, model 56 rev 0  

basic mode: autonegotiation enabled  

basic status: autonegotiation complete, link ok  

capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD  

advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control  

link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD  

從以上資訊中可以看出,這塊網卡工作在100M全雙工系統自適應模式下,“100BaseTx-FD”意為100M Full Duplex。   

2. 更改網卡的工作模式,輸入命令:   

#mii-tool -F media [interface]   

media可選的模式有100baseTx-FD、100baseTx-HD、10baseT-FD、10baseT-HD等。

Interface代表所選擇的網卡,如eth0、eth1等,預設為eth0。   

例如,設定網卡工作在10M半雙工模式下,輸入命令:   

#mii-tool -F 10baseT-HD eth0   

3. 恢複網卡的自適應工作模式,輸入命令:   

#mii-tool -r eth0   

更詳細的使用方法可以用mii-tool -h來獲得。

註:

mii-tool不支援1000M以上的網卡

正常對於100M以下的網卡都可以用這倆個命令來查看,但是對於100M以上網卡的,mii-tool就會出現問題

 

mii-tool -v eth0

eth0: negotiated 100baseTx-FD, link ok

product info: vendor 00:aa:00, model 56 rev 0

basic mode: autonegotiation enabled

basic status: autonegotiation complete, link ok

capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD

advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control

link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD

#這裡顯示100M網卡,實際上是1000M的介面

 

ethtool eth0

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 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

Current message level: 0x00000007 (7)

Link detected: yes

#這裡卻正確的顯示1000M網卡

參考:http://linux-ip.net/html/tools-mii-tool.html#ftn.id2911850

3、nm-tool(NetworkManager Tool)

mii-tool 命令也可以查看相關網路介面的串連情況,包括網路類型,串連狀態,載波情況,ip地址等資訊,相比其它工具較簡潔,資訊明了。

使用方式如下:

root@LOonux:/home/# nm-tool

State: connected (global)

- Device: ttyUSB3 --------------------------------------------------------------
  Type:              Mobile Broadband (CDMA)
  Driver:            option1
  State:             disconnected
  Default:           no

  Capabilities:

- Device: wlan0 ----------------------------------------------------------------
  Type:              802.11 WiFi
  Driver:            ath9k
  State:             unavailable
  Default:           no
  HW Address:        00:17:C4:EF:F7:FF

  Capabilities:

  Wireless Properties
    WEP Encryption:  yes
    WPA Encryption:  yes
    WPA2 Encryption: yes

  Wireless Access Points

- Device: eth0  [Wired connection 1] -------------------------------------------
  Type:              Wired
  Driver:            r8168
  State:             connected
  Default:           yes
  HW Address:        00:E0:4C:68:00:01

  Capabilities:
    Carrier Detect:  yes
    Speed:           100 Mb/s

  Wired Properties
    Carrier:         on

  IPv4 Settings:
    Address:         172.16.18.151
    Prefix:          16 (255.255.0.0)
    Gateway:         172.16.1.254

    DNS:             8.8.8.8

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.