LinuxでIPv6コマンドを使う
<環境>CentOS4, CentOS5など
IPv6が使えるようにしておくこと。
<アドレスの確認方法>
Globalが2つ、Link Localが1つ設定されていることが分かる。
IPv6のループバックアドレスは、::1となっている。
$ /sbin/ifconfig -a eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx inet addr:192.168.10.100 Bcast:192.168.10.255 Mask:255.255.255.0 inet6 addr: fd36:xxxx:xxxx:0:222:1ff:fecd:1245/64 Scope:Global inet6 addr: 2001:db8::111:1ff:fecd:1245/64 Scope:Global inet6 addr: fe80::230:1ff:fecd:1245/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 : 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:16436 Metric:1 : sit0 Link encap:IPv6-in-IPv4 NOARP MTU:1480 Metric:1 : |
<IPv6アドレスの追加>
管理者権限で、Globalアドレスを手動で追加
# ifconfig eth0 inet6 add fd36:xxxx:xxxx:0:222:1ff:fecd:1245/64 または # /sbin/ip -6 addr add 2001:db8:xxx::2/64 dev eth0 |
*実際には -6 オプションがなくても登録できる
<IPv6アドレスの削除>
管理者権限で、IPv6アドレスを削除
# ifconfig eth0 inet6 del fd36:xxxx:xxxx:0:222:1ff:fecd:1245/64 または # /sbin/ip -6 addr del 2001:db8:xxx::2/64 dev eth0 |
確認
fd36:のアドレスがなくなっていることが分かる。
$ /sbin/ifconfig eth0 eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx inet addr:192.168.10.100 Bcast:192.168.10.255 Mask:255.255.255.0 inet6 addr: 2001:db8:6789:0:111:1ff:fecd:1245/64 Scope:Global inet6 addr: fe80::230:1ff:fecd:1245/64 Scope:Link : |
<ローカルアドレスにPING>
リンクローカルアドレスへのPINGではインターフェースを指定する。windowsやMacのような%インターフェースID 指定は出来ない。
-c はカウント
$ ping6 -c 2 -I eth0 fe80::230:1ff:fecd:ae65 PING fe80::230:1ff:fecd:ae65(fe80::230:1ff:fecd:ae65) from fe80::230:1ff:fecd:1245 eth0: 56 data bytes 64 bytes from fe80::230:1ff:fecd:ae65: icmp_seq=0 ttl=64 time=0.415 ms 64 bytes from fe80::230:1ff:fecd:ae65: icmp_seq=1 ttl=64 time=0.403 ms : |
<グローバルアドレスにPING>
インターフェース指定(-I) は不要
$ ping6 -c 2 2001:db8::xxx:xxx:xxx:xxx:5 PING 2001:db8::xxx:xxx:xxx:xxx:5(2001:db8::xxx:xxx:xxx:xxx:5) 56 data bytes 64 bytes from 2001:db8::xxx:xxx:xxx:xxx:5: icmp_seq=0 ttl=64 time=818 ms : |
<ルーティングテーブルの表示>
IPv6のDNS設定を行っていないので、"getnameinfo failed"となっている。
$ /sbin/route -A inet6 Kernel IPv6 routing table Destination Next Hop Flags Metric Ref Use Iface localhost/128 * U 0 364 2 lo getnameinfo failed [UNKNOWN]/128 * U 0 122 2 lo getnameinfo failed [UNKNOWN]/64 * UA 256 2261 0 eth0 fd08:xxx:xxx::/64 * UA 256 3 0 eth0 : または $ /sbin/ip -6 route show unreachable 2002:a00::/24 dev lo metric 1024 expires 20528335sec error -101 mtu 16436 advmss 16376 hoplimit 4294967295 fd08:xxx:xxx::/64 dev eth0 proto kernel metric 256 expires 152323sec mtu 1500 advmss 1440 hoplimit 64 fe80::/64 dev eth0 metric 256 expires 2047342sec mtu 1500 advmss 1440 hoplimit 64 ff00::/8 dev eth0 metric 256 expires 2047342sec mtu 1500 advmss 1440 hoplimit 1 : |
以下のファイルにも経路情報が書き込まれる。
/proc/net/ipv6_route
<経路の追加>
# /sbin/route -A inet6 add 2000::/3 gw 2001:db8:xxx::1 [device] または # /sbin/ip -6 route add 2000::/3 via 2001:db8:xxx::1 [device] |
<経路の削除>
なぜか"unreachable"ができているので、消してみる。
# /sbin/route del xx または # /sbin/ip route del 2002:a00::/24 dev lo |
<近隣キャッシュの表示>
$ /sbin/ip -6 neigh show fe80::xxx:xxx:xxx:5678 dev eth0 lladdr 00:xx:xx:xx:56:78 router nud reachable ・・・ルータのリンクローカルアドレス 2001:db8:xxx:0:xxx:xxx:xxx:abcd dev eth0 lladdr 00:xx:xx:xx:ab:cd nud reachable ・・・別のIPv6対応ホストのグローバルアドレス 2001:db8:xxx::1 dev eth0 lladdr 00:xx:xx:xx:56:78 router nud reachable ・・・ルータのIP |
windows XP関連のIPv6コマンドはこちら