Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

IPv6-over-IPv4 トンネル

MPLS の IPv6 トンネリングの設定

MPLS の IPv6 トンネリングを設定して、MPLS ベースの IPv4 ネットワーク上で IPv6 トラフィックをトンネリングできます。この構成により、IPv4ベースのネットワークコアを介して多数の小規模なIPv6ネットワークを相互接続できるため、コアネットワークのスイッチをアップグレードすることなくIPv6サービスを提供することができます。BGPはIPv6ネットワーク間でルートを交換するように設定されており、データはIPv4ベースのMPLSによってこれらのIPv6ネットワーク間でトンネリングされます。

EX シリーズスイッチで MPLS の IPv6 トンネリングを設定するには、次の手順に従います。

  1. すべてのコア インターフェースの IPv4 および IPv6 IP アドレスを設定します。
  2. ネットワーク情報センター(NIC)によって割り当てられた番号を自律システム(AS)番号として設定します
  3. LSPのエグレスルーターにラベル0をアドバタイズします。
  4. inet3 ルーティング テーブルに格納されているすべてのルートを IPv4 にマッピングされた IPv6 アドレスに変換し、それを inet6.3 ルーティング テーブルにコピーすることで、MPLS ネットワーク上で IPv6 ルートを解決できるように LSP を設定します。
  5. ローカルAS番号を設定します。
  6. デフォルトのインポートおよびエクスポート・ポリシーを設定します。
  7. 指定したBGPシステムのみをピアとして認識するBGPグループを設定します。グループ名、グループタイプ、BGPセッションのローカルエンド、およびネイバー(ピア)を定義します。複数の BGP ピアを設定するには、複数のネイバー ステートメントを含めます。
  8. デフォルトのインポートおよびエクスポートポリシーを受け入れるようにルーティングオプションを設定します。

例:MPLS IPv4 ネットワーク上での IPv6 トラフィックのトンネリング

この例では、MPLS ベースの IPv4 ネットワーク上で IPv6 をトンネリングするように Junos OS を設定する方法を示します。外部BGP(EBGP)は、カスタマーエッジ(CE)デバイスとプロバイダエッジ(PE)デバイス間で使用されます。リモートCEデバイスには、ループ検出用の異なるAS番号があります。

要件

この例を構成する前に、デバイスの初期化以上の特別な構成は必要ありません。

概要

ジュニパーネットワークスの MPLS 上の IPv6 の実装の詳細については、次のインターネット ドラフトを参照してください。

  • インターネットドラフトdraft-ietf-l3vpn-bgp-ipv6-07.txt、 IPv6 VPN用BGP-MPLS IP VPN拡張 (2006年1月終了)

  • インターネットドラフトdraft-ooms-v6ops-bgp-tunnel-06.txt、 IPv6プロバイダーエッジルーターを使用したIPv4 MPLS上のIPv6 Islandの接続 (2006年7月終了)

これらのインターネットドラフトは、 IETFのウェブサイト(http://www.ietf.org/)で入手できます。

この例では、IPv4ベースのネットワークコア上で2つのIPv6ネットワークを相互接続し、コアネットワークのルーターをアップグレードすることなくIPv6サービスを提供する方法を紹介します。マルチプロトコルボーダーゲートウェイプロトコル(MP-BGP)は、IPv6ネットワーク間のルートを交換するように設定されており、データはIPv4ベースのMPLSによってこれらのIPv6ネットワーク間でトンネリングされます。

図 1では、ルーターPE1とPE2はデュアルスタックBGPルーターであり、IPv4とIPv6の両方のスタックを備えています。PE ルーターは、カスタマー エッジ(CE)ルーターを介して IPv4 コア ネットワークに IPv6 ネットワークをリンクします。CE ルーターと PE ルーターは、IPv6 トラフィックを伝送できるリンク層を介して接続します。PE ルーターは、CE ルーターに接続するインターフェイスでは IPv6 を使用し、コアに接続するインターフェイスでは IPv4 と MPLS を使用します。接続されている IPv6 ネットワークの 1 つが、グローバル IPv6 インターネットである可能性があることに注意してください。

図 1: MPLS IPv4 トンネルでリンクされた IPv6 ネットワークMPLS IPv4 トンネルでリンクされた IPv6 ネットワーク

2 つの PE ルーターは、IPv4 アドレスを使用する MP-BGP セッションを介してリンクされています。また、このセッションを使用して、IPv6 (値 2)、アドレスファミリーインジケーター (AFI) および後続の AFI(SAFI)(値 4) を持つ IPv6 ルートを交換します。各 PE ルーターは、このセッションでアドバタイズされた IPv6 ルートのネクストホップを独自の IPv4 アドレスに設定します。MP-BGP では、BGP ネクストホップがネットワーク層到達可能性情報(NLRI)と同じアドレスファミリーに対応する必要があるため、この IPv4 アドレスを IPv6 フォーマット内に埋め込む必要があります。

PE ルーターは、ルーティング プロトコル RIPng(Routing Information Protocol Next-Generation)や MP-BGP、または静的構成を使用して、接続されている CE ルーターから IPv6 ルートを学習できます。BGP が PE ルーター間プロトコルとして使用されている場合、PE ルーターと CE ルーター間の MP-BGP セッションは、IPv4 または IPv6 TCP(伝送制御プロトコル)セッションを介して行われる可能性があることに注意してください。また、そのセッションで交換されるBGPルートは、SAFIユニキャストを持つことになります。IBGPとEBGP間、およびBGPと他のプロトコル間でルートを渡すには、エクスポートポリシーを設定する必要があります。

PE ルーターには、互いの IPv4 アドレスにルーティングされた MPLS LSP があります。IPv4 は、LDP または RSVP のいずれかによって LSP にシグナリングを提供します。これらのLSPは、MP-BGPから学習したIPv6ルートのネクストホップアドレスを解決するために使用されます。ネクストホップはIPv4にマッピングされたIPv6アドレスを使用し、LSPはIPv4アドレスを使用します。

PEルーターは、RFC 3032、 MPLSラベルスタックエンコーディングで定義されているIPv6の明示的nullラベルであるラベル値2を使用して、常にIPv6ルートを相互にアドバタイズします。結果として、リモート PE ルーターから学習した IPv6 ルートの各転送ネクストホップは、通常 2 つのラベルをプッシュします。内側ラベルは2で(アドバタイズするPEルーターがジュニパーネットワークスのルーティングプラットフォームでない場合、このラベルは異なる場合があります)、外側ラベルはLSPラベルです。LSPがシングルホップLSPの場合、ラベル2のみがプッシュされます。

また、PE ルーターが SAFI ユニキャストを使用してプレーン IPv6 ルートを交換することも可能です。しかし、ラベル付きIPv6ルートを交換することには、1つの大きなメリットがあります。MPLS LSP の最後から 2 番目のホップ ルーターは、外側ラベルをポップし、内側ラベルを持つパケットを MPLS パケットとして送信できます。内側ラベルがない場合、最後から 2 番目のホップ ルーターは、レイヤー 2 ヘッダーのプロトコル フィールドを正しく設定するために、パケットが IPv4 パケットか IPv6 パケットかを検出する必要があります。

図 1 の PE1 ルータが CE1 ルータから IPv6 パケットを受信すると、IPv6 転送テーブルでルックアップを実行します。宛先がCE2ルーターから学習したプレフィックスと一致する場合、ラベルをプッシュする必要はなく、パケットは単にCE2ルーターに送信されます。宛先がPE2ルーターから学習したプレフィックスと一致する場合、PE1ルーターは2つのラベルをパケットにプッシュし、プロバイダールーターに送信します。内側ラベルは 2 で、外側ラベルは PE2 ルーターの LSP ラベルです。

サービスプロバイダのネットワーク内の各プロバイダルーターは、MPLSパケットと同様にパケットを処理し、プロバイダルーターからプロバイダルーターに渡される際にラベルを入れ替えます。LSP の最後から 2 番目のホップ プロバイダー ルーターは、外側ラベルをポップし、パケットを PE2 ルーターに送信します。PE2 ルーターがパケットを受信すると、パケットの IPv6 explicit null ラベル(ラベル 2)を認識します。このラベルをポップしてIPv6パケットとして扱い、IPv6転送テーブルでルックアップを実行して、パケットをCE3ルーターに転送します。

この例には、次の設定が含まれています。

  • すべてのCEルーターに面するインターフェイスで family inet6 ステートメントを設定することに加えて、MPLSを実行しているすべてのコアに面するインターフェイスでもこのステートメントを設定する必要があります。ルーターはこれらのインターフェイスで受信したIPv6パケットを処理できる必要があるため、両方の設定が必要です。これらのインターフェイスに通常のIPv6トラフィックは到着しないはずですが、ラベル2でタグ付けされたMPLSパケットを受信します。ラベル 2 MPLS パケットは IPv4 で送信されますが、これらのパケットはネイティブ IPv6 パケットとして扱われます。

  • IPv6トンネリングを有効にするには、PEルーターの設定に ipv6-tunneling ステートメントを含めます。このステートメントは、inet.3ルーティングテーブルに格納されているすべてのルートをIPv4にマッピングされたIPv6アドレスに変換し、それをinet6.3ルーティングテーブルにコピーすることにより、MPLSネットワーク上でIPv6ルートを解決することを可能にします。このルーティングテーブルを使用して、inet6とinet6-vpnの両方のルートのネクストホップを解決できます。

    注:

    BGP は、プライマリ ルーティング テーブル グループからセカンダリ ルーティング テーブル グループにルートをコピーする場合でも、インポート ポリシーを自動的に実行します。IPv4 ラベル付きルートが BGP セッションから到着した場合(例えば、PE ルーターの [edit protocols bgp family inet] 階層レベルで labeled-unicast ステートメントを設定した場合)、inet6.3 ルーティング テーブルへのコピー操作中にネイバーのインポート ポリシーが実行されるため、BGP ネイバーのインポート ポリシーは IPv6 ルートも受け入れます。

  • IPv6 トラフィックを伝送するように MP-BGP を設定すると、宛先 PE ルーターで IPv4 MPLS ラベルが削除されます。ラベルのない残りの IPv6 パケットは、IPv6 ネットワークに転送できます。これを有効にするには、BGP の設定に explicit-null ステートメントを含めます。

設定

CLIクイック構成

この例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、[edit]階層レベルのCLIにコマンドをコピー&ペーストしてください。

デバイスPE1

デバイスPE2

デバイスP

デバイスCE1

デバイスCE3

デバイスPE1の設定

ステップバイステップでの手順

次の例では、設定階層のいくつかのレベルに移動する必要があります。CLIのナビゲーションについては、Junos OS CLIユーザーガイド設定モードでCLIエディターを使用する を参照してください。

デバイスPE1を設定するには:

  1. インターフェイスを設定します。

  2. インターフェイスに MPLS を設定します。

  3. BGP を設定します。

  4. OSPFを設定します

  5. シグナリング プロトコルを設定します。

  6. ルーティングポリシーを設定します。

  7. ルーターIDと自律システム(AS)番号を設定する。

結果

設定モードから、show interfacesshow policy-optionsshow protocols、およびshow routing-options のコマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。 CLIクイック構成に示すように、トポロジー内の他のデバイスを設定します。

検証

設定が正常に機能していることを確認します。

CE 装置が接続可能であることの確認

目的

トンネルが動作していることを確認します。

アクション

動作モードからpingコマンドを入力します。

意味

IPv6 CE デバイスは、コア IPv4 ネットワークを介して通信できます。