Ethtoolは、Linux上のネットワークユーティリティです。イーサネットデバイスのパラメータを表示および変更するために使用されます。この記事では、Linuxでethtoolコマンドを使用する方法を学習します。
イーサネットカードの構成により、コンピュータはネットワークを介して効果的に通信できます。 Ethtoolは、Linuxシステムに接続されているイーサネットデバイスに関する多くの情報を提供します。 オートネゴシエーションなど、必要に応じてイーサネットカードのパラメータを変更できます 、速度 、デュプレックス およびWake-onLAN 。
次の情報は、イーサネットカードがどのように機能するかを理解するのに役立ちます。
- オートネゴシエーション: これは、デバイスが最適なネットワーク速度と動作モードを自動的に選択できるようにするメカニズムです。
- 速度: デフォルトでは最高速度を使用し、必要に応じて変更できます。
- ハーフデュプレックス: デバイスが一度にパケットを送信または受信できるようにします。
- 全二重: デバイスがパケットを同時に送受信できるようにします。
- Wake-on-LAN(WoL) :ネットワークメッセージによってコンピュータの電源をオンにしたり、起動したりできる業界標準のプロトコル。
- リンクの検出: ネットワークインターフェイスカードのステータスを表示します。 「いいえ」と表示された場合は、インターフェイスを再起動してみてください。それでもリンク検出で「いいえ」と表示される場合は、スイッチとシステムの間に接続されているケーブルに問題がないかどうかを確認してください。
Linuxで使用可能なネットワークインターフェイスカード(NIC)を確認する方法
まず、ネットワークインターフェースカードの名前を知っている必要があります。ネットワークインターフェイスカードの名前を見つけるには、コマンドターミナルから次のコマンドを実行します。
ifconfig
enp5s0: flags=4163 mtu 1500
inet 192.168.0.101 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::65f2:72ae:2878:8a76 prefixlen 64 scopeid 0x20
inet6 fd37:45bb:20bd::45e prefixlen 128 scopeid 0x0
inet6 fd37:45bb:20bd:0:da60:e2eb:96ad:ec26 prefixlen 64 scopeid 0x0
ether 2c:5a:3f:c4:02:8b txqueuelen 1000 (Ethernet)
RX packets 1006202 bytes 940298098 (896.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 550734 bytes 123076237 (117.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0xfc200000-fc2fffff
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 5546564 bytes 324011516 (309.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5546564 bytes 324011516 (309.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ご覧のとおり、上記の例では、デバイスの名前はenp5s0
です。 。
Linuxでethtoolを使用してネットワークインターフェイスカード(NIC)情報を確認する方法
イーサネットインターフェース名を取得したら、ethtool
を使用してその詳細を簡単に確認できます。 コマンド。
ethtool
を実行するとき デバイス名を指定してコマンドを実行すると、速度、ウェイクオン、デュプレックス、リンク検出ステータスなどのイーサネットカードのプロパティが表示されます。
sudo ethtool enp5s0
Settings for enp5s0:
Supported ports: [ ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes
Linuxでethtoolを使用してイーサネットカードドライバーとファームウェアバージョンを確認する方法
>
ethtool
を使用して、ドライバーのバージョン、ファームウェアのバージョン、およびバスの詳細を確認できます。 -i
以下に示すオプション。
sudo ethtool -i enp5s0
driver: igc
version: 5.9.14-arch1-1
firmware-version:
expansion-rom-version:
bus-info: 0000:05:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes
Linuxでethtoolを使用してイーサネットカードの設定を変更する方法
-s
オプションを使用して、速度の値を定義することにより、現在の設定を変更できます。 、デュプレックス 、および autoneg 次の形式で:
sudo ethtool -s [device_name] speed [10/100/1000] duplex [half/full] autoneg [on/off]
たとえば、速度を100Mb/s
に設定するには 、デュプレックスモードをfull
on
へのオートネゴシエーション コマンドは次のようになります:
sudo ethtool -s enp5s0 speed 100 duplex full autoneg on
さらに、各オプションを個別に変更できます:
sudo ethtool -s enp5s0 speed 100
sudo ethtool -s enp5s0 duplex full
sudo ethtool -s enp5s0 autoneg on
注:アダプターがオンラインのときに速度を変更すると、アダプターは自動的にオフラインになり、 ifup
を使用してオンラインに戻す必要があります。 コマンド。
sudo ifup enp5s0
ethtool
を使用してイーサネットカードのパラメータを変更した場合は注意してください 、次の再起動後にすべて消えます。
ただし、システムが再起動した後、ethtool
で行った変更 デフォルトで元に戻されます。
カスタム設定を永続的にするには、ネットワーク構成ファイルの値を更新する必要があります。 Linuxディストリビューションによっては、この値を正しいファイルに更新する必要がある場合があります。
RedHat / CentOSベースのシステムの場合、/etc/sysconfig/network-scripts/ifcfg-eth-id
を変更します ファイルし、以下に示すような行を含めます:
ETHTOOL_OPTS="speed 100 duplex full autoneg on"
Debian / Ubuntuベースのシステムの場合、/etc/network/interfaces
を変更する必要があります 以下に示すように、ファイルを作成して変更を追加します。
post-up ethtool -s enp5s0 speed 100 duplex full autoneg on
上記で説明されていない他の多くのオプションを提供するため、これはethtoolの基本的な紹介にすぎないことがわかりました。他のそのようなツールと組み合わせると、これはシステム管理者のトリックの袋の中で1つの致命的なツールになる可能性があります。