IPv6 ではなぜ単一のインターフェースで複数のアドレスが許可されるのですか? [closed] 質問する

IPv6 ではなぜ単一のインターフェースで複数のアドレスが許可されるのですか? [closed] 質問する

「単一のインターフェースには、任意のタイプ (ユニキャスト、エニーキャスト、マルチキャスト) またはスコープの複数の IPv6 アドレスが存在する場合もあります。」----RFC 4291 より引用

最近、私が進めていた実験中にこの質問に遭遇しました。RFC 4291 を調べましたが、全くわかりませんでした...

私の実験の簡単な紹介は次のとおりです。2
つのホストがあり、それぞれに 2 つの IPv6 アドレスが割り当てられています。次に、2 つのホスト間の接続をテストしました。コマンド「ping6 ipv6_addr」を使用しました。しかし、ping6 コマンドではピア ホストの両方のアドレスにアクセスできないことがわかりました。

例を使用してさらに理解を深めます (両方のコマンドはホスト A で実行され、Linux カーネル 2.6.32 を使用しています)。ping6
addr_b_1 --- 動作します
ping6 addr_b_2 --- 通過できませんでした

皆さんと議論したい質問が 2 つあります。1
. IPv6 プロトコルでは、なぜこのようなメカニズム (複数のアドレスを持つ単一のインターフェイス) が許可されるのでしょう
か。2. ホスト a の両方のアドレスに同時にアクセスできないのはなぜでしょうか。(そうあるべきでした。IPv6 のデフォルトのアドレス選択は RFC 3484 で定義されています)

君たちありがとう!

ベストアンサー1

初期の IPv4 スタックでは、インターフェイスごとに複数の IP アドレスはサポートされていませんでした。その後の改良により、「セカンダリ」アドレスが有効になりました。これは実際に非常に便利であることが判明し、IPv6 の設計者は、常にそれが可能であると期待できるように、標準の一部としてサポートを義務付けることを選択しました。

IPv6 の設計者は、それを義務付ける以上のことをしました。彼らはそれを IPv6 プロトコルの重要な部分にしました。すべての IPv6 インターフェイスには、リンク ローカル IP アドレスがあります。インターフェイスがより大きなネットワーク (インターネットなど) とも通信できる場合は、グローバル スコープ アドレスも持っています。つまり、最低でも 2 つのアドレスが必要です。また、ホストがマルチホーム インターネット接続の背後にある場合は、おそらくさらに多くのアドレスがあります。インターフェイスごとに複数の IP アドレスを持つことは、IPv4 のように IPv6 では後付けではありませんでした。

欠点について言及されていますが、設定ミスがない限り、この状況が問題を引き起こすとは思えません。(設定の詳細と、1 つの IP アドレスが機能して他の IP アドレスが機能しない理由を説明できるかもしれませんが、何らかのエラーが原因であることは間違いありません)。

一方、利点についても考えてみましょう。

  • ネットワーク インフラストラクチャ (ルーターなど) が利用できない場合でも、デバイスはリンク ローカル アドレスを使用してローカル LAN 上で互いを検出できます。後でルーターが追加され、グローバル スコープ アドレスが利用可能になった場合、これらのアドレスはアドレス セットを拡張しますが、リンク ローカル アドレスを置き換えるものではありません。そのため、リンク ローカル アドレスを使用した既存の通信は中断されません。
  • インターネット接続が切断、追加、または置換された場合、セット内の 1 つの IP アドレスは、他の IP アドレスに影響を与えることなく削除または追加できます。「非推奨」状態のおかげで、インターフェイスが一定期間両方をサポートし、1 つの IP アドレスから別の IP アドレスへの適切な再番号付けが可能になります。

また、ほぼすべての IPv4 スタックはインターフェイスごとに複数のアドレスもサポートしているため、これは v4 と v6 の大きな違いではないことに注意してください。これをサポートしていないのは、非常に古い v4 スタックだけです。違いは、v6 にはアドレス セットを自動的に管理する方法がありますが、v4 にはこれが存在しないことです。

おすすめ記事