ネットワーク設定
route コマンド
ルーティングテーブルの表示や操作を行う。
表示は以下のように行う。
$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default ip-10-1-11-1.ap 0.0.0.0 UG 0 0 0 eth0
10.1.11.0 * 255.255.255.0 U 0 0 0 eth0
instance-data.a * 255.255.255.255 UH 0 0 0 eth0
以下では 192.168.0.0/24 宛てのパケットが 172.30.0.254 に送られるようにしている。
$ route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.30.0.254
次の例ではデフォルトゲートウェイを 172.30.0.1 に設定している。
$ route add default gw 172.30.0.1
設定した経路情報を削除するには以下のように行う。
$ route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.30.0.254
Linux をルータとして利用する場合は、異なるネットワーク間パケット転送を許可する必要がある。
そのためには、/proc/sys/net/ipv4/ip_forward に 1 を書き込む必要がある。
$ echo 1 > /proc/sys/net/ipv4/ip_forward
ip コマンド
ip コマンドは、ネットワークインターフェイスやルーティングテーブル、ARP テーブル等を管理するコマンド。
イメージとしては route + ifconfig となる。
$ ip link show
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 9001 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 06:86:c4:51:10:7e brd ff:ff:ff:ff:ff:ff
$ ip route show
default via 10.1.11.1 dev eth0
10.1.11.0/24 dev eth0 proto kernel scope link src 10.1.11.92
169.254.169.254 dev eth0
$ ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
link/ether 06:86:c4:51:10:7e brd ff:ff:ff:ff:ff:ff
inet 10.1.11.92/24 brd 10.1.11.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::486:c4ff:fe51:107e/64 scope link
valid_lft forever preferred_lft forever
以下の例ではデフォルトゲートウェイを 192.168.11.12/24 に設定している。
$ ip route add default via 192.168.11.1
ifconfig コマンド
ネットワークインターフェイスの情報を表示する。
$ ifconfig
eth0 Link encap:Ethernet HWaddr 06:86:C4:51:10:7E
inet addr:10.1.11.92 Bcast:10.1.11.255 Mask:255.255.255.0
inet6 addr: fe80::486:c4ff:fe51:107e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9001 Metric:1
RX packets:417835 errors:0 dropped:0 overruns:0 frame:0
TX packets:380963 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:87439897 (83.3 MiB) TX bytes:39784888 (37.9 MiB)
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:62 errors:0 dropped:0 overruns:0 frame:0
TX packets:62 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12608 (12.3 KiB) TX bytes:12608 (12.3 KiB)
以下の例では eth0 に IP アドレス 192.168.0.50 及びサブネットマスク 255.255.255.0 を設定している。
$ ifconfig eth0 192.168.0.50 netmask 255.255.255.0