IPv6におけるデフォルトアドレス選択とは
IPv6(*1)におけるデフォルトアドレス選択とは、 IPv6環境において、使用するアドレスを状況に応じて自動的に決定することを言います。 IPv6環境では、一つのノードが複数のIPv6アドレスを持つ機会が多くなります。 そのため、通信を行う際に複数の送信元アドレス、 送信先アドレスが存在する場合があります。そのような状態を、 「マルチプリフィクス(*2)」と呼びます。
また、IPv6アドレスには、同一リンク内でのみ有効なリンクローカルアドレスや、 インターネット上で通信を行うためのグローバルユニキャストアドレスといった複数の種類があり、 送信元アドレスと送信先アドレスの組み合わせが適切でないと、 通信を行うことができません。
- まず、各インタフェースには必ず一つのリンクローカルユニキャストアドレスが付きます
- アドレス自動設定を有効にしている場合は、RA(Router Advertisement)やDHCPv6により、グローバルユニキャストアドレスが設定されます
- その他に、手動でグローバルユニキャストアドレスを設定できます
さらに、IPv6/IPv4デュアルスタック環境下では、 どちらのプロトコルを利用して通信するかという問題もあります。
そこで、使用するアドレスを状況に応じて自動的に決定する仕組みが必要になります。 この規則を定めたのがRFC3484(*3)で、 送信元アドレス、送信先アドレスごとに、 使用するアドレスを選択するアルゴリズムが定義されており、 すべてのIPv6ノードが実装するべきとされています(ただし、 RFC3484で選択されるデフォルトアドレスではうまく通信が行えない場合があり、 そのようなケースがRFC5220(*4)および5221(*5)で例示されています)。
RFC3484には、 このアルゴリズムの動作を変更するためのポリシーテーブルの設定についても規定されています。 これにより、特定の送信先に対して指定した送信元アドレスを使用する、 IPv4での通信を優先する、といったことが可能になります。
(*1) http://www.nic.ad.jp/ja/newsletter/No32/090.html
(*2) http://www.nic.ad.jp/ja/basics/terms/multiprefix.html
(*3) RFC3484 "Default Address Selection for Internet Protocol version 6 (IPv6)"
http://www.ietf.org/rfc/rfc3484.txt
(*4) RFC5220 "Problem Statement for Default Address Selection in Multi-Prefix Environments: Operational Issues of RFC 3484 Default Rules"
http://www.ietf.org/rfc/rfc5220.txt
(*5) RFC5221 "Requirements for Address Selection Mechanisms"
http://www.ietf.org/rfc/rfc5221.txt