IPv4との相互運用

概念的にはIPv4とIPv6はほぼ同等と言えるが、実際のパケットフォーマットは完全に異なる上、IPアドレス空間の大きさも違うため、一対一対応はできない。そのため、IPv6ノードとIPv4ノードが互いに直接通信することはできない。 そのため、IPv6とIPv4との通信用にいくつかの仕組み、プロトコルが提案されている。
デュアルスタック
ルータやサーバなどの機器にIPv4とIPv6の両アドレスを割り当て、 どちらの方式でも通信できるようにする仕組み。
TCP Relay (faith)
また、IPv6/IPv4トランスレータと呼ばれる装置によって、プロトコル変換を行う方法がある。例えば、Proxy方式では、OSI参照モデルで上位層であるアプリケーション層でプロトコル変換を行うことで、ネットワーク層であるIPプロトコルの違いを隠蔽している。これにより、利用者からみた場合、IPv4のプライベートアドレスが使用されているLAN内から、IPv4/IPv6に関係なくURLで、インターネット上のサイトにアクセスできるように見える。

IPv4でもイケてる情報

トンネリング

IPv6のネイティブな接続を提供しているISPはまだ極めて少ない。 そのため、ほとんどのIPv6ユーザーはIPv4上にIPv6をトンネリングして利用している(商用のIPv6サービスもその多くはトンネリングである)。
トンネリングに用いられる技術には以下のようなものがある。
1)IPv4のネットワーク上でIPv6のパケットを搬送するためのトンネリング
6over4(RFC 2529)
6to4(RFC 3056):品質が保証されない、パケット盗聴などのセキュリティ問題が起こりやすいという理由で、廃止する方向で検討中
Teredo(RFC 4380)
ISATAP(RFC 5214)
6rd(RFC 5569)
6in4(RFC 4213)
2)IPv6のネットワーク上でIPv4のパケットを搬送するためのトンネリング
IPv4 over IPv6(RFC 2473)
Windowsでの留意事項
Windowsでは、6over4、Teredo、ISATAP、6to4のみがOSとしてサポートされている。他の方式を使用するには、サードパーティ製のソフトウェアを追加する必要がある。
Windowsでは、IPv6のグローバルアドレスが設定されていない場合、Microsoftが無償提供しているTeredoによる接続サービスによるトンネリングを自動設定する。
Windowsでは、IPv4のグローバルアドレスが設定されている場合、Microsoftが無償提供している6to4による接続サービスによるトンネリングを自動設定する。
Windows Vista以降による接続では、ホスト名で通信相手を指定した場合にIPv6で通信できない場合がある。これは、ホスト名のアドレス解決においてホストにリンク ローカル アドレスまたは Teredo アドレスしか割り当てられていない場合、DNSクライアントサービスはIPv4用のAレコードに関するクエリだけを送信するためIPv6アドレスが取得できないためである。この場合、ホスト名では通信対象のIPv6アドレスを特定できず、URLで直接IPv6アドレスを指定したりしない限り、指定した相手にIPv6で通信することはない。
UNIX系OSでの留意事項
基本的にカーネルの版数やディストリビューション、パッケージの構成に依存するため、どの方式のトンネリングが使用できるかは明示できない。Linuxの場合、ディストリビュータによるサポート範囲では、6over4、ISATAP、6to4程度である場合がある。

IPv6時代のおすすめ