LinuxでNICのリンクアップ/ダウンや速度を確認できる『mii-tool』と『ethtool』コマンド
Pocket

業務でサーバの構築や運用をしていると、特定のNICで通信ができなくなったりすることがある。
今回は、そんな時に使える通常コマンドである『mii-tool』と『ethtool』について紹介する。

1.リンクアップ/ダウンとLANの速度を確認できるmii-tool

mii-toolは、対象のNICのリンクアップ/ダウンとLANの速度が確認できる。
実行にはroot権限が必要になるので、sudoかrootで以下のようにコマンドを実行する。

$ sudo mii-tool eth0

実行した結果がこちら。

$ sudo mii-tool eth0
eth0: negotiated 1000baseT-FD flow-control, link ok

スクリーンショット 2014-11-04 01.32.48

より詳細な値を取得するためには、「-vv」オプションを付加すると良い。

$ sudo mii-tool -vv eth0
Using SIOCGMIIPHY=0x8947
eth0: negotiated 1000baseT-FD flow-control, link ok
  registers for MII PHY 0:
    1140 796d 0141 0c23 01e1 41e1 0007 2001
    0000 0200 7c00 0000 0000 0000 0000 3000
    0b68 ac00 0000 0000 0170 0000 0000 0000
    0000 0000 000c 0000 0000 0000 0000 0000
  product info: Yukon 88E1011 rev 3
  basic mode:   autonegotiation enabled
  basic status: autonegotiation complete, link ok
  capabilities: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
  advertising:  1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
  link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD

スクリーンショット 2014-11-04 01.37.08

なお、OSによってはこの表示速度が遅い場合(実際には1000baseT出ているのに、100baseTになる)がある。これは、カーネルのバージョンが古い場合に起こるようだ。また、どうやらこの速度、使用しているLANケーブルのカテゴリは見ていないらしい。基本的には、リンクアップの有無についてのみ参考にするといいだろう。

その時は、「/sys/class/net/ethX/speed」の値および後述のethtoolでより詳細な情報を取得してもらいたい。

2.NICの詳細な情報を確認できるethtool

より詳細なNICの情報を取得するのであれば、ethtoolを用いるといいだろう。
CentOSやUbuntuであれば標準でインストールされているだろう。

$ sudo ethtool eth0

さて、それでは実際にコマンドを実行してみよう。
実際にコマンドを実行した結果がこちら。

$ 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: off (auto)
	Supports Wake-on: d
	Wake-on: d
	Current message level: 0x00000007 (7)
			       drv probe link
	Link detected: yes

スクリーンショット 2014-11-04 01.43.47

対象のNICが何baseTまで対応しているのか、現在のリンク速度がどの程度なのか、WakeOnLanに対応しているのかなど、詳細な情報を取得することができる。

以上、NICまわりのトラブルシューティングで覚えておきたいコマンド2点を紹介した。

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。