web-dev-qa-db-ja.com

IPv4とIPv6は単一の物理イーサネットを共有できますか?

IPv4からIPv6への移行、および考えられる利点と問題について読み続けています。ポップアップし続けるものの1つは、「デュアルスタック」ネットワーキングです。つまり、ホストはIPv4とIPv6の両方を話すことができます(私はそう思います)。

しかし、これがどのように機能するのかよくわかりません。ホストは実際にIPv4 および IPv6を使用して同じ物理イーサネットを介して同時に送信できますか(たとえば、HTTPとFTPを同時に使用できます)?または、物理ネットワークは厳密にIPv4 または IPv6であり、「その他」のプロトコルはトンネリングを介して送信されますか?

14
sleske

イーサネットはプロトコルに依存しません。イーサネットに接続されたデバイスは、IPv4、IPv6、IPX、またはその他のプロトコルを使用してデータを含むパケットを送信します。プロトコルを理解するのは、接続されているデバイス(PCなど)次第です。

ネットワークスタックに関しては、イーサネットはスタックのレベル2(データリンク)です。デバイス間の配線はレベル1(物理的)です。これらのレイヤーには、任意の数のプロトコルを伝送できる単なるパイプがあります。複数のプロトコルを同時に実行できます。

IPv4およびIPv6はレベル3(ネットワーク)です。デュアルスタックは新しいものではなく、数年前はデュアルスタックはIPv4とIPXでした。パケットが到着すると、コンピュータはパケットの配信先のスタックを決定する必要があります。 IPv4およびIPv6の場合、パケットの最初の4ビットでエンコードされるため、これは簡単に実行できます。

トランスポート(レベル4)層にあるTCPとUDPは、IPv4とIPv6で同等に動作します。場合によっては、2つのエンドポイント間でIPv4からIPv6に、またはその逆に切り替わることがあります。 IPv4アドレスをIPv6アドレスとしてエンコードして、IPv6のみのデバイスがIPv4のみのデバイスをアドレス指定できるようにするアドレス指定スキームがあります。これが機能するには、中央にプロトコル変換デバイスが必要です。

IPv4を1つのアダプターにバインドし、IPV6を別のアダプターにバインドすることには、待ち時間がわずかに長くなる可能性があります。これは、プロトコルが同じリンクを介してルーティングされなかった場合にのみ役立ちます。異なるプロトコルが使用された場合、同じルーターで転送を実行すると少し速くなる可能性があります。 2番目のインターフェイスを2番目のセキュリティゾーンまたはネットワーク共有用に予約します。

12
BillThor

特定のネットワークカードは、必要なだけ多くのプロトコルと通信できます。当時、私はしばしばIPv4、 [〜#〜] ipx [〜#〜] 、および同じカードに同時にバインドされたいくつかのあいまいなプロトコルを持っていました。それが レイヤードモデル の喜びです。

ご指摘のとおり、HTTPとFTPの両方をIP経由で実行している場合も、同じ原則が機能します。ネットワークスタックの下位層は、上位層が何をしているのかを特に気にしないため、特定の下位レベルのプロトコルを介して多くの上位レベルのプロトコルを送信できます。

現在、すべてのIPv4/IPv6遷移が、ネットワークカードが両方を同時に話すように設定されているわけではなく、トンネリングが使用されることもあります( Teredo など)。しかし、それは必要ではありません。

8
dsolimano