Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

6to4でIPv6を使ってみる+ip6tables設定@Sakura VPS with CentOS 5

      2011/10/08

Sakura VPS でIPv6を使ってみた。

方法としては 6to4 と 6rd という方法がとれるらしいが、6rdはCentOSだとカーネル入れ替えが必要になるので、今回は6to4というトンネルを選択。接続先はTokyo6to4です。

方法はいたって簡単。

# vi /etc/sysconfig/network
~ 以下を追加 ~
NETWORKING_IPV6=yes
IPV6_DEFAULTDEV=tun6to4
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
~ 以下を追加 ~
IPV6INIT=yes
IPV6TO4INIT=yes
IPV6TO4_RELAY=192.88.99.1

後は一端ネットワークを再起動。

#  /etc/init.d/network restart

再起動すると、以下のようなインタフェースが表示されます。

# ifconfig tun6to4
tun6to4   Link encap:IPv6-in-IPv4
          inet6 addr: 2002:xxxx:xxxx::1/16 Scope:Global
          UP RUNNING NOARP  MTU:1480  Metric:1
          RX packets:89 errors:0 dropped:0 overruns:0 frame:0
          TX packets:86 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:13543 (13.2 KiB)  TX bytes:14628 (14.2 KiB)

ちなみにLinuxでは、ipv6でpingを打つには、ping6を使います。

# ping6 www.iij.ad.jp
PING www.iij.ad.jp(2001:240:bb42:b000::1:80) 56 data bytes
64 bytes from 2001:240:bb42:b000::1:80: icmp_seq=0 ttl=58 time=10.2 ms

さらに、 手元のPCからこのサーバに対して、IPv6通信してみたかったので、Softether社提供の実験を使わせてもらい、手元からも無事接続できました。
Windowsの場合、pingコマンドは、IPv4もIPv6も同じpingコマンドを使います。IPv6で強制的にpingを使いたい場合は、-6オプションを使いましょう。

C:\>ping -6 www.iij.ad.jp
www.iij.ad.jp [2001:240:bb42:b000::1:80]に ping を送信しています 32 バイトのデータ:
2001:240:bb42:b000::1:80 からの応答: 時間 =60ms

ちなみに、IPv6の場合、IPv4のようにarpがありません。iptablesでファイアウォールを設定している場合、最低限pingなどに応答するには以下のように設定するとよいと思います。マルチキャストなども通したい場合は、適宜 –icmpv6-type の定義を増やしてあげてください。全タイプのicmpを通したいならば、–icmpv6-type ○○○ は必要ありません。

# ip6tables -A INPUT -s ::/0 -d ::/0 -i lo -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -p ipv6-icmp -m icmp6 --icmpv6-type 128 -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -p ipv6-icmp -m icmp6 --icmpv6-type 129 -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -p ipv6-icmp -m icmp6 --icmpv6-type 133 -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -p ipv6-icmp -m icmp6 --icmpv6-type 134 -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -p ipv6-icmp -m icmp6 --icmpv6-type 135 -j ACCEPT
# ip6tables -A INPUT -s ::/0 -d ::/0 -p ipv6-icmp -m icmp6 --icmpv6-type 136 -j ACCEPT

これで終了と思いきや、これだけではパケットは通らないかもしれません。実は、今回は6to4トンネルを使っているので、IPv4側でファイアウォールが動いている場合は、IPv6がカプセル化されたパケットを許可する必要があります。よって以下のようにipv6パケットは、IPv4側では通過させてあげます。

# iptables -A INPUT -p 41 -j ACCEPT

41というのは、IPv6のプロトコル番号です。これは、/etc/protocols ファイルに記述されていますので、気になる人は覗いてみてください。

 - IT技術, セキュリティ, ネットワーク , ,

336px

Message

メールアドレスが公開されることはありません。

  関連記事

no image
タイムゾーンの変更方法@RHEL

RHELやCentoSインストール時にタイムゾーン間違ったり、VMwareでクイ …

no image
Windows 10 のストアアプリが起動しない

Windows 10のストアが起動しなくなってしまったので、その時実施した対処方 …

no image
アイソレーションレベル

データベースはあまり詳しくないので、メモ書き。 SQL-92の仕様では、アイソレ …

no image
キル(コピー)した文字列の履歴をさかのぼってヤンク(貼り付け)する@bash

bashで、Ctrl-kでキル(コピー)した文字列をCtrl-yでヤンク(貼り付 …

no image
vimで検索語をハイライトする@さくらインターネット

普通vimで検索すると、検索語がハイライトされるのですが、さくらインターネットに …

no image
ICチップ付きクレジットカードの安全性

最近はクレジットカードにICチップがついていて、店頭での決済時に暗証番号を求めら …

no image
radikoを出張先で聞く@Windows 7 or XP Professional 以上

普段は自宅が関東にあり、インターネットラジオradikoを聞いていたのですが、出 …

no image
コマンドプロンプトを任意のフォルダから開く@Windows 7

Shiftを押しながらフォルダを右クリックすることで、”コマンドウィ …

no image
アプリケーションの追加と削除@RHEL5

RHEL5からはパッケージ管理のフロントエンドがyumになってしまったため、リポ …

no image
お使いの端末はこのアイテムに対応していません@Android Market

Android Market が最近アップデートされて、見た目ががらりと変わりま …