VineLinuxパフォーマンスアッププロジェクト:0183

■NICのリンク速度を強制的に変更する方法■

 高速通信可能なNICをPCに取り付けても期待したほど速度が伸びないとか、最近どうも転送速度が遅いなどという症状はないでしょうか。
 こんな時は一度NICのリンク速度を強制的に変更してみましょう。



▼ethtoolのインストール

 ethtoolはNICの状況を調べたり、接続設定を変更できるツールです。残念ながらVineLinuxには用意されていませんので、こちらからダウンロード・インストールしてください。
 インストールは

  rpm -ivh ethtool-1.5-1.i386.rpm

 でOKです。

▼ethtoolの使い方

 現在のNICの状況を調べるには

  ethtool インタフェース名(eth0など)

 で以下のような感じで表示されます。

        Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: umbg
        Wake-on: g
        Current message level: 0x00000007 (7)
        Link detected: yes


 上記の例では1000baseT/Fullが使用できるにもかかわらず、実際には100Mb/sの設定となっています。せっかく高速な環境が利用できるのにもったいないですよね。
 そこで強制的に1000Mb/sの設定に変更します。変更は

  ethtool -s インタフェース名(eth0など) speed 1000

 でOKです。

 その他、全二重・半二重モードやオートネゴシエーション機能の変更も可能です。 詳細についてはこちらをご覧ください。

▼起動時に自動的に設定を反映させる方法

 ethtoolで設定した内容を再起動後にも反映させるにはNICの設定が記載されたファイルにその旨を記述します。
 具体的には、テキストエディタで/etc/sysconfig/network-scripts/ifcfg-eth0等を開き、以下の赤字部分を記述します。

        DEVICE=eth0
        BOOTPROTO=dhcp
        ONBOOT=yes
        ETHTOOL_OPTS="speed 1000"
        TYPE=Ethernet

 接続形式がdhcpでも固定IPでもどちらでも設定は可能です。
 上記の例では1000Mb/sが使用できるようにする内容を記載したものですが、全二重・半二重モードやオートネゴシエーション機能の変更等も同様に記載ができます。
 詳細についてはこちらをご覧ください。




プロジェクト ホームへ戻る