設定

ifconfigコマンド入門|ネットワーク設定を確認・変更する

ネットワーク ethtool NIC管理

ifconfigコマンド入門
ネットワーク設定を確認・変更する

ethtoolはLinuxでイーサネットデバイスのハードウェア設定を表示・変更するツールです。リンク速度、オフロード機能、NICの統計情報など、低レベルなネットワーク情報にアクセスできます。

こんな人向けの記事です

  • NICのリンク速度や状態を確認したい人
  • ネットワークパフォーマンスの最適化を行いたい人
  • オフロード機能やWake-on-LANの設定を変更したい人

Step 1ethtoolとは・インストール

ethtoolはLinuxでネットワークインターフェースカード(NIC)のハードウェアパラメータを表示・変更するコマンドラインツールです。ifconfigやipコマンドでは取得できない低レベルの情報にアクセスできます。

ターミナル
# Debian/Ubuntu系
sudo apt-get install ethtool

# RHEL/CentOS/Fedora系
sudo yum install ethtool

# Arch Linux
sudo pacman -S ethtool

ポイント: ethtoolはLinux専用ツールです。WindowsではDevice ManagerやPowerShell、macOSではnetworksetupやsystem_profilerが一部の機能を提供しています。

Step 2基本的な使い方

インターフェースの基本情報:

ターミナル
sudo ethtool eth0

結果の例:

ターミナル
Settings for eth0:
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Supports auto-negotiation: Yes
    Advertised link modes:  1000baseT/Full
    Speed: 1000Mb/s
    Duplex: Full
    Auto-negotiation: on
    Link detected: yes
項目意味
Speed現在のリンク速度(10/100/1000Mb/s)
Duplex通信モード(Full: 全二重 / Half: 半二重)
Auto-negotiation速度の自動ネゴシエーション有無
Link detected物理的なリンクが検出されているか

Step 3リンク速度とデュプレックスの設定

ターミナル
# 速度とデュプレックスを手動設定
sudo ethtool -s eth0 speed 100 duplex full autoneg off

# 自動ネゴシエーションに戻す
sudo ethtool -s eth0 autoneg on

注意: リンク速度の手動設定は、接続先スイッチの設定と一致させる必要があります。不一致があると接続できなくなる可能性があります。

Step 4オフロード機能の確認と設定

ターミナル
# オフロード設定の確認
sudo ethtool -k eth0

# TCPセグメンテーションオフロードの無効化
sudo ethtool -K eth0 tso off

# チェックサムオフロードの無効化
sudo ethtool -K eth0 rx off tx off
オフロード機能説明
TSO (TCP Segmentation Offload)TCPセグメント分割をNICにオフロード
GSO (Generic Segmentation Offload)汎用セグメンテーションオフロード
GRO (Generic Receive Offload)受信パケットの集約をNICで処理
rx/tx checksummingチェックサム計算をNICで処理

Step 5統計情報とドライバー情報

ターミナル
# NICの統計情報
sudo ethtool -S eth0

# ドライバー情報
sudo ethtool -i eth0

# リングバッファサイズの確認
sudo ethtool -g eth0

# Wake-on-LAN設定の確認
sudo ethtool eth0 | grep Wake-on

Wake-on-LANの設定:

ターミナル
# Wake-on-LANを有効化(マジックパケットで起動)
sudo ethtool -s eth0 wol g

# Wake-on-LANを無効化
sudo ethtool -s eth0 wol d

Step 6トラブルシューティング

問題確認コマンド対処法
リンクが検出されないsudo ethtool eth0 でLink detected確認ケーブル確認、スイッチポート確認
速度が遅いsudo ethtool eth0 でSpeed確認自動ネゴシエーション再実行、ケーブル品質確認
パケットエラーが多いsudo ethtool -S eth0エラーカウンタ確認、ケーブルやNIC交換
パフォーマンスが悪いsudo ethtool -k eth0オフロード機能の有効化/無効化を試す

ポイント: ethtoolでの設定変更は再起動すると元に戻ります。永続化するには /etc/network/interfaces や udev ルール、systemd のネットワーク設定ファイルに記述してください。