Linuxでネットワークデバイスが意図しないリンク速度になったときの対処方法。
といっても、下記のサイトどおりに操作するだけ。
「ETHTOOLを使用して NIC を 100Mbps/full-dupex 固定に設定する方法を教えてください。」
[http://kbase.redhat.com/faq/docs/DOC-14838](http://kbase.redhat.com/faq/docs/DOC-14838)
具体的には、ethtoolというコマンドを使う。
Redhatのサイトから手順を以下に抜き出す。
(1Gbps, 全二重、オートネゴシエーションオフの場合)
ETHTOOL_OPTS="speed 1000 duplex full autoneg off"
ethtoolに与えられるオプションは以下の通り。
speed の設定値
10 10Mbps
100 100Mbps
1000 1000Mbps
duplex の設定値
half half-duplex
full full-duplex
autoneg の設定値
on Autonegotiation 有効
off Autonegotiation 無効
上記は/etc/sysconfig/network-scripts/ifcfg-eth0にethtool向けのコマンドを記載しておき、ネットワークを再起動する方法。
別にethtoolコマンドを叩いてもよいが、ネットワークが再起動されるのは同じなので、redhatの方法のほうがスマート。
注意点としては、ハードウェアによって、ethtoolからのコマンドを受け付けないケースがあること。
実際、俺の管理しているマシンだと、ethtoolからオートネゴシエーションをオフにできなかった。