« windowsでIPv6を使う | トップページ | Windows XP でIPv6対応Xlight FTP サーバーを使う »

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

Linux IPv6 HOWTO

windows XP関連のIPv6コマンドはこちら

« windowsでIPv6を使う | トップページ | Windows XP でIPv6対応Xlight FTP サーバーを使う »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: LinuxでIPv6コマンドを使う:

« windowsでIPv6を使う | トップページ | Windows XP でIPv6対応Xlight FTP サーバーを使う »