Skip to content

ipコマンド

Linuxでのプログラミングを行っていると必要になるのが、Linuxコマンドです。 中でも、ネットワーク系のコマンドを頻繁に使う事になりますが、以前は ifconfig、route、arp、netstat などをよく使っていましたが、それらは ipコマンドに統合されました。 そのまま移行されたわけではありませんので、出力される情報や操作方法は必ずしも一致しません。 改めて整理したいと思います。

ネットワークデバイスの情報を一覧表示

ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:15:5d:9d:c9:29 brd ff:ff:ff:ff:ff:ff

ip address (ip a, addr)

ネットワークデバイスのIPアドレス情報を一覧表示

ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:9d:c9:29 brd ff:ff:ff:ff:ff:ff
    inet 172.22.130.101/20 brd 172.22.143.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe9d:c929/64 scope link
       valid_lft forever preferred_lft forever

ip route (ip r)

ネットワークのルーティング情報を表示する

ip route
default via 172.22.128.1 dev eth0 proto kernel
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.22.128.0/20 dev eth0 proto kernel scope link src 172.22.130.101

ネットワークデバイスの有効化・無効化

-- 状態確認
$ ip r
default via 172.22.128.1 dev eth0 proto kernel
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.22.128.0/20 dev eth0 proto kernel scope link src 172.22.130.101
$
-- 無効化
$ sudo ip link set eth0 down
[sudo] password for [USER_NAME]:
$
$ ip r
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
※downで無効化された
$
-- 有効化
$ sudo ip link set eth0 up
$
$ ip r
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.22.128.0/20 dev eth0 proto kernel scope link src 172.22.130.101
※upで有効化された
$

ip token

トークンを表示

ip token
token :: dev eth0
token :: dev docker0