パソコン鳥のブログ

アクセスカウンタ

zoom RSS Linuxでネットワークリンクが安定しない場合に手動で設定してみる

<<   作成日時 : 2016/05/24 18:56   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

Linuxでネットワークリンクがダウン・アップを繰り返したりして安定しない場合に、リンクに関する設定を手動で行い暫定対処する方法です。
例えば、syslogで次のようにリンクアップ・ダウンが記録されている場合に対処します。


[ 663.280761] r8169 0000:02:00.0 eth0: link up
[ 663.755513] r8169 0000:02:00.0 eth0: link down
[ 667.422364] r8169 0000:02:00.0 eth0: link up
[ 667.944179] r8169 0000:02:00.0 eth0: link down



次の記事で紹介した ethtool を使用します。

Linux でネットワークのリンク速度やケーブル断線を検出する パソコン鳥のブログ/ウェブリブログ


今回の例では、実行の結果、下記の赤字の箇所のように Link detected: no となっており、リンクがダウンしています。
また Speed: 10Mb/s でリンク速度が 10M になっていました。
このPCでは、本来は 1000M になっているはずです。
同様に Duplex: Half となっていますが、ここも本来は Duplex: Full のはずです。


# ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Speed: 10Mb/s
Duplex: Half
Port: MII
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: no



Speed や Duplex の値は、ネットワークカードとハブとのオートネゴシエーション機能によって設定されますが、ハブとの相性問題か、適切に設定できていませんでした。

そこで、手動でこれらの値を設定してみます。


root で実行します。


まず、オートネゴシエーションをオフにします。


# ethtool -s eth0 autoneg off



Cannot set new settings: Invalid argument
not setting autoneg

と出てエラーになった場合は、次のように一旦 on して off します。


# ethtool -s eth0 autoneg on
# ethtool -s eth0 autoneg off



リンク速度を 100M/Full に設定してみます。
オートネゴシエーションがオフの場合、1000M には出来ないので、100M にします。


# ethtool -s eth0 duplex full
# ethtool -s eth0 speed 100


実行で、次のようなエラーが出た場合、オートネゴシエーションがオフになっていません。
前述の手順でオフにしておいて下さい。


Cannot advertise speed 100
Cannot advertise duplex full



リンク速度を 100M/Full に設定後、再度 ethtool で確認してみると、Link detected: yes でリンクアップしました。


# ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 0
Transceiver: internal
Auto-negotiation: off
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: yes



これで、とりあえずは通信できるようになりました。

以上、ネットワークリンクの設定を手動で行い暫定対処する方法でした。


テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
Linuxでネットワークリンクが安定しない場合に手動で設定してみる パソコン鳥のブログ/BIGLOBEウェブリブログ
文字サイズ:       閉じる