Linuxでethtoolを使ってネットワークカードを設定する方法

この記事では、Linux環境で`ethtool`コマンドを使ってネットワークカードを設定する方法について解説します。具体的なコード例、その詳細な解説、およびさまざまな応用例を含めています。

目次

ethtoolとは?

`ethtool`は、Linux上でEthernetデバイスを設定するためのコマンドラインユーティリティです。ネットワークカードの速度調整、デバイスの情報表示、無通信状態の診断などが可能です。

ethtoolの基本的な使い方

sudo ethtool eth0  # eth0のネットワークカード情報を表示

このコマンドは、`eth0`という名前のネットワークカードの設定情報を表示します。出力結果から、リンクの状態や速度、デュプレックスモードなどを確認できます。

ネットワークカードの設定変更

速度調整

速度を1000Mb/sに設定するには以下のようにします。

sudo ethtool -s eth0 speed 1000  # eth0の速度を1000Mb/sに設定

デュプレックスモードの設定

デュプレックスモードをフルデュプレックスに設定する場合は以下のコマンドを使用します。

sudo ethtool -s eth0 duplex full  # eth0をフルデュプレックスに設定

応用例

ネットワークカードの一覧表示

for dev in /sys/class/net/*; do ethtool $(basename $dev); done  # すべてのネットワークカード情報を表示

指定した速度で動作するカードを探す

for dev in /sys/class/net/*; do
  speed=$(ethtool $(basename $dev) | grep -i speed)
  [[ "$speed" == *1000* ]] && echo $(basename $dev)
done  # 速度が1000Mb/sのカード名を出力

Wake-on-LANを有効にする

sudo ethtool -s eth0 wol g  # eth0でWake-on-LANを有効にする

特定の機能を無効にする

sudo ethtool -K eth0 tso off  # eth0でTCP Segmentation Offloadを無効にする

複数の設定を一度に行う

sudo ethtool -s eth0 speed 1000 duplex full autoneg off  # 速度、デュプレックスモード、自動認識を一度に設定

まとめ

`ethtool`は、Linuxでネットワークカードを効率よく設定するための強力なツールです。この記事で学んだ知識を使って、ネットワークのパフォーマンスやセキュリティを向上させましょう。

created by Rinker
オライリージャパン
¥3,080 (2024/11/22 17:53:11時点 Amazon調べ-詳細)

コメント

コメントする

目次