/sys/class/net で MTU を調べる
このステップでは、/sys
ファイルシステムを探索して MTU の値を見つけます。/sys
ファイルシステムは、カーネルのデータ構造に対するインターフェイスを提供する仮想ファイルシステムです。これを使うと、カーネルパラメータやデバイス情報を調べたり、場合によっては変更したりすることができます。
MTU を含むネットワークインターフェイスの情報は、/sys/class/net
ディレクトリを通じて公開されています。システム上の各ネットワークインターフェイスには、ここにサブディレクトリが存在します。
ターミナルが開いていない場合は、開きます。
まず、/sys/class/net
ディレクトリの内容を一覧表示して、利用可能なネットワークインターフェイスを確認しましょう。以下のコマンドを入力して Enter キーを押します。
ls /sys/class/net/
ip link show
や ifconfig
の出力と同様に、ネットワークインターフェイスの一覧が表示されるはずです。この環境では、おそらく eth0
と lo
が表示されます。
eth0 lo
次に、メインのインターフェイスである eth0
のディレクトリの中身を見てみましょう。以下のコマンドを入力して Enter キーを押します。
ls /sys/class/net/eth0/
これにより、eth0
インターフェイスに関する情報が含まれるファイルとディレクトリの一覧が表示されます。
addr_assign_type broadcast device ifindex mtu phys_port_id speed
address carrier dormant iflink napi_defer_hard_irqs phys_port_name statistics
addr_len carrier_changes duplex link_mode netdev_group power subsystem
bonding_slave carrier_up_count flags lower_ operstate proto_down_reason tx_queue_len
bridge_slave dev_id gro_flush_timeout name_assign_type perms qdisc type
mtu
という名前のファイルに注目してください。このファイルの内容を読み取ることで、MTU の値を取得できます。cat
コマンドを使って mtu
ファイルの内容を表示しましょう。以下のコマンドを入力して Enter キーを押します。
cat /sys/class/net/eth0/mtu
ターミナルに MTU の値が表示されるはずで、その値は 1500
です。
1500
/sys
ファイルを読み取ることで MTU を確認するこの方法は、ネットワークインターフェイスに関するカーネルレベルの情報に直接アクセスする方法を提供します。
これで、ip link show
、ifconfig
、そして /sys
ファイルシステムを調べるという 3 つの異なる方法を使って MTU を正常に確認しました。これは、Linux では同じタスクを達成するためにしばしば複数の方法があることを示しています。
Continue をクリックして、この実験を完了します。