ネットワーク接続の確認の中でも、ケーブル接続やリンク状態など物理的なNICの接続状態を確認する必要に迫られることがあります。そういう時はethtoolで自分のサーバのNICの状態がどうなっているかを確認することができます。 ethtoolはNICのlink層の状態を標準、設定するツールです。イーサツールと呼ばれますが、ethertoolではなくて、ethtoolですのでスペルは注意して下さい。
例によってCentOSのminimalでは入ってないのでインストールが必要です。
$ sudo yum install ethtool
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.riken.jp
* epel: mirror-fpt-telecom.fpt.net
* extras: ftp.riken.jp
* rpmforge: mirror.hmc.edu
* updates: mirror.esocc.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ethtool.x86_64 2:2.6.33-0.3.el6 will be updated
---> Package ethtool.x86_64 2:3.5-1.el6 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
============================================================================================
Package Arch Version Repository Size
============================================================================================
Updating:
ethtool x86_64 2:3.5-1.el6 base 100 k
Transaction Summary
============================================================================================
Upgrade 1 Package(s)
Total download size: 100 k
Is this ok [y/N]: y
Downloading Packages:
ethtool-3.5-1.el6.x86_64.rpm | 100 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : 2:ethtool-3.5-1.el6.x86_64 1/2
Cleanup : 2:ethtool-2.6.33-0.3.el6.x86_64 2/2
Verifying : 2:ethtool-3.5-1.el6.x86_64 1/2
Verifying : 2:ethtool-2.6.33-0.3.el6.x86_64 2/2
Updated:
ethtool.x86_64 2:3.5-1.el6
Complete!
ethtoolをLink確認として使ってみます。 ethtoolはスーパユーザで実行する必要があります。最低限のコマンド引数はeth0などNICの名前です。
$ sudo ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
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: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
この結果、上記の「Link detected:」の項目がyesになっていることがわかります。
そのほかにも接続状態として、NICが対応している接続速度(Supported link modes)、現在の接続速度(Speed)、半二重通信か全二重通信かの別(duplex)など様々な状態が確認できます。