ipv6 には ipv4 との下位互換性がありますか?
質問
ipv4 を使用して書かれた小さな udp サンプルプログラムがあります。コードを ipv6 に変更した場合でも、ipv4 アドレスを持つリスナーを使用している誰とでも通信できますか?私は移植例を見ていました
http://ou800doc.caldera.com/en/SDK_netapi/sockC.PortIPv4appIPv6.html
コードを変更するだけで確実に動作するのか、それともデュエルスタック モードで記述する必要があるのかはわかりません。
解決
はい、あなたは代わりのヘッダーや構造のサイズを使用するようにアプリを再コーディングする必要がありますので、ノー... IPv6は、アドレス指定の完全に異なる含んん。
しかし、IPv4アドレスの範囲は、IPv6の範囲内で利用することができ、構文は標準のアドレス(例えば:: 10.11.12.13)の前に二つのコロンを追加することです。また、は、IPv6パケットの中にIPv4アドレスを埋め込むことができます。
他のヒント
はありませんのIPv4 / IPv6ゲートウェイする rel="noreferrer">のを典型的な問題をrel="noreferrer"> href="http://tools.ietf.org/html/rfc3424"
IPv4 と IPv6 は本質的に相互に互換性がありません。
いくつかの基本的な理由:
- アドレス空間は完全に異なります(IPv6 には 128 ビット アドレスがあり、IPv4 には 32 ビット アドレスがあります)
- IPv6 のプロトコル ヘッダーは、IPv4 のプロトコル ヘッダーとはまったく異なります。IPv6 パケットを IPv4 として解析しようとすると、ナンセンスになります。
これらの明らかな結果は、IPv6 ソケットを開いた場合、IPv4 ソケットを使用してそれをリッスンすることができないということです。
所属していません StackOverflow