Linuxのifconfigコマンドを使うことでネットワークの現在の状態を確認したり、設定を行ったりすることができます。
ifconfigコマンドの書式
ifconfigコマンドの書式は以下の通りです。
1 |
$ ifconfig [インターフェイス名] [オプション] [設定用オプション] |
ネットワークの状態を確認する
起動中のインターフェイス
オプションを何も付けずに実行した場合は、現在起動しているインターフェイスのみを対象にネットワークの状態が表示されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
$ 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」オプションを付けて実行すると、環境内にあるすべてのインターフェイスごとにネットワークの状態が表示されます。
1 |
$ ifconfig -a |
特定のインターフェイス
インターフェイス名を付けて実行した場合は、そのインターフェイスのみを対象にネットワークの状態が表示されます。
1 |
$ 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」という名前のインターフェイスの起動・停止を行いたいときは、それぞれ以下のように入力して実行します。
1 2 |
$ ifconfig enp0s3 up $ ifconfig enp0s3 down |
IPアドレスを設定する
インターフェイス名の後にIPアドレスを付けて実行すると、そのインターフェイスに特定のIPアドレスを割り当てられます。
たとえば、「enp0s3」という名前のインターフェイスのIPアドレスを変更したいときは、以下のように入力して実行します。
1 |
$ ifconfig enp0s3 192.168.1.23 |
ネットマスク・ブロードキャストアドレスを設定する
ネットマスク、ブロードキャストアドレスを設定したい場合は、以下のように指定します。
1 |
ifconfig enp0s3 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.23 |