【ifconfig】Linuxでネットワーク環境を確認・設定するコマンド

Linuxのifconfigコマンドを使うことでネットワークの現在の状態を確認したり、設定を行ったりすることができます。

ifconfigコマンドの書式

ifconfigコマンドの書式は以下の通りです。

$ ifconfig [インターフェイス名] [オプション] [設定用オプション]

ネットワークの状態を確認する

 起動中のインターフェイス

オプションを何も付けずに実行した場合は、現在起動しているインターフェイスのみを対象にネットワークの状態が表示されます。 

$ ifconfig
eth0      Link encap:Ethernet  HWaddr 06:C0:22:13:10:E1  
          inet addr:10.0.0.139  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::4c0:22ff:fe13:10e1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:9001  Metric:1
          RX packets:2791607 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2120684 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:815077258 (777.3 MiB)  TX bytes:2481642503 (2.3 GiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:440014 errors:0 dropped:0 overruns:0 frame:0
          TX packets:440014 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:29321505 (27.9 MiB)  TX bytes:29321505 (27.9 MiB)

左に表示される「eth0」などの文字列はインターフェイス名を表しています。右に表示されているのがそれぞれのインターフェイスの状況です。

「lo」は「ローカルループバック」と呼ばれる特殊な項目(ホスト自身を表す仮想インターフェイス)です。

すべてのインターフェイス

「-a」オプションを付けて実行すると、環境内にあるすべてのインターフェイスごとにネットワークの状態が表示されます。

$ ifconfig -a

特定のインターフェイス

インターフェイス名を付けて実行した場合は、そのインターフェイスのみを対象にネットワークの状態が表示されます。 

$ ifconfig enp0

表示される項目の見方

ifconfigを使用したときに表示される各項目の意味は以下の通りです。

項目 説明
Link encap 接続されているインターフェイスの種類
HWaddr MACアドレス
inet addr IPアドレス
Bcast ブロードキャスト用のアドレス
Mask サブネットマスク
inet6 addr IPv6アドレス
UP インターフェイスが起動しているときに表示される
BROADCAST ブロードキャストが有効なときに表示される
RUNNING インターフェイスの動作準備が完了しているときに表示される
MULTICAST マルチキャストが有効なときに表示される
MTU 1フレームの送信最大値(Maximum Transmission Unit)
Metric メトリック値(送信先までの経路の距離を表す指標)
RX packets:受信パケット数
errors:エラーパケット数
dropped:破棄したパケット数
overruns:処理が追いつかなかったパケット数
TX 送信パケット数
collisions 衝突が発生した回数
txqueuelen パケット送信キュー(待機場所)の大きさ

ネットワークの設定を行う

ifconfigコマンドは確認だけでなく、設定もすることもできます。

インターフェイスの起動と停止を行う

インターフェイス名と「up」あるいは「down」を付けて実行すると、そのインターフェイスを起動したり停止したりすることができます。

たとえば、「enp0s3」という名前のインターフェイスの起動・停止を行いたいときは、それぞれ以下のように入力して実行します。

$ ifconfig enp0s3 up
$ ifconfig enp0s3 down

IPアドレスを設定する

インターフェイス名の後にIPアドレスを付けて実行すると、そのインターフェイスに特定のIPアドレスを割り当てられます。

たとえば、「enp0s3」という名前のインターフェイスのIPアドレスを変更したいときは、以下のように入力して実行します。

$ ifconfig enp0s3 192.168.1.23

ネットマスク・ブロードキャストアドレスを設定する

ネットマスク、ブロードキャストアドレスを設定したい場合は、以下のように指定します。

ifconfig enp0s3 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.23

イベント