Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

cRPD でのレイヤー 3 オーバーレイのサポート

cRPDでのレイヤー3オーバーレイVRFサポートについて

Junos OS リリース 19.4R1 以降、仮想ルーティングおよび転送(VRF)インスタンスは、MPLS およびマルチプロトコル BGP のサポートとともに cRPD でサポートされ、オーバーレイ機能を提供します。

ルーティングインスタンスは、ルーティングテーブル、インターフェイス、ルーティングプロトコルパラメーターの集合です。レイヤー 3 VPN を実装するには、VPN ごとに 1 つのルーティング インスタンスを設定します。VRF は Linux カーネル内のネットワーク デバイスであり、デバイスは に table-id関連付けられています。ルーティング インスタンスは、PE ルーターでのみ設定します。Linux ネットワークで VRF を作成できます。VRF デバイスの実装は、レイヤー 3 以上にのみ影響します。各 VPN ルーティング インスタンスは、以下のコンポーネントで構成されています。

  • VRFテーブル—各PEルーターで、VPNごとに1つのVRFテーブルを設定します。

  • ポリシールール—これらのコントロールは、VRFテーブルへのルートのインポートと、VRFテーブルからのルートのエクスポートを制御します。

  • CE ルーターからのルートを VRF テーブルにインストールする 1 つ以上のルーティング プロトコル - BGP、OSPF、RIP ルーティング プロトコルを使用でき、静的ルートを使用できます。

VRF デバイスが作成されると、ルーティング テーブルに関連付けられます。奴隷されたデバイスから VRF に送信されるパケットは、VRF デバイスに関連付けられたルーティング テーブルで検索されます。同様に、エグレス ルーティング ルールは、実際のインターフェイスで送信する前に VRF ドライバーにパケットを送信するために使用されます。

VRF は、VRF の独立した転送テーブルに基づいてルートを管理し、トラフィックを転送するために使用されます。RPD は、タイプのルーティング インスタンスごとに複数のルーティング テーブルを作成します vrf。テーブルは、各アドレスファミリーに対して1つです。VPNに参加している各PEルーター上で、各VPNのルーティングインスタンスを設定する必要があります。階層を使用してルーティングインスタンスを [edit routing-instances] 設定できます。タイプ vrf のルーティングインスタンスは、cRPDでのみサポートされています。

階層を使用して、VRF の下に、BFD、BGP、IS-IS、OSPF バージョン 2(OSPF)、OSPF バージョン 3(OSPFv3)、ICMP ルーター検出の複数のインスタンスを [edit routing-instances routing-instance-name protocols] 作成できます。階層を使用して、プロトコル非依存型ルーティングを edit routing-instances instance-name routing-options 設定できます。

レイヤー 3 オーバーレイは、cRPD で以下のトンネリング プロトコルをサポートしています。

  • inet.3 の静的ルート

  • BGP ラベル付きユニキャスト

  • GRE トンネリング

  • MPLS 静的 LSP

  • Programmable-rpd API を使用してプログラムされたルート

  • MPLS 対応インターフェイスでのダイレクト ebgp ピアリング

VRF の下のインターフェイスの移動

デバイスの奴隷は、ルーティングインスタンスで設定されたインターフェイスであるRPDによって行われ、カーネルに送信されたnetlinkメッセージを使用してRPDによってvrf-デバイスに移行(奴隷)されます。

タイプ vrfのルーティング インスタンスの下でインターフェイスが設定されている場合、そのようなリンクがカーネルから学習され、リンクが正しいテーブルに関連付けられていない場合、RPD はネットリンク通知を送信してリンクを奴隷にします。リンクが存在しない場合、またはRPDがリンクについて学習していない場合、リンクが作成されたり、RPDがそのリンクを学習するたびに、設定に基づいてリンクが正しく利用されます。

例:cRPD インスタンスでのレイヤー 3 VPN(VRF)の設定

この例では、VRFテーブルからのルートのインポートとVRFテーブルからのルートのエクスポートを制御する特定のポリシーでPEルーターを設定し、BGPラベル付きユニキャストを使用して学習したネクストホップを使用してPEルーターを設定することで、PEルーターとルートリフレクタのVPNv4ルート解決を示しています。この例では、トラフィックは CE1 から CE2 に流れます。

要件

この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。

  • Ubuntu ソフトウェア バージョン 18.04

  • Linux カーネル バージョン 4.5 以降

  • cRPD ソフトウェア リリース バージョン 19.4R1 以降

レイヤー 3 VPN(VRF)を設定する前に、基本的なコンポーネントをインストールする必要があります。

  • cRPDインスタンスが作成されるホストOS上のMPLSモジュール。詳細については、 ホストOSでの設定の構成を参照してください。

  • PE1(プロバイダ エッジ ルーター)、P(プロバイダ ルーター)、PE2(プロバイダ エッジ ルーター)インストールについては、 DockerへのcRPDのインストールを参照してください。

概要

VPNv4ルート解決を設定するには、VPNに参加している各PEルーター上の各VPNに対してVRFタイプのルーティングインスタンスを設定し、それに静的ルートを追加する必要があります。ステートメントは static 、ルーティングテーブルにインストールされた静的ルートを vrfblue.inet.0 設定します。Linux カーネルで作成されたすべての VRF デバイスのループバック インターフェイスまたはデバイスはありません。しかし、ループバックホストアドレスは、RPDによって学習できるVRFデバイスに直接追加されます。

トポロジ

図 1 は、レイヤー 3 VPN(VRF)トポロジーを示しています。

図 1:レイヤー 3 VPN(VRF)トポロジー Layer 3 VPN (VRF) Topology

構成

BGP LU を使用した PE1 ルーターの設定

手順

次の例では、設定階層内のさまざまなレベルに移動する必要があります。

  1. テーブル mpls.0 を作成します。

  2. ルートを受け入れるポリシーを設定します。

  3. PE1とその他のルーティングインスタンスパラメータでVRFルーティングインスタンスを設定します。

  4. ルーターIDを設定します。

  5. BGP セッションを設定します。

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

結果

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

デバイスの設定が完了したら、設定モードからコミットを入力します。

BGP LU を使用した P ルーターの設定

手順

次の例では、設定階層内のさまざまなレベルに移動する必要があります。

  1. テーブル mpls.0 を作成します。

  2. ルートを受け入れるポリシーを設定します。

  3. BGP セッションを設定します。

  4. ルーターIDを設定します。

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

結果

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

BGP LU を使用した PE2 ルーターの設定

手順

次の例では、設定階層内のさまざまなレベルに移動する必要があります。

  1. テーブル mpls.0 を作成します。

  2. ルートを受け入れるポリシーを設定します。

  3. PE2とその他のルーティングインスタンスパラメータでVRFルーティングインスタンスを設定します。

  4. BGP セッションを設定します。

  5. ルーターIDを設定します。

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

結果

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

検証

PE1でのVPNv4解決の検証

目的

PE1でVPNv4ルートを検証するには:

アクション

動作モードから、 コマンドを show route table vrfblue.inet.0 10.5.5.5 入力します。

動作モードから、 コマンドを show route table mpls.0 入力します。

bashモードから コマンドを ip route list table 5 5.5.5.5 入力します。

bashモードから コマンドを ip -f mpls route 入力します。

意味

PE1にはCE2へのルート vrfblue.inet.0 があり、ネクストホップ10.4.4.4.4でPE2から学習されており、PルーターからのBGP LUを使用して解決されています。

P での BGP LU の検証

目的

P で VPNv4 ルートを検証するには、次の手順に沿います。

アクション

bashモードから コマンドを ip -f mpls route show 入力します。

動作モードから、 コマンドを show route table mpls.0 入力します。

意味

P から PE1、P から PE2 への MPLS および VPN ルートを表示できます。

PE2でのVPNv4解決の検証

目的

PE2でVPNv4ルートを検証するには:

アクション

動作モードから、 コマンドを show route table vrfblue.inet.0 10.1.1.1 入力します。

動作モードから、 コマンドを show route table mpls.0 入力します。

bashモードから コマンドを ip route list table 5 10.1.1.1 入力します。

bashモードから コマンドを ip -f mpls route 入力します。

意味

PE2 ルーターでは、PE1 は BGP LU 約 10.1.1.1 を VPNv4 プレフィックスとして、ネクストホップを 10.2.2.2 として使用する VRF テーブル vrfblue.inet.0 のルートを表示します。