Solaris, LinuxでNICのリンクスピード(帯域)、モードを知るには

俺メモ

FreeBSDではifconfigコマンドでリンクなどが表示される。

       $ ifconfig -a
       em0: flags=8843 metric 0 mtu 1500
               options=9b
               ether xx:xx:xx:xx:xx:xx
               inet 172.xx.xx.xx netmask 0xfffffe00 broadcast 172.xx.xx.xx
               media: Ethernet autoselect (1000baseTX ) 
               status: active

Boldで示した通り、1Gbの全二重であることが分かる。
ところがLinux, Solarisだとifconfigでこういった情報が表示されない。
軽くググってみた結果。

Linuxではethtoolを使う。
ethtool <デバイス名>


Solarisではnddを使う。
ndd -get <デバイス名> <オプション>
オプションにはlink_speedなどを与える。

どちらも管理者権限が必要。