IPv6 について
IPv6 は、IPv4 の後継として設計されており、ネットワーク アドレス ビット数が 32 ビット(IPv4 の場合)から 128 ビットに増やされています。IPv6 は IPv4 に基づいていますが、アドレス空間が大幅に拡大されており、メイン ヘッダーと拡張ヘッダーの簡素化など、その他の機能強化が含まれています。
拡大された IPv6 アドレス空間により、ネットワークのスケーラビリティが可能となり、グローバルな到達可能性が提供されます。簡素化された IPv6 パケット ヘッダー フォーマットにより、パケットの処理効率が向上しています。柔軟性の高い IPv6 アドレス空間により、プライベート アドレスの必要性と、プライベート(グローバルに一意ではない)アドレスを限られた数のパブリック アドレスに変換する Network Address Translation(NAT; ネットワーク アドレス変換)の使用が削減されます。IPv6 を使用すると、ネットワークの境界にある境界ルータによる特別な処理を必要としない新しいアプリケーション プロトコルがイネーブルになります。
プレフィクス集約、簡易ネットワーク再番号割り当て、IPv6 サイト マルチホーミング機能などの IPv6 機能により、さらに効率的にルーティングが行われます。IPv6 は、Routing Information Protocol(RIP)、Integrated Intermediate System-to-Intermediate System(IS-IS)、IPv6 向け OSPF(Open Shortest Path First)、マルチプロトコル Border Gateway Protocol(BGP)をサポートしています。
ここでは、次の内容について説明します。
• 「IPv6 アドレス フォーマット」
• 「IPv6 ユニキャスト アドレス」
• 「IPv6 エニーキャスト アドレス」
• 「IPv6 マルチキャスト アドレス」
• 「IPv4 パケット ヘッダー」
• 「簡易 IPv4 パケット ヘッダー」
• 「IPv6 の DNS」
• 「IPv6 のパス MTU 探索」
• 「Cisco Discovery Protocol(CDP)IPv6 アドレスのサポート」
• 「IPv6 の ICMP」
• 「IPv6 近隣探索」
• 「IPv6 ネイバー送信要求メッセージ」
• 「IPv6 ルータ アドバタイズメント メッセージ」
• 「IPv6 ネイバー リダイレクト メッセージ」
• 「仮想化のサポート」
IPv6 アドレス フォーマット
IPv6 アドレスは、128 ビットまたは 16 バイトです。このアドレスは、x:x:x:x:x:x:x:x のように、コロン(:)で区切られた 16 ビット 16 進数のブロック 8 つに分かれています。次に、IPv6 アドレスの例を 2 つ示します。
2001:0DB8:7654:3210:FEDC:BA98:7654:3210
2001:0DB8:0:0:8:800:200C:417A
IPv6 アドレスの中には、連続するゼロが含まれます。IPv6 アドレスの先頭、中間、または末尾で、この連続するゼロの代わりに 2 つのコロン(::)を使用できます。表3-1 は、圧縮された IPv6 アドレス フォーマットの一覧です。
(注) IPv6 アドレスでは、アドレス中でもっとも長く連続するゼロの代わりに、2 つのコロン(::)を 1 度だけ使用できます。
連続する 16 ビット値がゼロで示されている場合は、2 つのコロンを IPv6 アドレスの一部として使用できます。インターフェイスごとに複数の IPv6 アドレスを設定できますが、設定できるリンクローカル アドレスは 1 つだけです。
IPv6 アドレス中の 16 進数の文字の大文字と小文字は区別されません。
表3-1 圧縮された IPv6 アドレス フォーマット
|
|
|
ユニキャスト |
2001:0:0:0:0DB8:800:200C:417A |
2001::0DB8:800:200C:417A |
マルチキャスト |
FF01:0:0:0:0:0:0:101 |
FF01::101 |
ループバック |
0:0:0:0:0:0:0:0:1 |
::1 |
未指定 |
0:0:0:0:0:0:0:0:0 |
:: |
ノードは、 表3-1 にあるループバック アドレスを使用して、IPv6 パケットを自分宛てに送信できます。IPv6 のループバック アドレスは、IPv4 のループバック アドレスと同じです。詳細については、 第 1 章「概要」 を参照してください。
(注) IPv6 ループバック アドレスは、物理インターフェイスには割り当てられません。送信元または宛先のアドレスとして IPv6 ループバック アドレスを含むパケットは、そのパケットを作成したノードの外には転送できません。IPv6 ルータは、送信元または宛先のアドレスとして IPv6 ループバック アドレスを含むパケットを転送しません。
(注) IPv6 未指定アドレスは、インターフェイスには割り当てられません。未指定 IPv6 アドレスは、IPv6 パケット内の宛先アドレスまたは IPv6 ルーティング ヘッダーとして使用しないでください。
IPv6 プレフィクスは、RFC 2373 で規定された形式です。この形式では、IPv6 アドレスが、コロンに囲まれた 16 ビット値を使用した 16 進数で指定されています。プレフィクス長は、プレフィクス(アドレスのネットワーク部)を構成する、アドレスの高位隣接ビットの数を示す 10 進数値です。たとえば、2001:0DB8:8086:6502::/32 は有効な IPv6 プレフィクスです。
集約可能グローバル アドレス
集約可能グローバル アドレスは、集約可能なグローバル ユニキャスト プレフィクスによる IPv6 アドレスです。集約可能なグローバル ユニキャスト アドレスの構造により、グローバル ルーティング テーブル内のルーティング テーブル エントリ数を制限するルーティング プレフィクスの厳密な集約が可能となります。集約可能なグローバル アドレスは、組織間を上に向かって、最終的に Internet service provider(ISP; インターネット サービス プロバイダー)まで集約されるリンクで使用されます。
集約可能なグローバル IPv6 アドレスは、グローバル ルーティング プレフィクス、サブネット ID、およびインターフェイス ID により定義されます。IPv6 グローバル ユニキャスト アドレスの割り当てには、バイナリ値 001(2000::/3)から始まるアドレスの範囲が使用されます。図3-1 は、集約可能なグローバル アドレスの構造を示します。
図3-1 集約可能グローバル アドレスのフォーマット
2000::/3 (001) ~ E000::/3 (111) のプレフィクスを持つアドレスには、Extended Universal Identifier(EUI)-64 フォーマットの 64 ビット インターフェイス ID が必要です。Internet Assigned Numbers Authority(IANA; インターネット割り当て番号局)は、2000::/16 の範囲の IPv6 アドレス空間を地域レジストリに割り当てます。
集約可能なグローバル アドレスは、48 ビット グローバル ルーティング プレフィクスと、16 ビット サブネット ID または Site-Level Aggregator(SLA)で構成されます。IPv6 集約可能なグローバル ユニキャスト アドレス フォーマット文書(RFC 2374)では、グローバル ルーティング プレフィクスには、Top-Level Aggregator(TLA)および Next-Level Aggregator(NLA)という他の 2 つの階層構造のフィールドが含まれるとされていました。TLS フィールドおよび NLA フィールドはポリシーベースであるため、IETF は、これらのフィールドを RFC から削除することを決定しました。この変更以前に展開された既存の IPv6 ネットワークの中には、依然として、古いアーキテクチャ上のネットワークを使用しているものもあります。
個々の組織では、16 ビット サブネット フィールドであるサブネット ID を使用して、ローカル アドレス指定階層構造を作成したり、サブネットを識別したりできます。サブネット ID は、IPv4 でのサブネットに似ていますが、IPv6 サブネット ID を持つ組織では 65,535 のサブネットをサポートできるという点で異なります。
インターフェイス ID で、リンク上のインターフェイスが識別されます。インターフェイス ID は、リンク上では一意です。多くの場合、インターフェイス ID は、インターフェイスのリンクレイヤ アドレスと同じか、リンクレイヤ アドレスに基づいています。集約可能なグローバル ユニキャスト アドレス タイプおよびその他の IPv6 アドレス タイプで使用されるインターフェイス ID は、長さが 64 ビットの変更済み EUI-64 フォーマットです。
インターフェイス ID は、次のいずれかに該当する変更済みの EUI-64 フォーマットです。
• すべての IEEE 802 インターフェイス タイプ(イーサネット、および Fiber Distributed Data インターフェイスなど)の場合は、最初の 3 オクテット(24 ビット)がそのインターフェイスの 48 ビット リンクレイヤ アドレス(MAC アドレス)の Organizationally Unique Identifier(OUI)、4 番めと 5 番めのオクテット(16 ビット)が FFFE の固定 16 進数値、そして、最後の 3 オクテット(24 ビット)が MAC アドレスの最後の 3 オクテットです。最初のオクテットの 7 番めのビットである Universal/Local(U/L)ビットの値は 0 または 1 です。ゼロはローカルに管理されている ID を表し、1 はグローバルに一意の IPv6 インターフェイス ID を表します。
• その他のすべてのインターフェイス タイプ(シリアル、ループバック、ATM、フレームリレー、トンネル インターフェイス タイプなど。ただし、IPv6 オーバーレイ トンネルで使用されるトンネル インターフェイスを除く)の場合、インターフェイス ID は IEEE 802 インターフェイス タイプのインターフェイス ID に似ていますが、ルータの MAC アドレス プールからの最初の MAC アドレスが ID として使用される点が異なります(インターフェイスが MAC アドレスを持たないため)。
• IPv6 オーバーレイ トンネルで使用されるトンネル インターフェイス タイプの場合、インターフェイス ID は、ID の高位 32 ビットがすべてのゼロであるトンネル インターフェイスに割り当てられた IPv4 アドレスです。
(注) PPP(ポイントツーポイント プロトコル)を使用するインターフェイスの場合は、接続の両端のインターフェイスが同じ MAC アドレスを持つため、接続の両端のインターフェイス ID が、両方の ID が一意となるまでネゴシエートされます(ランダムに選択され、必要に応じて再構築されます)。ルータの最初の MAC アドレスが、PPP を使用するインターフェイスの ID として使用されます。
ルータに IEEE 802 インターフェイス タイプがない場合は、ルータのインターフェイスでリンクローカル IPv6 アドレスが次のシーケンスで生成されます。
1. ルータに MAC アドレス(ルータ内の MAC アドレス プールの)が照会されます。
2. 使用可能な MAC アドレスがルータにない場合は、ルータのシリアル番号を使用して、リンクローカル アドレスが作成されます。
3. リンクローカル アドレスの作成にルータのシリアル番号を使用できない場合、ルータは MD5 ハッシュを使用して、ルータのホスト名からルータの MAC アドレスを決定します。
リンクローカル アドレス
リンクローカル アドレスは、リンクローカル プレフィクス FE80::/10(1111 1110 10)と、変更済み EUI-64 フォーマットのインターフェイス ID を使用するどのインターフェイスでも自動設定が可能な IPv6 ユニキャスト アドレスです。リンクローカル アドレスは NDP およびステートレス自動設定処理で使用されます。ローカル リンク上のノードは、リンクローカル アドレスを使用して通信でき、通信するためにはグローバルに一意のアドレスを必要としません。図3-2 は、リンクローカル アドレスの構造を示します。
IPv6 ルータは、送信元または宛先がリンクローカル アドレスであるパケットを他のリンクに転送できません。
図3-2 リンクローカル アドレス フォーマット
IPv4 互換の IPv6 アドレス
IPv4 互換 IPv6 アドレスとは、アドレスの高位 96 ビットがゼロであり、アドレスの低位 32 ビットが IPv4 アドレスであるIPv6 ユニキャスト アドレスです。IPv4 互換 IPv6 アドレスのフォーマットは 0:0:0:0:0:0:A.B.C.D または ::A.B.C.D です。IPv4 互換 IPv6 アドレスの 128 ビット全体はノードの IPv6 アドレスとして使用され、低位 32 ビットに埋め込まれた IPv4 アドレスはノードの IPv4 アドレスとして使用されます。IPv4 互換 IPv6 アドレスは、IPv4 および IPv6 の両プロトコル スタックをサポートするノードに割り当てられ、自動トンネルで使用されます。図3-3 は、IPv4 互換 IPv6 アドレスの構造と、許容されるアドレス フォーマットのいくつかを示します。
図3-3 IPv4 互換 IPv6 アドレスのフォーマット
ユニーク ローカル アドレス
ユニーク ローカル アドレスは、グローバルに一意であり、ローカルでの通信のための IPv6 ユニキャスト アドレスです。グローバルなインターネット上でのルーティングには対応しておらず、サイトなどの限られたエリア内でのみルーティング可能です。限られた複数のサイト間もルーティングできる場合もあります。アプリケーションは、ユニーク ローカル アドレスをグローバルなスコープのアドレスとして扱う場合があります。
ユニーク ローカル アドレスには次の特徴があります。
• グローバルに一意のプレフィクスを持っている(一意である可能性が大)
• 周知のプレフィクスを持つため、サイトの境界でフィルタリングが容易
• アドレスの競合が発生せず、これらのプレフィクスを使用するインターフェイスの再番号割り当ても必要とせずに、サイトを結合したり、プライベートに相互接続したりできる
• ISP に依存せず、永久的または断続的なインターネット接続を使用することなく、サイト内での通信に使用できる
• ルーティングや Domain Name Server(DNS; ドメイン ネーム サーバ)により、誤ってサイト外に漏れても、他のどのアドレスとも競合しない
図3-4 は、ユニーク ローカル アドレスの構造を示します。
図3-4 ユニーク ローカル アドレスの構造
サイトローカル アドレス
RFC 3879 によりサイトローカル アドレスの使用が廃止されたため、プライベート IPv6 アドレスの設定時には、RFC 4193 で推奨されるユニーク ローカル アドレス(UCA)を使用する必要があります。
IPv6 エニーキャスト アドレス
エニーキャスト アドレスとは、異なるノードに属するインターフェイス一式に割り当てられたアドレスです。エニーキャスト アドレスに送信されたパケットは、ルーティング プロトコルの定義に従って、そのエニーキャスト アドレスが示す最寄りのインターフェイスに配信されます。エニーキャスト アドレスは、ユニキャスト アドレス空間から割り当てられるため、その構文ではユニキャスト アドレスと区別できません。ユニキャスト アドレスを複数のインターフェイスに割り当てると、ユニキャスト アドレスがエニーキャスト アドレスとなります。エニーキャスト アドレスが割り当てられたノードは、アドレスがエニーキャスト アドレスであることを認識できるよう、設定する必要があります。
(注) エニーキャスト アドレスを使用できるのは、ルータのみです。ホストはエニーキャスト アドレスを使用できません。エニーキャスト アドレスは、IPv6 パケットの送信元アドレスには使用できません。
図3-5 は、サブネット ルータ エニーキャスト アドレスのフォーマットを示します。アドレスには、連続するゼロに連結されたプリフィクス(インターフェイス ID)があります。サブネット ルータ エニーキャスト アドレスを使用すると、サブネット ルータ エニーキャスト アドレスのプレフィクスが表すリンク上のルータに到達できます。
図3-5 サブネット ルータ エニーキャスト アドレスのフォーマット
IPv6 マルチキャスト アドレス
IPv6 マルチキャスト アドレスとは、FF00::/8(1111 1111)というプレフィクスを持つ IPv6 アドレスです。IPv6 マルチキャスト アドレスは、異なるノードに属するインターフェイス一式の ID です。マルチキャスト アドレスに送信されたパケットは、マルチキャスト アドレスが示すすべてのインターフェイスに配信されます。プレフィクスに続く 2 番めのオクテットで、マルチキャスト アドレスのライフタイムとスコープが定義されます。永久マルチキャスト アドレスはライフタイム パラメータが 0 に等しく、一時マルチキャスト アドレスのライフタイム パラメータは 1 に等しくなっています。ノード、リンク、サイト、または組織のスコープ、またはグローバル スコープを持つマルチキャスト アドレスのスコープ パラメータはそれぞれ、1、2、5、8、または E です。たとえば、FF02::/16 というプレフィクスを持つマルチキャスト アドレスは、リンク スコープを持つ永久マルチキャスト アドレスです。図3-6 は、IPv6 マルチキャスト アドレスのフォーマットを示します。
図3-6 IPv6 マルチキャスト アドレスのフォーマット
IPv6 ノード(ホストとルータ)は、(受信パケットの宛先となる)次のマルチキャスト グループに加入する必要があります。
• 全ノード マルチキャスト グループ FF02:0:0:0:0:0:0:1(スコープはリンクローカル)
• 割り当てられたユニキャスト アドレスおよびエニーキャスト アドレスごとの送信要求ノード マルチキャスト グループ FF02:0:0:0:0:1:FF00:0000/104
IPv6 ルータは、全ルータ マルチキャスト グループ FF02:0:0:0:0:0:0:2(スコープはリンクローカル)にも加入する必要があります。
送信要求ノード マルチキャスト アドレスは、IPv6 ユニキャスト アドレスまたは IPv6 エニーキャスト アドレスに対応するマルチキャスト グループです。IPv6 ノードは、割り当てられているユニキャスト アドレスおよびエニーキャスト アドレスごとに、関連付けられた送信要求ノード マルチキャスト グループに加入する必要があります。IPv6 送信要求ノード マルチキャスト アドレスには、対応する IPv6 ユニキャスト アドレス または IPv6 エニーキャスト アドレスの低位 24 ビットに連結されたプレフィクス FF02:0:0:0:0:1:FF00:0000/104 があります(図3-7 を参照)。たとえば、IPv6 アドレス 2037::01:800:200E:8C6C に対応する送信要求ノード マルチキャスト アドレスは FF02::1:FF0E:8C6C です。送信要求ノード アドレスは、ネイバー送信要求メッセージで使用されます。
図3-7 IPv6 送信要求ノード マルチキャスト アドレスのフォーマット
(注) IPv6 にはブロードキャスト アドレスはありません。IPv6 マルチキャスト アドレスがブロードキャスト アドレスの代わりに使用されます。
IPv4 パケット ヘッダー
基本 IPv4 パケット ヘッダーには、合計サイズが 20 オクテット(160 ビット)の 12 のフィールドがあります(図3-8 を参照)。この 12 このフィールドの後にはオプション フィールドが、さらにその後に、通常はトランスポート レイヤ パケットであるデータ部分が続く場合があります。オプション フィールドの可変長部分は、IPv4 パケット ヘッダーの合計サイズに加算されます。IPv4 パケット ヘッダーのグレーの部分のフィールドは、IPv6 パケット ヘッダーに含まれません。
図3-8 IPv4 パケット ヘッダーのフォーマット
簡易 IPv4 パケット ヘッダー
基本 IPv6 パケット ヘッダーには、合計サイズが 40 オクテット(320 ビット)の 8 つのフィールドがあります(図3-9 を参照)。フラグメンテーションはパケットの送信元により処理され、データリンク レイヤのチェックサムとトランスポート レイヤが使用されます。User Datagram Protocol(UDP)チェックサムにより、内部パケットと基本 IPv6 パケット ヘッダーの整合性がチェックされ、オプション フィールドが 64 ビットに揃えられるため、IPv6 パケットの処理が容易になります。
表3-2 は、基本 IPv6 パケット ヘッダーのフィールドの一覧です。
表3-2 基本 IPv6 パケット ヘッダーのフィールド
|
|
バージョン |
IPv4 パケット ヘッダーのバージョン フィールドに該当しますが、IPv4 で示される数字 4 の代わりに、IPv6 では数字 6 が示されます。 |
トラフィック クラス |
IPv4 パケット ヘッダーのサービス タイプ フィールドに該当します。トラフィック クラス フィールドは、差別化されたサービスで使用されるトラフィック クラスのタグをパケットに付けます。 |
フロー ラベル |
IPv6 パケット ヘッダーの新規フィールドです。フロー ラベル フィールドは、ネットワーク レイヤでパケットを差別化する特定のフローのタグを、パケットに付けます。 |
ペイロード長 |
IPv4 パケット ヘッダーのパケット長フィールドに該当します。ペイロード長フィールドは、パケットのデータ部分の長さの合計を示します。 |
次ヘッダー |
IPv4 パケット ヘッダーのプロトコル フィールドに該当します。次ヘッダー フィールドの値により、基本 IPv6 ヘッダーの後に続く情報のタイプが決まります。基本 IPv6 ヘッダーの後に続く情報のタイプは、図3-9 に示すように、TCP パケット、UDP パケット、または拡張ヘッダーなどのトランスポート レイヤ パケットです。 |
ホップ リミット |
IPv4 パケット ヘッダーの生存時間フィールドに該当します。ホップ リミット フィールドは、IPv6 パケットが無効になる前に通過できるルータの最大数を指定します。各ルータを通過するたびに、この値が 1 ずつ減少します。IPv6 ヘッダーにはチェックサムがないため、ルータは、値が減少するたびにチェックサムを再計算する必要がなく、処理リソースの節約となります。 |
送信元アドレス |
IPv4 パケット ヘッダーの送信元アドレス フィールドに該当しますが、IPv4 の 32 ビット送信元アドレスの代わりに、IPv6 では 128 ビット送信元アドレスが含まれます。 |
宛先アドレス |
IPv4 パケット ヘッダーの宛先アドレス フィールドに該当しますが、IPv4 の 32 ビット宛先アドレスの代わりに、IPv6 では 128 ビット宛先アドレスが含まれます。 |
図3-9 IPv6 パケット ヘッダーのフォーマット
任意に使用できる拡張ヘッダーおよびパケットのデータ部分は、基本 IPv6 パケット ヘッダーの 8 つのフィールドの後に続きます。拡張ヘッダーがある場合は、各拡張ヘッダーが 64 ビットに揃えられます。IPv6 パケットの拡張ヘッダーの数は決められていません。各拡張ヘッダーは、前のヘッダーの次ヘッダー フィールドに示されます。通常は、最後の拡張ヘッダーに、TCP または UDP などのトランスポート レイヤ プロトコルの次ヘッダー フィールドがあります。図3-10 は、IPv6 拡張ヘッダのフォーマットを示します。
図3-10 IPv6 拡張ヘッダーのフォーマット
表3-3 は、拡張ヘッダーのタイプとその次ヘッダー フィールドの値の一覧です。
表3-3 IPv6 拡張ヘッダーのタイプ
|
|
|
ホップバイホップ オプション ヘッダー |
0 |
パケットのパス上のすべてのホップで処理されるヘッダー。存在する場合、ホップバイホップ オプション ヘッダーは、つねに基本 IPv6 パケット ヘッダーの直後に続きます。 |
宛先オプション ヘッダー |
6 |
任意のホップバイホップ オプション ヘッダーの後に続くことのあるヘッダー。このヘッダーは、最終の宛先、およびルーティング ヘッダーで指定された各通過アドレスで処理されます。また、宛先オプション ヘッダーは、任意の Encapsulating Security Payload(ESP)ヘッダーの後に続く場合もあります。この場合の宛先オプション ヘッダーは、最終の宛先でのみ処理されます。 |
ルーティング ヘッダー |
43 |
送信元のルーティングに使用されるヘッダー |
フラグメント ヘッダー |
44 |
送信元が、送信元と宛先の間のパスの Maximum Transmission Unit(MTU; 最大伝送ユニット)より大きいパケットをフラグメント化するときに使用されるヘッダー。フラグメント ヘッダーは、フラグメント化された各パケットで使用されます。 |
上位層ヘッダー |
6(TCP の場合) 17(UDP の場合) |
データ転送のためにパケット内で使用されるヘッダー。おもな転送プロトコルは TCP と UDP の 2 つです。 |
IPv6 の DNS
IPv6 は、DNS 名前/アドレスおよびアドレス/名前のルックアップ処理でサポートされる DNS レコード タイプをサポートしています。DNS レコード タイプは IPv6 アドレスをサポートしています。
(注) IPv6 は、IPv6 アドレスから DNS 名への逆マッピングもサポートしています。
表3-4 IPv6 DNS レコード タイプ
|
|
|
AAAA |
ホスト名を IPv6 アドレスにマッピングします(IPv4 の A レコードに該当)。 |
www.abc.test AAAA 3FFE:YYYY:C18:1::2 |
PTR |
IPv6 アドレスをホスト名にマッピングします(IPv4 の PTR レコードに該当)。 |
2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.0.0.0.8.1.c.0.y.y.y.y.e.f.f.3.ip6.int PTR www.abc.test |
IPv6 のパス MTU 探索
IPv4 の場合と同様に、ホストがダイナミックに、データ パス上のすべてのリンクの MTU サイズの差を検出し、それに合わせて調整できるよう、IPv6 でパス MTU 探索を使用できます。ただし、IPv6 では、データ パス上のリンクのパス MTU が小さすぎてパケットを処理できない場合は、パケットの送信元によりフラグメンテーションが処理されます。IPv6 ホストにパケットのフラグメンテーションを処理させると、IPv6 ルータの処理リソースが節約され、IPv6 ネットワークの効率が向上します。
(注) IPv6 では、最小リンク MTU は 1280 オクテットです。IPv6 リンクには、1500 オクテットの MTU 値の使用をお勧めします。
Cisco Discovery Protocol(CDP)IPv6 アドレスのサポート
隣接情報機能向け CDP IPv6 アドレス サポートを使用して、2 台のシスコ デバイス間で IPv6 アドレス指定情報を転送できます。IPv6 アドレス向け CDP サポートは、ネットワーク管理製品およびトラブルシューティング ツールに IPv6 情報を提供します。
IPv6 の ICMP
IPv6 で ICMP を使用して、ネットワークの状態に関する情報を提供できます。IPv6 で使用できるバージョンである ICMPv6 は、パケットが正しく処理されない場合にエラーを報告し、ネットワークの状態に関する情報メッセージを送信します。たとえば、パケットが大きすぎて別のネットワークに送信できないために、ルータがパケットを転送できない場合は、ルータにより、送信元のホストに ICMPv6 メッセージが送信されます。さらに、IPv6 の ICMP パケットは IPv6 近隣探索およびパス MTU 探索に使用されます。パス MTU 探索処理により、パケットが確実に、特定のルートでサポートされる最大のサイズで送信されます。
基本 IPv6 パケット ヘッダーの次ヘッダー フィールドの 58 という値は、IPv6 ICMP パケットであることを示します。ICMP パケットは、すべての拡張ヘッダーの後に続く、IPv6 パケット中の最後の情報部分です。IPv6 ICMP パケットでは、ICMPv6 タイプ フィールドと ICMPv6 コード フィールドに、ICMP メッセージ タイプなどの IPv6 ICMP パケット情報が示されます。チェックサム フィールドの値は送信側で計算され、受信側により、ICMP パケット内および IPv6 疑似ヘッダー内のフィールドでチェックされます。
(注) IPv6 ヘッダーには、チェックサムはありません。ただし、チェックサムは、パケットの誤配信を判定するために、トランスポート レイヤで重要です。計算に IP アドレスが含まれるすべてのチェックサム計算は、新しい 128 ビット アドレスを処理できるよう、IPv6 用に変更する必要があります。チェックサムは、疑似ヘッダーを使用して生成されます。
ICMPv6 データ フィールドには、IP パケット処理に関連するエラー情報または診断情報が含まれます。図3-11 は、IPv6 ICMP パケット ヘッダのフォーマットを示します。
図3-11 IPv6 ICMP パケット ヘッダーのフォーマット
IPv6 近隣探索
IPv6 NDP を使用して、隣接ルータが到達可能かどうかを判定できます。IPv6 ノードは、近隣探索を使用して、同じネットワーク上のノードのアドレス(ローカル リンク)を決定します。そして、ノード自身からのパケットを転送できる隣接ルータを見つけ、その隣接ルータが到達可能かどうかを確認し、リンクレイヤ アドレスの変更を検出します。NDP は ICMP メッセージを使用して、パケットが到達不可能な隣接ルータに送信されたかどうかを検出します。
IPv6 ネイバー送信要求メッセージ
ノードは、同じローカル リンク上の別のノードのリンクレイヤ アドレスを決定するときに、ICMP パケット ヘッダーのタイプ フィールドの値が 135 であるネイバー送信要求メッセージをローカル リンクで送信します(図3-12 を参照)。送信元アドレスは、ネイバー送信要求メッセージを送信するノードの IPv6 アドレスです。宛先アドレスは、宛先ノードの IPv6 アドレスに対応する送信要求ノード マルチキャスト アドレスです。ネイバー送信要求メッセージには、送信元ノードのリンクレイヤ アドレスも含まれます。
図3-12 IPv6 近隣探索 ― ネイバー送信要求メッセージ
ネイバー送信要求メッセージを受信したあとに、宛先ノードは返信として、ICMP パケット ヘッダーのタイプ フィールドの値が 136 のネイバー アドバタイズメント メッセージをローカル リンクで送信します。送信元アドレスは、ノードの IPv6 アドレス(ネイバー アドバタイズメント メッセージを送信するノード インターフェイスの IPv6 アドレス)です。宛先アドレスは、ネイバー送信要求メッセージを送信したノードの IPv6 アドレスです。データ部分には、ネイバー アドバタイズメント メッセージを送信するノードのリンクレイヤ アドレスが含まれます。
送信元ノードがネイバー アドバタイズメント メッセージを受信すると、送信元ノードと宛先ノードは通信できるようになります。
ネイバー送信要求メッセージにより、ノードがネイバーのリンクレイヤ アドレスを認識したあとに、ネイバーの到達可能性が確認できます。ノードは、ネイバーの到達可能性を確認するときに、ネイバー送信要求メッセージの宛先アドレスを、ネイバーのユニキャスト アドレスとして使用します。
ネイバー アドバタイズメント メッセージは、ローカル リンク上のノードのリンクレイヤ アドレスが変更されたときにも送信されます。変更があったときのネイバー アドバタイズメント メッセージの宛先アドレスは、全ノード マルチキャスト アドレスです。
ネイバー到達不能検出により、ネイバーの障害またはネイバーへの転送パスの障害が特定されます。また、この検出は、ホストと近隣ノード(ホストまたはルータ)の間のすべてのパスで使用されます。ネイバー到達不能検出は、ユニキャスト パケットのみが送信されるネイバーに対してのみ実行され、マルチキャスト パケットが送信されるネイバーに対しては実行されません。
ネイバーは、そのノードから受諾の確認応答(以前にそのノードに送信されたパケットが受信され、処理されたことを示す)が返されると、到達可能とみなされます。受諾の確認応答(TCP などの上位層プロトコルからの)は、接続が順調に進んでいる(宛先に到達しつつある)ことを示します。パケットがピアに到達している場合は、送信元ノードのネクストホップ ネイバーにも到達しています。順調に進んでいることで、ネクストホップ ネイバーが到達可能であることも確認されます。
ローカル リンクにない宛先の場合は、順調に進んでいることで、ファーストホップ ルータが到達可能であることがわかります。上位層プロトコルからの確認応答がない場合、ノードは、ユニキャスト ネイバー送信要求メッセージを使用してネイバーを探し、宛先へのパスがまだ機能しているかどうかを確認します。ネイバーから返信された送信要求ネイバー アドバタイズメント メッセージは、宛先へのパスがまだ機能しているという確認応答です(1 という値が設定された送信要求フラグを持つネイバー アドバタイズメント メッセージは、ネイバー送信要求メッセージへの返信としてのみ送信されます)。非送信要求メッセージが返信された場合は、送信元ノードから宛先ノードまでの片道のパスのみが確認されています。送信要求ネイバー アドバタイズメント メッセージは、往復のパスがいずれも機能していることを示します。
(注) 0 という値が設定された送信要求フラグを持つネイバー アドバタイズメント メッセージは、宛先へのパスがまだ機能していることを示す確認応答とはみなされません。
ネイバー送信要求メッセージは、ユニキャスト IPv6 アドレスをインターフェイスに割り当てる前にそのアドレスが一意であることを確認するために、ステートレス自動設定処理でも使用されます。新規のリンクローカル IPv6 アドレスに対しては、インターフェイスに割り当てられる前に、最初に重複アドレス検出が実行されます(新規アドレスは、重複アドレス検出の実行中は一時的なアドレスのままです)。ノードは、未指定の送信元アドレスと一時的なリンクローカル アドレスがメッセージ本文に含まれるネイバー送信要求メッセージを送信します。そのアドレスがすでに他のノードによって使用されている場合、ノードは、一時的リンクローカル アドレスを含むネイバー アドバタイズメント メッセージを返信します。他のノードが同時に、同じアドレスが一意であることを確認している場合は、そのノードも、ネイバー送信要求メッセージを返信します。ネイバー送信要求メッセージの返信としてのネイバー アドバタイズメント メッセージも、同じ一時的アドレスを確認中の他のノードからのネイバー送信要求メッセージも受信しない場合、最初のネイバー送信要求メッセージを送信したノードは、一時的なリンクローカル アドレスが一意であると判断し、そのアドレスをインターフェイスに割り当てます。
IPv6 ルータ アドバタイズメント メッセージ
ルータ アドバタイズメント(RA)メッセージは、ICMP パケット ヘッダーのタイプ フィールドの値が 134 であり、IPv6 ルータの設定済みの各インターフェイスへと定期的に送信されます。ステートレス自動設定が正しく機能するには、RA メッセージでアドバタイズされたプレフィクス長がつねに 64 ビットである必要があります。
RA メッセージは、全ノード マルチキャスト アドレスに送信されます(図3-13 を参照)。
図3-13 IPv6 近隣探索 ― RA メッセージ
RA メッセージには通常、次の情報が含まれます。
• ローカル リンク上のノードが、その IPv6 アドレスの自動設定に使用できる 1 つ以上のオンリンク IPv6 プレフィクス
• アドバタイズメントに含まれる各プレフィクスのライフタイム情報
• 完成可能な自動設定のタイプ(ステートレスまたはステートフル)を示すフラグ一式
• デフォルト ルータ情報(アドバタイズメントを送信しているルータをデフォルトとして使用する必要があるかどうか、および、その場合は、ルータがデフォルト ルータとして使用される秒単位の時間)
• ホストが発信するパケットで使用する必要のあるホップ リミットと MTU などの、ホストの詳細情報
RA は、ルータ送信要求メッセージの返信としても送信されます。ルータ送信要求メッセージは、ICMP パケット ヘッダーのタイプ フィールドの値が 133 であり、システム起動時にホストにより送信されます。これにより、ホストは、次回の定期 RA メッセージを待つことなく、ただちに自動設定できます。送信元アドレスは通常、未指定 IPv6 アドレス(0:0:0:0:0:0:0:0)です。ホストでユニキャスト アドレスが設定されている場合は、ルータ送信要求メッセージを送信するインターフェイスのユニキャスト アドレスが、メッセージで送信元アドレスとして使用されます。宛先アドレスは、スコープがリンクである全ルータ マルチキャスト アドレスです。RA がルータ送信要求の返信として送信されるときの RA メッセージの宛先アドレスは、ルータ送信要求メッセージの送信元のユニキャスト アドレスです。
次の RA メッセージ パラメータを設定できます。
• RA メッセージが定期的に送信される時間の間隔
• デフォルト ルータ(リンクのすべてのノードが使用する)としてのルータの実用性を示すルータのライフタイム値
• リンクで使用されているネットワーク プレフィクス
• (リンクで)ネイバー送信要求メッセージが再送される時間の間隔
• ネイバーが到達可能である(リンク上のすべてのノードが使用できる)とノードが判断するまでの時間
設定されたパラメータは、各インターフェイス固有のパラメータです。RA メッセージ(デフォルト値を含む)の送信は、自動的にイーサネット インターフェイス上でイネーブルになります。他のインターフェイス タイプの場合は、 no ipv6 nd suppress-ra コマンドを入力して RA メッセージを送信する必要があります。個々のインターフェイスでは、 ipv6 nd suppress-ra コマンドを入力して、RA メッセージ機能をディセーブルにできます。
IPv6 ネイバー リダイレクト メッセージ
ルータは、ネイバー リダイレクト メッセージを送信して、パス上の宛先へのより適切なファーストホップ ノードをホストに通知します(図3-14 を参照)。IPv6 ネイバー リダイレクト メッセージは、ICMP パケット ヘッダーのタイプ フィールドの値が 137 となっています。
図3-14 IPv6 近隣探索 ― ネイバー リダイレクト メッセージ
(注) リダイレクト メッセージの目的のアドレス(最終の宛先)により、確実に隣接ルータのリンクローカル アドレスが特定されるよう、ルータは、その各隣接ルータのリンクローカル アドレスを決定可能である必要があります。スタティック ルーティングの場合は、ルータのリンクローカル アドレスを使用して、ネクストホップ ルータのアドレスを指定する必要があります。ダイナミック ルーティングの場合は、隣接ルータのリンクローカル アドレスを交換するように、すべての IPv6 ルーティング プロトコルを設定する必要があります。
パケットの転送後に、次の条件を満たす場合は、ルータがパケットの送信元にリダイレクト メッセージを送信します。
• パケットの宛先アドレスがマルチキャスト アドレスではない。
• パケットがルータ宛てではなかった。
• パケットが、パケットを受信したインターフェイスから、まもなく送信される。
• ルータが、パケットにより適したファーストホップ ノードはパケットの送信元と同じリンク上にあると決定した。
• パケットの送信元アドレスが、同じリンク上のネイバーのグローバル IPv6 アドレス、またはリンクローカル アドレスである。
仮想化のサポート
IPv6 は、Virtual Routing and Forwarding Instance(VRF; 仮想ルーティング/転送インスタンス)をサポートしています。VRF は Virtual Device Contexts(VDC; 仮想化デバイス コンテキスト)内にあります。デフォルトでは、特に別の VDC および VRF を設定しない限り、Cisco NX-OS によりデフォルト VDC およびデフォルト VRF が使用されます。詳細については、『 Cisco NX-OS Virtual Device Context Configuration Guide 』の 第 13 章「レイヤ 3 仮想化の設定」 を参照してください。