Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGPセッションのための自律システム

BGPローカルAS属性を理解する

インターネットサービスプロバイダ(ISP)が、異なる自律システム(AS)に属するネットワークを取得した場合、取得したネットワークのBGPピアを取得しているISPのASに移動するためのシームレスな方法はありません。新しいAS番号でBGPピアを設定するプロセスは、時間と面倒な作業がかかる場合があります。お客様がピアの配置や設定をすぐに変更したくない、または変更できない場合があります。このような移行期間中は、BGPの更新で以前のAS番号を使用するように、新しいASでBGP対応デバイスを設定すると便利です。この以前の AS 番号は ローカル AS と呼ばれます。

ローカルAS番号を使用することで、取得されたネットワーク内のルーティングデバイスが以前のASに属するように見えるようになります。

たとえば、AS が 65200 の ISP A は、AS が 65250 の ISP B を取得します。ISP Bには、設定を変更したくない顧客ISP Cがいます。ISP BがISP Aの一部になった後、ISP CとのEBGPピアセッションで使用するためにローカルAS番号65250が設定されます。その結果、ISP Cの直接外部ピアにルートをエクスポートするために使用されるASパスでは、ローカルAS番号の65250が、グローバルAS番号の65200の代わりに、先頭に追加されるか、使用されます。

内部BGP(IBGP)ピアからルートを受信した場合、ASパスにはグローバルAS番号の前の先頭にローカルAS番号が含まれます。

ルートが静的ルートやBGPにインポートされた内部ゲートウェイプロトコル(IGP)ルートなどの外部ルートである場合は、グローバルAS番号の代わりにローカルAS番号が使用されます。ルートが外部で、グローバルAS番号をASパスに含めるようにする場合は、 as-path-expand または as-path-prependを使用するルーティングポリシーを適用できます。 as-path-expand ポリシーアクションを使用して、グローバルAS番号をローカルAS番号の背後に配置します。 as-path-prepend ポリシーアクションを使用して、グローバルAS番号をローカルAS番号の前に配置します。

次に例を示します。

プロバイダエッジ(PE)デバイスが外部BGP(EBGP)を使用してカスタマーエッジ(CE)デバイスとピアリングするレイヤー3 VPNシナリオでは、 local-as ステートメントの動作は非VPNシナリオとは異なります。VPNのシナリオでは、マスターインスタンスで定義されているグローバルAS番号は、デフォルトでASパスの先頭に付加されます。この動作を上書きするには、次に示すように、PE デバイスのルーティングインスタンスBGP設定で no-prepend-global-as を設定します。

ローカルAS属性のJunosオペレーティングシステム(Junos OS)実装では、以下のオプションがサポートされています。

  • Local AS with private optionprivateオプションを使用すると、EBGPネイバーとのBGPセッション確立時にローカルASが使用されますが、他のIBGPおよびEBGPピアに送信されたASパスでは非表示になります。グローバルASのみが外部ピアに送信されるASパスに含まれます。

    privateオプションは、以前のASで設定されたままのルーティングデバイスとローカルピアリングを確立する場合や、ピアの配置をまだ変更していない特定の顧客とローカルピアを確立する場合に便利です。ローカル AS は、EBGP ネイバーとの BGP セッションを確立するために使用されますが、別の AS 内の外部ピアに送信された AS パスでは表示されません。

    外部ピアに送信されるASパスで、ローカルASがグローバルASの前の先頭に付加されないように、 private オプションを含めます。 private オプションを指定すると、ローカルASはEBGPネイバーに送信されたASパスの先頭にのみ付加されます。

    例えば、 図1では、ルーター1 とルーター2 はAS 64496、ルーター4 はAS 64511、ルーター3 はAS 64510にあります。ルーター2は、以前はAS 64497に属していましたが、別のネットワークとマージされ、現在はAS 64496に属しています。ルーター3は以前のAS(64497)を使用してルーター2とまだピア関係にあるため、ルーター3とのピアリングを維持するには、ルーター2 を64497のローカルASで設定する必要があります。ローカル AS を 64497 に設定すると、ルーター 2 はルーター 3 へのルートをアドバタイズするときに AS 64497 を追加できます。ルーター3 は、プレフィックス 10/8の64497 64496のAS パスを確認します。

    図1:ローカルAS構成 Network topology diagram showing routers 1-4 and Autonomous Systems. AS 34438 includes routers 1, 2 using IBGP. AS 64597, 64510, 64511 use EBGP with IPs 192.168.1.0, 10.0.0.0, 192.168.10.0.

    ルーター2が他のピアへの通知にローカルAS番号を追加しないようにするには、 local-as 64497 private ステートメントを使用します。このステートメントでは、ルーター1とルーター4 へルートを通知するときにローカルAS 64497を含まないよう、ルーター2 を設定します。この場合、ルーター4 は、プレフィックス 10.222/16のASパス 64496 64510を確認します。

  • Local AS with alias option—Junos OSリリース9.5以降では、ローカルASをエイリアスとして設定できます。BGPオープンセッションの確立中、オープンメッセージで使用されるASは、ローカルASとグローバルASが交互に入れ替わります。ローカルASをEBGPネイバーとの接続に使用する場合、BGPピアセッションの確立時にローカルASのみがASパスの先頭に追加されます。グローバルASがEBGPネイバーとの接続に使用される場合、BGPピアセッションが確立されると、グローバルASのみがASパスの先頭に追加されます。aliasオプションを使用すると、EBGPネイバーから学習したルートに対して、ローカルASがASパスの先頭に付加されないことも意味します。そのため、ローカルASは他の外部ピアから非表示のままです。

    aliasオプションでローカルASを設定すると、取得したネットワーク内のルーティングデバイスを新しいASに移行する場合に特に便利です。移行プロセス中に、一部のルーティングデバイスは新しいASで設定されることがありますが、他のルーティングデバイスは以前のASで設定されたままになります。例えば、ルートリフレクタとして機能するルーティングデバイスを最初に新しいASに移行することから始めることをお勧めします。ただし、ルートリフレクタクライアントを段階的に移行すると、各ルートリフレクタは、以前のASで設定されたルーティングデバイスとピアリングし、新しいASで設定されたルーティングデバイスとピアリングする必要があります。ローカルピアセッションを確立するには、ネットワーク内のBGPピアがローカルASとグローバルASの両方を使用することが便利です。同時に、別のASにルートをエクスポートする際に、このローカルASを外部ピアから非表示にして、ASパスでグローバルASのみを使用します。このような状況では、aliasオプションを設定します。

    [edit routing-options]階層レベルで設定されたグローバルASのエイリアスとしてローカルASを設定するためのaliasオプションを含めます。ローカルASをエイリアスとして設定する場合、BGPオープンセッションの確立中に、オープンメッセージで使用されるASは、ローカルASとグローバルASが交互に入れ替わります。ローカルASは、EBGPネイバーとのピアセッションがそのローカルASを使用して確立された場合にのみ、ASパスの先頭に追加されます。ローカルASは、他のすべての外部ピアに送信されるASパスで非表示になっています。グローバルASを使用してBGPセッションを確立する場合、グローバルASのみがASパスの先頭に追加されます。

    注:

    privateオプションとaliasオプションは相互に排他的です。同じlocal-asステートメントで両方のオプションを設定することはできません。

  • Local AS with option not to prepend the global AS—Junos OS リリース9.6以降では、グローバルASを先頭に付加しないオプションでローカルASを設定することができます。ローカルASのみが外部ピアに送信されるASパスに含まれます。

    仮想プライベートネットワーク(VPN)シナリオで、アウトバウンドBGPアップデートからグローバルAS番号を削除する場合は、 no-prepend-global-as オプションを使用します。このオプションは、VPNからグローバルASを非表示にするaVPNシナリオで便利です。

    外部ピアに送信されるASパスから削除された[edit routing-options]階層レベルで設定されたグローバルASをno-prepend-global-asオプションを含めます。このオプションを使用すると、ローカルASのみがカスタマーエッジ(CE)デバイスに送信されたルートのASパスに含まれます。

  • Number of loops option—ローカルAS機能は、AS_PATH属性のAS番号を検出することでルートを破棄または非表示にする回数を指定する回数の指定もサポートしています。例えば、loops 1を設定すると、AS番号がパス内で1回以上検知されると、ルートは非表示になります。これはデフォルトの動作です。loops 2を設定すると、AS番号がパス内で2回以上検知されると、ルートは非表示になります。

    loops number ステートメントでは、1 から 10 までを設定できます。

    注:

    任意のBGPグループにローカルAS値を設定すると、すべてのBGPグループのASとローカルAS値の両方を使用して、ルーティングループの検出が実行されます。

    EBGPまたはIBGPピアのローカルASが現在のASと同じ場合は、 local-as ステートメントを使用してローカルAS番号を指定しないでください。

    VRF内でローカルASを設定すると、ASパスループ検知メカニズムに影響します。デバイスに設定されたすべての local-as ステートメントは、単一のASドメインの一部です。ASパスループ検出メカニズムは、ドメイン内に一致するASが存在するかどうかを探すことに基づいています。

例:EBGPセッションのローカルASの設定

この例では、インバウンドとアウトバウンドの更新でグローバルASとローカルASの両方が使用されるように、BGPピアのローカル自律システム(AS)を設定する方法BGP説明します。

要件

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

概要

ISPがマージして顧客の設定(特に、顧客がピア関係を確立するように設定されているAS)を保持したい場合に、 local-as ステートメントを使用します。 local-as ステートメントは、ISPのルーターが別のASに移動した場合でも、お客様のルーターにすでに設置されているAS番号をシミュレートします。

この例では、 local-as ステートメントを使用してローカルASを設定する方法を示しています。 local-as ステートメントは、グローバル、グループ、およびネイバー階層レベルでBGPでサポートされています。

local-asステートメントを設定する際には、AS番号を指定する必要があります。1から 4,294,967,295までの 数値をプレーン番号形式で指定できます。Junos OS Release 9.1以降では、RFC 4893で定義されている4バイトAS番号のBGPサポートを提供するように、AS番号の範囲が拡張されていますBGP 4オクテットAS番号空間のサポート。Junos OS Release 9.3以降では、ピリオド<16-bit high-order value in decimal>.<16-bit low-order value in decimal>で連結された2つの整数値のASドット表記形式を使用して、4バイトのAS番号を設定することもできます。たとえば、プレーン番号形式で65,546の4 バイトAS数は、ASドット表記形式では1.10と 表されます。0.0〜 65535.65535までの値を ASドット表記形式で指定できます。Junos OS は、引き続き 2 バイト AS 番号のサポートを継続します。2バイトAS番号の範囲は1〜65,535です(これは4バイト範囲のサブセットです)。

図2 は、サンプルトポロジーを示しています。

図2:ローカルASTopology for Configuring the Local ASを設定するためのトポロジー

この例では、デバイスR2は以前AS 250に属していましたが、現在はAS 200にあります。デバイスR1とデバイスR3は、新しいAS番号(AS 200)とではなく、AS 250とピアリングするように設定されています。デバイスR2には、 autonomous-system 200 ステートメントで設定された新しいAS番号が付いています。ピアリングセッションを機能させるために、 local-as 250 ステートメントをBGP設定に追加します。 local-as 250 が設定されているため、デバイスR2のBGPインバウンドおよびアウトバウンドの更新には、グローバルAS(200)とローカルAS(250)の両方が含まれます。

設定

CLIクイックコンフィグレーション

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

デバイスR1

デバイスR2

デバイスR3

デバイスR1の設定

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

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

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

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

  2. 外部BGP(EBGP)を設定します。

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

  4. デバイスR2とデバイスR3の間のリモートネットワークへの静的ルートを設定します。

  5. グローバルAS番号を設定します。

結果

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

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

デバイスR2の設定

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

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

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

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

  2. EBGPを設定します。

  3. ローカル自律システム(AS)番号を設定します。

  4. グローバルAS番号を設定します。

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

結果

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

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

デバイスR3の設定

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

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

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

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

  2. EBGPを設定します。

  3. グローバル自律システム(AS)番号を設定します。

  4. デバイスR1とデバイスR2の間でリモートネットワークへの静的ルートを設定します。

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

結果

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

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

検証

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

ローカルおよびグローバルAS設定の確認

目的

デバイスR2でローカルおよびグローバルのAS設定が行われていることを確認します。

アクション

動作モードから、 show bgp neighbors コマンドを入力します。

意味

ローカル AS: 250 とローカル システム AS: 200 の出力は、デバイス R2 に予期された設定であることを示しています。さらに、出力は、オプションリストにLocalASが含まれていることを示しています。

BGPピアリングセッションの確認

目的

セッションが確立されていること、およびローカルAS番号250が表示されていることを確認します。

アクション

動作モードから、 show bgp summary コマンドを入力します。

意味

デバイスR2が実際にはAS 200にあっても、デバイスR1とデバイスR3はAS 250内のデバイスとピアリングしているように見えます。

BGP ASパスの検証

目的

ルーティングテーブルにルートがあり、ASパスにローカルAS番号250が表示されていることを確認します。

アクション

設定モードから、 set route protocol bgp コマンドを入力します。

意味

出力では、デバイスR2が実際にはAS 200にあっても、デバイスR1とデバイスR3にはAS 250を含むASパスを持つルートがあるように見えることが示されています。

例:EBGPセッション用のプライベートローカルASの設定

この例では、プライベートローカル自律システム(AS)番号を設定する方法を示しています。ローカルASは、ピアリングにローカルAS番号を使用するピアにアドバタイズされるため、プライベートと見なされますが、ピアリングにグローバルAS番号を使用できるピアへの通知では表示されません。

要件

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

概要

ISPがマージして顧客の設定(特に、顧客がピア関係を確立するように設定されているAS)を保持したい場合に、 local-as ステートメントを使用します。 local-as ステートメントは、ISPのルーターが別のASに移動した場合でも、お客様のルーターにすでに設置されているAS番号をシミュレートします。

privateオプションを使用すると、ローカルASは、外部BGP(EBGP)ネイバーとのBGPセッション確立時に使用されますが、他のEBGPピアに送信されるASパスでは非表示になります。グローバルASのみが外部ピアに送信されるASパスに含まれます。

privateオプションは、以前のASで設定されたままのルーティングデバイスとローカルピアリングを確立する場合や、ピアの配置をまだ変更していない特定の顧客とローカルピアを確立する場合に便利です。ローカルASは、EBGPネイバーとのBGPセッションを確立するために使用されますが、別のASの外部ピアに送信されたASパスでは非表示になっています。

外部ピアに送信されるASパスで、ローカルASがグローバルASの前の先頭に付加されないように、 private オプションを含めます。 private オプションを指定すると、EBGPネイバーに送信されたASパスの先頭にのみローカルASが付加されます。

図3は、サンプルトポロジーを示しています。

図3:プライベートローカルASNetwork topology diagram with AS 64496 containing router R1, and Local AS 64497 with routers R2, R3, R4. R1 connects to R2 and R3; R3 connects to R4.を設定するためのトポロジー

デバイスR1はAS 64496にあります。デバイスR2はAS 64510にあります。デバイスR3はAS 64511にあります。デバイスR4はAS 64512にあります。デバイスR1は、以前はAS 64497に属していましたが、別のネットワークとマージされ、現在はAS 64496に属しています。デバイスR3は以前のASである64497を使用してデバイスR1とまだピア関係にあるため、デバイスR3とのピアリングを維持するには、デバイスR1を64497のローカルASで設定する必要があります。64497のローカルASを設定すると、デバイスR3へのルートをアドバタイズするときに、デバイスR1がAS 64497を追加できるようになります。デバイスR3は、プレフィックス10.1.1.2/32の64497 64496のASパスを確認します。これは、デバイスR2のループバックインターフェイスです。デバイスR4は、デバイスR3の後ろにあり、デバイスR2のループバックインターフェイスへの64511 64497 64496 64510のASパスを確認します。デバイスR1が他のピアへの通知にローカルAS番号を追加しないようにするために、この例では local-as 64497 private ステートメントを含めています。 private オプションは、デバイスR2へのルートを通知するときにローカルAS 64497を含まないデバイスR1を設定します。デバイスR2は、デバイスR3への64496 64511のASパスとデバイスR4への64496 64511 64512のASパスを確認します。デバイスR1の設定で private オプションを選択すると、デバイスR1がデバイスR2に再アドバタイズするASパスからAS番号64497がなくなります。

デバイスR1は、デバイスR3を除くすべてのルーターからプライベートローカルASを非表示にしています。 private オプションは、デバイスR1がデバイスR3から受信(学習)し、デバイスR1が他のルーターに再アドバタイズするルートに適用されます。デバイスR3から学習したこれらのルートがデバイスR1からデバイスR2に再アドバタイズされると、デバイスR2にアドバタイズされたASパスからプライベートローカルASがなくなります。

設定

CLIクイックコンフィグレーション

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

デバイスR1

デバイスR2

デバイスR3

デバイスR4

デバイスR1の設定

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

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

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

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

  2. デバイスR2とのEBGPピアリングセッションを設定します。

  3. デバイスR3とのEBGPピアリングセッションを設定します。

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

  5. グローバル自律システム(AS)番号を設定します。

結果

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

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

トポロジー内の他のデバイスに対して、必要に応じて設定を繰り返します。

検証

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

デバイスR2のASパスの確認

目的

デバイスR2がデバイスR3およびデバイスR4へのASパスにAS 64497が含まれていないことを確認します。

アクション

動作モードから、 show route protocol bgp コマンドを入力します。

意味

デバイスR2のASパスに、AS 64497は含まれません。

デバイスR3のASパスの確認

目的

ローカル AS 64497 が、EBGP ネイバー R3 に送信された AS パスの先頭にのみ付加されていることを確認します。デバイスR3は、プレフィックス10.1.1.2/32の64497 64496のASパスを確認します。これは、デバイスR2のループバックインターフェイスです。

アクション

動作モードから、 show route protocol bgp コマンドを入力します。

意味

デバイスR2へのデバイスR3のルート(プレフィックス10.1.1.2)には、デバイスR1に設定されたローカルとグローバルの両方のASが含まれます(それぞれ64497と64496)。

BGPの累積IGP属性を理解する

内部ゲートウェイプロトコル(IGP)は、単一ドメインまたは自律システム(AS)内でルーティングを処理するように設計されています。各リンクには、メトリックと呼ばれる特定の値が割り当てられます。2 つのノード間の距離は、パスに沿ったリンクのすべてのメトリック値の合計として計算されます。IGPは、距離に基づいて2つのノード間の最短パスを選択します。

BGPは、多数の独立したAS上でルーティングを提供するように設計されており、それぞれの運用管理間の調整は制限されているか、一切ありません。BGPは、パス選択の決定にメトリックを使用しません。

BGPの累積IGP(AIGP)メトリック属性により、1つの管理で複数の連続したBGP ASを実行できる導入が可能になります。このような導入により、BGPはIGPメトリックに基づいてルーティングを決定できます。このようなネットワークでは、BGPはIGPのようにメトリックに基づいてパスを選択することができます。この場合、ノードは2つの異なるASにありますが、BGPは2つのノード間の最短パスを選択します。

AIGP属性は、トンネリングを使用してBGPネクストホップにパケットを配信するネットワークで特に役立ちます。ジュニパーネットワークス® Junos®オペレーティングシステム(Junos OS)は現在、 family inet labeled-unicastfamily inet6 labeled-unicastの2つのBGPアドレスファミリーに対してAIGP属性をサポートしています。

AIGPは、BGP最適ルート決定プロセスに影響を与えます。AIGP属性優先ルールは、ローカル優先ルールの後に適用されます。AIGPの距離は、同点を破ることと比較されます。BGP最適ルートの決定プロセスは、解決ネクストホップにAIGP属性がある場合、内部コストルールの適用方法にも影響します。AIGP を有効にしていない場合、ルートの内部コストは、ルートのネクスト ホップへのメトリックの計算に基づきます。AIGP を有効にすると、解決中の AIGP 距離が内部コストに追加されます。

リリース20.2R1以降、Junos OSはAIGPメトリックからMEDへの変換をサポートしています。この機能は、最適なパスを選択するために使用されるエンドツーエンドのAIGPメトリック値をMEDに伝送させたい場合に有効にできます。これは、顧客サイトが 2 つの異なるサービスプロバイダを介して接続されており、顧客エッジルーターが IGP メトリックベースの決定を行う必要がある場合、AS 間 MPLS VPN ソリューションで特に役立ちます。effective-aigp が既知の最小値を超えて変化した場合に、ルートの不要な更新を防ぐ minimum-aigp を設定できます。有効なAIGPは、ネクストホップに到達するためのルートにIGPコストを加えたものを足したAIGP値です。 effective-aigp および minimum-effective-aigp ステートメントは、 [edit protocols bgp group <group-name> metric-out] および [edit policy-options policy-statement <name> then metric] 階層レベルで設定できます。

AIGP属性は、オプションの非推移的BGPパス属性であり、インターネットドラフトdraft-ietf-idr-aigp-06、 BGPの累積IGPメトリック属性で指定されています。

例:BGPの累積IGP属性の設定

この例では、BGPの累積IGP(AIGP)メトリック属性を設定する方法を示します。

要件

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

  • BGP を話すデバイス 7 台。

  • Junos OS リリース 12.1 以降。

概要

AIGP属性は、単一の管理で複数の連続したBGP自律システム(AS)を実行できる導入を可能にします。このような導入により、BGPはIGPメトリックに基づいてルーティングを決定できます。AIGPを有効にすると、BGPはIGPメトリックに基づいてパスを選択できます。これにより、ノードが異なるASにあっても、BGPは2つのノード間の最短パスを選択できます。AIGP属性は、トンネリングを使用してBGPネクストホップにパケットを配信するネットワークで特に役立ちます。この例では、MPLSラベルスイッチパスで設定されたAIGPを示しています。

AIGPを有効にするには、プロトコルファミリーベースでBGP設定に aigp ステートメントを含めます。特定のファミリーでAIGPを設定することで、そのファミリーのAIGP属性の送受信が可能になります。デフォルトでは、AIGPは無効になっています。AIGP が無効になっているネイバーは、AIGP 属性を送信せず、受信した AIGP 属性をサイレントに破棄します。

Junos OSは、 family inet labeled-unicastfamily inet6 labeled-unicast用のAIGPをサポートしています。 aigp ステートメントは、グローバルBGP、グループ、またはネイバーレベルで、特定のファミリーに対して設定できます。

デフォルトでは、ローカルプレフィックスのAIGP属性の値はゼロです。AIGP対応ネイバーは、 aigp-originate ポリシーアクションを使用して、エクスポートポリシーによって特定のプレフィックスに対してAIGP属性を発信できます。AIGP属性の値は、プレフィックスまでのIGP距離を反映しています。または、 aigp-originate distance distance ポリシーアクションを使用して値を指定することもできます。設定可能な範囲は 0 から 4,294,967,295 です。AIGP属性を発信する必要があるのは1つのノードだけです。ネイバーがBGP設定の aigp ステートメントでAIGPを有効にしている場合、AIGP属性は保持され、再アドバタイズされます。

AIGP属性を発生させるポリシーアクションには、以下の要件があります。

  • ネイバーはAIGPが有効である必要があります。

  • ポリシーは、エクスポートポリシーとして適用する必要があります。

  • プレフィックスには、現在のAIGP属性があってはなりません。

  • プレフィックスはネクストホップ自己でエクスポートする必要があります。

  • プレフィックスはAIGPドメイン内に存在する必要があります。通常、ループバックIPアドレスが発信元のプレフィックスとなります。

これらの要件が満たされない場合、ポリシーは無視されます。

トポロジー図

図4は、この例で使用されているトポロジーを示しています。OSPFは、内部ゲートウェイプロトコル(IGP)として使用されます。内部 BGP(IBGP)は、デバイス PE1 とデバイス PE4 の間で設定されます。外部 BGP(EBGP)は、デバイス PE7 とデバイス PE1 の間、デバイス PE4 とデバイス PE3 の間、およびデバイス PE4 とデバイス PE2 の間で設定されます。デバイス PE4、PE2、および PE3 はマルチホップ用に設定されています。デバイス PE4 は、AIGP 値に基づいてパスを選択し、AIGP とポリシー設定に基づいて AIGP 値を再度アドバタイズします。デバイスPE1は、別の管理ドメインにあるデバイスPE7にAIGP値を再アドバタイズします。すべてのデバイスには 2 つのループバック インターフェイス アドレスがあります。10.9.9.x は BGP ピアリングとルーター ID に使用され、10.100.1.x は BGP ネクストホップに使用されます。

デバイスPE1とPE3間のネットワークには、IBGPピアリングと複数のOSPFエリアがあります。デバイス PE7 への外部リンクは、AIGP 属性が AIGP 対応になっている場合、管理ドメイン外のネイバーに再アドバタイズされることを示すように設定されています。

図4:BGPNetwork topology diagram illustrating an MPLS network with PE routers labeled PE1, PE2, PE3, PE4, and PE7 interconnected by IP addresses, forming a mesh structure.における複数パスのアドバタイズメント

AIGP属性を発信するには、BGPネクストホップがそれ自体である必要があります。BGPネクストホップが変更されない場合、受信したAIGP属性は、そのまま別のAIGPネイバーに再アドバタイズされます。ネクストホップが変更された場合、受信したAIGP属性は、別のAIGPネイバーに値を増やして再アドバタイズされます。値の増加は、前の BGP ネクスト ホップまでの IGP 距離を反映しています。デモンストレーションのために、この例では、デバイス PE4 とデバイス PE2 およびデバイス PE3 との EBGP ピアリング セッションにループバック インターフェイス アドレスを使用しています。これらのセッションではマルチホップが有効になっているため、再帰的ルックアップが実行され、ポイントツーポイントインターフェイスが決定されます。ネクストホップが変更されるため、AIGP距離にIGP距離が加算されます。

設定

CLIクイックコンフィグレーション

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

デバイスP1

デバイスP2

デバイスPE4

デバイスPE1

デバイスPE2

デバイスPE3

デバイスPE7

デバイスP1の設定

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

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

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

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

  2. MPLSと、RSVPやLDPなどのシグナリングプロトコルを設定します。

  3. BGPを設定します。

  4. AIGPを有効にします。

  5. OSPF、RIP、IS-ISなどのIGPを設定します。

  6. ルーターIDと自律システム番号を設定します。

  7. デバイスの設定が完了したら、設定をコミットします。

結果

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

デバイスP2の設定

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

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

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

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

  2. MPLSと、RSVPやLDPなどのシグナリングプロトコルを設定します。

  3. BGPを設定します。

  4. AIGPを有効にします。

  5. OSPF、RIP、IS-ISなどのIGPを設定します。

  6. ルーターIDと自律システム番号を設定します。

  7. デバイスの設定が完了したら、設定をコミットします。

結果

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

デバイスPE4の設定

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

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

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

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

  2. MPLSと、RSVPやLDPなどのシグナリングプロトコルを設定します。

  3. BGPを設定します。

  4. AIGPを有効にします。

  5. プレフィックスを発信し、AIGP距離を設定します。

    デフォルトでは、現在のIGP距離を使用してプレフィックスが発信されます。オプションで、次に示すように、 distance オプションを使用してAIGP属性の距離を設定することができます。

  6. ポリシーを有効にします。

  7. スタティックルートを設定します。

  8. OSPF、RIP、IS-ISなどのIGPを設定します。

  9. ルーターIDと自律システム番号を設定します。

  10. デバイスの設定が完了したら、設定をコミットします。

結果

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

デバイスPE1の設定

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

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

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

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

  2. MPLSと、RSVPやLDPなどのシグナリングプロトコルを設定します。

  3. BGPを設定します。

  4. AIGPを有効にします。

  5. ポリシーを有効にします。

  6. OSPF、RIP、IS-ISなどのIGPを設定します。

  7. ルーターIDと自律システム番号を設定します。

  8. デバイスの設定が完了したら、設定をコミットします。

結果

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

デバイスPE2の設定

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

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

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

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

  2. MPLSと、RSVPやLDPなどのシグナリングプロトコルを設定します。

  3. BGPを設定します。

  4. AIGPを有効にします。

  5. プレフィックスを発信し、AIGP距離を設定します。

    デフォルトでは、現在のIGP距離を使用してプレフィックスが発信されます。オプションで、次に示すように、 distance オプションを使用してAIGP属性の距離を設定することができます。

  6. ポリシーを有効にします。

  7. いくつかのスタティックルートを有効にします。

  8. OSPF、RIP、IS-ISなどのIGPを設定します。

  9. ルーターIDと自律システム番号を設定します。

  10. デバイスの設定が完了したら、設定をコミットします。

結果

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

デバイスPE3の設定

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

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

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

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

  2. MPLSと、RSVPやLDPなどのシグナリングプロトコルを設定します。

  3. BGPを設定します。

  4. AIGPを有効にします。

  5. ポリシーを有効にします。

  6. OSPF、RIP、IS-ISなどのIGPを設定します。

  7. ルーターIDと自律システム番号を設定します。

  8. デバイスの設定が完了したら、設定をコミットします。

結果

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

デバイスPE7の設定

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

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

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

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

  2. BGPを設定します。

  3. AIGPを有効にします。

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

  5. ルーターIDと自律システム番号を設定します。

  6. デバイスの設定が完了したら、設定をコミットします。

結果

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

検証

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

デバイス PE4 が EBGP ネイバー PE2 から AIGP 属性を受信していることを検証します

目的

デバイス PE2 の AIGP ポリシーが機能していることを確認します。

アクション
意味

デバイス PE2 では、 aigp-originate ステートメントは 20(aigp-originate distance 20)の距離で設定されています。このステートメントは、ルート 55.0.0.0/24 に適用されます。同様に、 aigp-originate distance 30 ステートメントはルート99.0.0.0/24に適用されます。したがって、デバイス PE4 がこれらのルートを受信すると、AIGP 属性が設定されたメトリックに添付されます。

IGPメトリックの確認

目的

デバイス PE4 から、BGP ネクスト ホップ 10.100.1.5 までの IGP メトリックを確認します。

アクション
意味

このルートの IGP メトリックは 2 です。

デバイス PE4 が AIGP 属性に IGP メトリックを追加していることを確認

目的

デバイス PE4 が IBGP ネイバーであるデバイス PE1 にルートを再アドバタイズするときに、AIGP 属性にIGPメトリックが追加されていることを確認します。

アクション
意味

これらのルートではネクストホップが変更されるため、IGPメトリックがAIGPメトリック(20 + 2 = 22および30 + 2 = 32)に追加されます。

デバイス PE7 が EBGP ネイバー PE1 から AIGP 属性を受信していることの検証

目的

デバイス PE1 の AIGP ポリシーが機能していることを確認します。

アクション
意味

44.0.0.0/24ルートは、デバイスPE4から発信されています。55.0.0.0/24および99.0.0.0/24のルートは、デバイスPE2から発信されています。IGP距離は、設定されたAIGP距離に加算されます。

解決AIGPメトリックの検証

目的

プレフィックスが再帰によって解決され、再帰的ネクストホップにAIGPメトリックがある場合、プレフィックスには再帰的BGPネクストホップにあるAIGP値の合計が含まれていることを確認します。

アクション
  1. 66.0.0.0/24にスタティックルートを追加します。

  2. デバイスPE2の aigp ポリシーステートメント内の既存の用語を削除します。

  3. 66.0.0.0へのルートの再帰的ルートルックアップを設定します。

    このポリシーは、プレフィックス66.0.0.0/24(なし)とその再帰的ネクストホップのAIGPメトリックを示しています。プレフィックス66.0.0.0/24は55.0.0.1によって解決されます。プレフィックス66.0.0.0/24には、発信される独自のAIGPメトリックはありませんが、再帰的なネクストホップである55.0.0.1にはAIGP値があります。

  4. デバイス PE4 で、 show route 55.0.0.0 extensive コマンドを実行します。

    Metric2の値は、BGPネクストホップに対するIGPメトリックです。デバイス PE4 がこれらのルートを IBGP ピアであるデバイス PE1 に再アドバタイズする場合、AIGP メトリックは AIGP + 解決 AIGP メトリック + メトリック 2 の合計となります。

    プレフィックス55.0.0.0は、デバイスPE2によって定義およびアドバタイズされた独自のIGPメトリック20を示しています。再帰的な BGP ネクストホップがないため、解決 AIGP 値は表示されません。Metric2 の値は 2 です。

  5. デバイス PE4 で、 show route 66.0.0.0 extensive コマンドを実行します。

    プレフィックス66.0.0.0/24は、独自のAIGPメトリックとその再帰的BGPネクストホップの合計である解決AIGPを示しています。

    66.0.0.1 = 0、55.0.0.1 = 20、0+20 = 20

BGPアップデートにおけるAIGP属性のBGP属性の存在の検証

目的

AIGP属性がBGP(またはgroupまたはneighbor階層)で有効になっていない場合、AIGP属性はサイレントに破棄されます。traceoptionsを有効にし、設定のdetailオプションにpacketsフラグを含めることで、送受信されたBGPアップデートにAIGP属性が存在することを確認します。これは、AIGPの問題をデバッグする場合に便利です。

アクション
  1. traceoptions用にデバイスPE2とデバイスPE4を設定します。

  2. デバイスPE2の traceoptions ファイルを確認します。

    以下の例は、AIGPメトリックが20のデバイスPE2がプレフィックス99.0.0.0/24をデバイスPE4(10.9.9.4)にアドバタイズしていることを示しています。

  3. show route receive-protocolコマンドを使用して、デバイス PE4 でルートが受信されたことを確認します。

    AIGPはデバイスPE4で有効になっていないため、AIGP属性はプレフィックス99.0.0.0/24に対してサイレントに破棄され、以下の出力には表示されません。

  4. デバイスPE4の traceoptions ファイルを確認します。

    traceoptionsログからの以下の出力は、AIGP属性が付加された状態で99.0.0.0/24プレフィックスを受信したことを示しています。

意味

この検証を実行すると、AIGPのトラブルシューティングとデバッグの問題に役立ちます。これにより、ネットワーク内のどのデバイスがAIGP属性を送受信しているかを検証できます。

ASオーバーライドについて

ASオーバーライド機能により、プロバイダエッジ(PE)ルーターは、VPNルーティングおよび転送(VRF)アクセスリンクで実行されている外部BGP(EBGP)セッションでカスタマーエッジ(CE)デバイスが使用するプライベート自律システム(AS)番号を変更できます。プライベートAS番号がPE AS番号に変更されます。別の PE デバイスに接続された別の CE デバイスは、プロバイダ ASN サイト 1-ASN ではなく、プロバイダ ASN プロバイダ ASN の AS パスを持つ最初のサイトからの EBGP ルートを確認します。これにより、エンタープライズネットワークはすべてのサイトで同じプライベートASNを使用できます。

ASオーバーライド機能は、ローカルAS番号を含むASパス属性を持つBGPルートをデフォルトで受け入れないためBGPサービスプロバイダに明確な管理上の利点を提供します。

複数のサイトを持つエンタープライズネットワークでは、サイト間で1つのAS番号を使用することもできます。たとえば、2つのCEデバイスがAS 64512にあり、プロバイダネットワークがAS 65534にあるとします。

サービスプロバイダがこの設定でレイヤー3 VPNを設定すると、MPLSネットワークにデバイスCE1とデバイスCE2へのルートがあっても、ASパス属性が64512 65534 64512と表示されるため、デバイスCE1とデバイスCE2は互いにルートを持っていません。BGPは、ループ回避メカニズムとしてASパス属性を使用します。サイトがASパス内で自身のAS番号を複数回確認した場合、そのルートは無効と見なされます。

この問題を克服する 1 つの方法は、PE デバイスに適用する as-override ステートメントです。 as-override ステートメントは、CEデバイスのAS番号をPEデバイスの番号に置き換えることで、カスタマー AS番号がASパス属性に複数回表示されないようにします。

顧客が特定のパスを望ましくないものにするためにパスを先頭に追加AS使用し、サービスプロバイダがASオーバーライドを使用する場合、ASパスで出現する各CE AS番号はサービスプロバイダのAS番号に変更されます。たとえば、すべてのカスタマーサイトで64512という同じAS番号を使用しているとします。ISPがAS番号65534を使用する場合、あるカスタマーサイトからは別のサイトへのパスを65534 65534として確認します。顧客が特定のパスの先頭に64512を追加して望ましくないものにすると、別の顧客サイトはそのパスを65534 65534 65534と見なします。

例:ルートリフレクションとASオーバーライドを使用したレイヤー3 VPNの設定

マネージド MPLS ベースのレイヤー 3 VPN サービスを提供するサービス プロバイダがあるとします。顧客には複数のサイトがあり、各サイトのカスタマーエッジ(CE)デバイスへの BGP ルーティングが必要です。

要件

この例を設定する前に、デバイスの初期化以外の特別な設定を行う必要はありません。

概要

この例では、2 つの CE デバイス、2 つのプロバイダ エッジ(PE)デバイス、および複数のプロバイダ コア デバイスがあります。プロバイダネットワークは、IS-ISを使用してLDPおよびBGPループバック到達性をサポートしています デバイスP2は、ルートリフレクタ(RR)として動作しています。両方のCEデバイスは、自律システム(AS)64512にあります。プロバイダネットワークはAS 65534にあります。

as-overrideステートメントはPEデバイスに適用され、CEデバイスのAS番号がPEデバイスの番号に置き換えられます。これにより、顧客AS番号がASパス属性に複数回表示されないようにすることができます。

図5 は、この例で使用されているトポロジーを示しています。

図5:ASオーバーライドトポロジー AS Override Topology

CLIクイックコンフィグレーション は、 図5に示すすべてのデバイスの構成を示しています。「 ステップバイステップの手順」 では、デバイスPE1の手順について説明します。

トポロジー

設定

手順

CLIクイックコンフィグレーション

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

デバイスCE1

デバイスP1

デバイスP2

デバイスP3

デバイスPE1

デバイスPE2

デバイスCE2

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

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

ASオーバーライドを設定するには:

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

    MPLSを有効にするには、インターフェイスが受信MPLSトラフィックを破棄しないように、インターフェイスにプロトコルファミリーを含めます。

  2. MPLSプロトコルにインターフェイスを追加して、コントロールプレーンレベルの接続を確立します。

    プロバイダデバイスが相互に通信できるように、IGPを設定します。

    MPLSラベルを配布するメカニズムを確立するには、LDPを有効にします。オプションとして、LDPの場合、FEC(Forwarding Equivalence Class)のディスアグリゲーションを有効にすると、グローバルコンバージェンスが高速化されます。

  3. IPv4 VPN ユニキャストアドレスファミリーを使用して、RRとのピアリングへの内部BGP(IBGP)接続を有効にします。

  4. as-overrideステートメントを含むルーティングインスタンスを設定します。

    PE デバイス上でルーティングインスタンス(VRF)を作成し、デバイス CE1 とピアリングするように BGP 構成を設定します。

  5. ルーターIDとAS番号を設定します。

結果

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

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

検証

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

CEデバイスへのASパスの確認

目的

デバイス PE1 に、デバイス CE2 のループバック インターフェイスへのルートの AS パス属性に関する情報を表示します。

アクション

デバイスPE1で、運用モードから show route table VPN-A.inet.0 10.255.6.6 コマンドを入力します。

意味

出力は、デバイス PE1 に 64512 からの 10.255.6.6/32 のAS パスがあることを示していますAS。

デバイスCE2へのルートがどのようにアドバタイズされるかの確認

目的

デバイスCE2へのルートが、あたかもMPLSコアから来ているかのようにデバイスCE1にアドバタイズされていることを確認します。

アクション

デバイスPE1で、運用モードから show route advertising-protocol bgp 10.0.0.1 コマンドを入力します。

意味

この出力は、デバイスPE1がASパス内でそれ自身のAS番号のみをアドバタイズしていることを示しています。

デバイスCE1でのルートの確認

目的

デバイスCE1がデバイスCE2へのルートのASパスにプロバイダAS番号のみが含まれていることを確認します。

アクション

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

意味

出力は、デバイスCE1にデバイスCE2へのルートがあることを示しています。ループの問題は、 as-override ステートメントを使用することで解決されます。

1 つのルートが CE デバイス上で非表示になっています。これは、Junos OSがBGPスプリットホライズンを実行しないためです。一般的に、BGPのスプリット ホライズンは不要です。これは、ASパス長(EBGPの場合)、AS パスループ検出(IBGP)、またはその他のBGPメトリックにより優先されないためです。ルートを学習元のネイバーに戻してアドバタイズすることは、ルーターのパフォーマンスへの影響はごくわずかであり、正しいことです。

例:BGPルートアドバタイズの有効化

Junos OSは、EBGPピアから学習したルートを、同じ外部BGP(EBGP)ピアに戻してアドバタイズしません。さらに、ソフトウェアは、ルーティングインスタンスに関係なく、送信元ピアと同じ自律システム(AS)内にあるEBGPピアにルートをアドバタイズしません。この動作を変更するには、設定に advertise-peer-as ステートメントを含めます。

設定に advertise-peer-as ステートメントを含めると、このチェックに関係なくBGPルートがアドバタイズされます。

デフォルトの動作に戻すには、設定に no-advertise-peer-as ステートメントを含めます。

as-overrideステートメントが設定に含まれている場合、ルート抑止のデフォルト動作は無効になります。設定に as-override ステートメントとno-advertise-peer-asステートメントの両方を含めると、no-advertise-peer-asステートメントは無視されます。

要件

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

注:

この例は、Junosリリース21.2R1で更新され、再検証されました。

概要

この例では、外部 BGP(EBGP)接続を持つ 3 つのルーティング デバイスを示しています。デバイスR2には、デバイスR1へのEBGP接続と、デバイスR3への別のEBGP接続があります。デバイスR1とデバイスR3は、AS 64511にあるデバイスR2で分離されていますが、同じAS(AS 64512)にあります。デバイスR1とデバイスR3は、それぞれのループバックインターフェイスアドレスへのBGPダイレクトルートにアドバタイズします。

デバイスR2はこれらのループバックインターフェイスルートを受信し、 advertise peer-as ステートメントによりデバイスR2がそれらをアドバタイズできるようにします。具体的には、デバイスR1は192.168.0.1ルートをデバイスR2に送信し、デバイスR2には advertise peer-as が設定されているため、デバイスR2は192.168.0.1ルートをデバイスR3に送信できます。同様に、デバイスR3は192.168.0.3ルートをデバイスR2に送信し、 advertise peer-as デバイスR2がデバイスR1にルートを転送できるようにします。

デバイスR1とデバイスR3が、ASパスに独自のAS番号を含むルートを受け入れるようにするには、デバイスR1とデバイスR3に loops 2 ステートメントが必要です。

トポロジー

図6:advertise-peer-asBGP Topology for advertise-peer-asのBGPトポロジー

設定

CLIクイックコンフィグレーション

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

デバイスR1

デバイスR2

デバイスR3

手順

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

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

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

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

  2. BGPを設定します。

  3. loops 2ステートメントを含めることで、デバイスR3からのルートがデバイスR1で非表示になるのを防ぎます。

    loops 2ステートメントは、ルートを非表示にすることなく、ローカルデバイス自身のAS番号を1回までASパスに表示できることを意味します。ローカルデバイスのAS番号がパス内で2回以上検知された場合、ルートは非表示になります。

  4. 直接ルートを送信するルーティングポリシーを設定します。

  5. デバイスR2とのBGPピアリングセッションにエクスポートポリシーを適用します。

  6. 自律システム(AS)番号を設定します。

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

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

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

  2. BGPを設定します。

  3. 同じAS内で、あるEBGPピアから別のEBGPピアに学習されたルートをアドバタイズするように、デバイスR2を設定します。

    言い換えると、デバイスR1とデバイスR3が同じAS内にあっても、デバイスR3から(およびその逆から)学習したデバイスR1のルートにアドバタイズします。

  4. 直接ルートを送信するルーティングポリシーを設定します。

  5. エクスポートポリシーを適用します。

  6. AS番号を設定します。

結果

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

デバイスR1

デバイスR2

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

検証

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

BGPルートの検証

目的

デバイスR1とデバイスR3のルーティングテーブルに、予想されるルートが含まれていることを確認します。

アクション
  1. デバイスR2で、BGP設定の advertise-peer-as ステートメントを無効にします。

  2. デバイスR3で、BGP設定の loops ステートメントを無効にします。

  3. デバイスR1で、デバイスR2にアドバタイズされているルートを確認します。

  4. デバイスR2で、デバイスR1からどのルートが受信されているかを確認します。

  5. デバイスR2で、デバイスR3にアドバタイズされているルートを確認します。

  6. デバイスR2で、BGP設定の advertise-peer-as ステートメントをアクティブにします。

  7. デバイスR2で、デバイスR3にアドバタイズされているルートを再確認します。

  8. デバイスR3で、デバイスR2から受信したルートを確認します。

  9. デバイスR3で、BGP設定の loops ステートメントを有効にします。

  10. デバイスR3で、デバイスR2から受信したルートを再確認します。

意味

まず、 advertise-peer-as ステートメントと loops ステートメントを無効にして、デフォルトの動作を調べることができます。デバイスR1は、デバイスR2にデバイスR1のループバックインターフェイスアドレス192.168.0.1/32へのルートを送信します。デバイスR2は、デバイスR3に対してこのルートをアドバタイズしません。 advertise-peer-as ステートメントを有効にした後、デバイスR2はデバイスR3に192.168.0.1/32ルートをアドバタイズします。デバイスR3は、 loops ステートメントがアクティブになるまで、このルートを受け入れません。

BGPループ検知の独立ASドメインで属性セットメッセージを無効化する

特定のルートの BGP ループ検知では、ルーティングインスタンスにローカル自律システム(AS)ドメインを使用します。デフォルトでは、すべてのルーティングインスタンスは、グローバル階層 routing-optionsで設定された単一のプライマリルーティングインスタンスドメインに属しています。そのため、BGPループ検知では、すべてのルーティングインスタンスに設定されたローカルASを使用します。ネットワーク設定によっては、このデフォルトの動作によってルートがループしたり非表示になったりすることがあります。簡潔にするために、「ローカルAS」を特定のルーティングインスタンスのASとして、グローバル設定またはプライマリルーティングインスタンスの「グローバルAS」と呼びます。

プライマリルーティングインスタンスのローカルASを制限するには、ルーティングインスタンスの独立したASドメインを設定します。独立ドメインはプライマリ ルーティング インスタンスから独立しており、独立ドメインの AS パスが他のドメインの AS パスおよび AS パス属性と共有されないようにします。

デフォルトでは、独立ドメインは推移的なパス属性128(属性セット)メッセージを使用して、内部のBGP(IBGP)コアを介して独立ドメインのBGP属性をトンネルします。ただし、多くの場合、独立ドメインの属性セットメッセージの動作は望ましくありません。ルーティングインスタンス内のローカルASの独立性を維持するためだけ独立ドメインを設定し、ルーティングインスタンスで指定されたローカルASに対してのみBGPループ検出を実行する場合は、属性セットメッセージを無効にすることができます。

独立ドメインで属性セットメッセージを無効にするには、 independent-domain no-attrset ステートメントを含めます。

  1. 変更する独立ドメインを含むルーティングインスタンスを選択します。ルーティングインスタンスは、以下の階層レベルから選択できます。
    • [edit routing-instances routing-instance-name]

    • [edit logical-systems logical-system-name routing-instances routing-instance-name]

  2. 独立ドメインの属性セットメッセージを無効にします。
    ヒント:

    属性セットメッセージを無効にする場合は、プライマリルーティングインスタンスのAS番号を指定することをお勧めします。これにより、プライマリルーティングインスタンスのASがルーティングインスタンスのローカルASとして扱われ、BGPループ検出に使用されるようになります。

独立ドメインのルーティングインスタンスを指定すると、ローカルASはそのルーティングインスタンスにのみ関連付けられます。つまり、BGPループ検知は、ルーティングインスタンスで定義されたローカルASのみを使用します。

例:最適経路の選択時にASパス属性を無視する

同じ宛先への複数のBGPルートが存在する場合、BGPはパスのルート属性に基づいて最適なパスを選択します。最適経路の決定に影響を与えるルート属性の1つは、各ルートのASパスの長さです。短いASパスを持つルートが、長いASパスを持つルートよりも好まれます。通常は現実的ではありませんが、ルート選択プロセスでASパス長を無視することが求められる場合があります。この例では、ASパス属性を無視するようにルーティングデバイスを設定する方法を示しています。

要件

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

概要

外部に接続されたルーティングデバイスでは、ASパス比較をスキップする目的は、外部BGP(EBGP)と内部BGP(IBGP)の決定を強制的に決定し、できるだけ早くネットワークからトラフィックを削除することです。内部接続されたルーティング・デバイスでは、IBGP 専用ルーターをローカルの外部接続ゲートウェイにデフォルト設定することができます。ローカルIBGPのみ(内部)ルーターは、ASパス比較をスキップし、決定木を下に移動して、最も近い内部ゲートウェイプロトコル(IGP)ゲートウェイ(最小のIGPメトリック)を使用します。これを行うと、これらのルーターに WAN 接続ではなく LAN 接続を強制的に使用させる効果的な方法となる可能性があります。

注意:

ネットワーク内のルーティングデバイスに as-path-ignore ステートメントを使用する場合、ルーティングループやコンバージェンスの問題を防ぐために、ネットワーク内の他のすべてのBGP対応デバイスにステートメントを含める必要がある場合があります。これは、IBGPパス比較に特に当てはまります。

この例では、デバイスR2は、デバイスR1およびデバイスR3からデバイスR4(10.4.4.4/32)のループバックインターフェイスアドレスについて学習しています。デバイスR1は、65001 65005 65004のASパスで10.4.4.4/32をアドバタイズしており、デバイスR3は65003 65004のASパスで10.4.4.4/32をアドバタイズしています。デバイスR2は、デバイスR3からの10.4.4.4/32へのパスがデバイスR1からのASパスよりも短いため、最適なパスとしてASを選択します。

この例では、デバイスR2のBGP設定を変更して、最適パスの選択でASパス長が使用されないようにします。

デバイスR1のルーターID(10.1.1.1)は、デバイスR3(10.3.3.3)よりも低いです。他のすべてのパス選択基準が等しい場合(または、このケースのように無視される場合)、デバイスR1から学習したルートが使用されます。ASパスパス属性が無視されているため、ルーターID値が低いため、デバイスR1へのパスが最適です。

図7は、サンプルのトポロジーを示しています。

図7:ASパス長Network topology diagram with autonomous systems: AS 65001 R1 10.1.1.1, AS 65002 R2 10.2.2.2, AS 65003 R3 10.3.3.3, AS 65004 R4 10.4.4.4, AS 65005 R5 10.5.5.5.を無視するためのトポロジー

設定

CLIクイックコンフィグレーション

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

デバイスR1

デバイスR2

デバイスR3

デバイスR4

デバイスR5

デバイスR2の設定

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

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

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

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

  2. EBGPを設定します。

  3. Junos OSパス選択アルゴリズムで自律システム(AS)パス属性が無視されるように設定します。

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

  5. いくつかのスタティックルートを設定します。

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

結果

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

デバイスの設定が完了したら、設定モードから コミット を入力します。ネットワーク内の他のデバイスでも設定を繰り返し、必要に応じてインターフェイス名とIPアドレスを変更します。

検証

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

ネイバーステータスの確認

目的

デバイスR2から、AS 4に到達するためのアクティブパスが、AS 65003を介さず、AS 65001およびAS 65005を経由していることを確認します。

注:

as-path-ignoreステートメントの機能を検証するには、restart routingコマンドを実行してアクティブパスを強制的に再評価する必要がある場合があります。これは、BGPの場合、両方のパスが外部にある場合、Junos OSの動作は現在アクティブなパスを優先するためです。この動作は、ルートフラップを最小限に抑えるのに役立ちます。実稼働ネットワークでルーティングプロトコルプロセスを再起動する際は注意が必要です。

アクション

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

動作モードから、 show route 10.4.4.4 protocol bgp コマンドを入力します。

意味

アスタリスク(*)は、R1から学習したパスの横にあり、これがアクティブなパスであることを意味します。アクティブパスのASパスは65001 65005 65004で、これはルーターR3から学習した非アクティブパスのASパス(65003 65004)よりも長いです。

ASパスからのプライベートAS番号の削除について

デフォルトでは、BGPがリモートシステムへのASパスをアドバタイズする場合、プライベートAS番号を含むすべてのAS番号が含まれます。ASパスからプライベートAS番号を削除するようにソフトウェアを設定できます。これを行うと、以下のいずれかの状況に該当する場合に有効です。

  • 接続を提供するリモートASはマルチホームですが、ローカルASに対してのみ接続されます。

  • リモートASには、正式に割り当てられたAS番号がありません。

  • リモートASをローカルASのコンフェデレーションメンバーASにすることは適切ではありません。

ほとんどの企業は、独自のAS番号を取得しています。企業によっては、自社のパブリックASネットワークに接続するためにプライベートAS番号を使用することもあります。このような企業は、事業を行う地域ごとに異なるプライベートAS番号を使用している場合があります。どのような実装でも、プライベートAS番号をインターネットに知らせることは避けなければなりません。サービスプロバイダは、 remove-private ステートメントを使用して、インターネットへのプライベートAS番号のアドバタイズを防止できます。

企業のシナリオにおいて、社内に複数のAS番号があり、そのうちのいくつかはプライベートAS番号で、1つはパブリックAS番号が付いているとします。パブリックAS番号を持つものは、サービスプロバイダに直接接続しています。サービスプロバイダに直接接続するASでは、 remove-private ステートメントを使用して、サービスプロバイダに送信されるアドバタイズメント内のプライベートAS番号を除外できます。

AS番号は、ASパスの左端(ASパスが最後に追加された端)から始まるASパスから削除されます。ルーティングデバイスは、最初の非プライベートASまたはピアのプライベートASが見つかったときに、プライベートASの検索を停止します。ASパスに外部BGP(EBGP)ネイバーのAS番号が含まれている場合、BGPはプライベートAS番号を削除しません。

注:

Junos OS 10.0R2以降では、ASパスのAS番号と一致するAS番号を持つEBGPピアにプレフィックスを送信する必要がある場合は、remove-privateステートメントではなくas-overrideステートメントの使用を検討してください。

この操作は、該当する場合、コンフェデレーションメンバーのASがASパスからASパスから削除された後に実行されます。

ソフトウェアは、IANA(IANA)割り当てられた番号ドキュメントで定義されている範囲、つまりプライベートと見なされる一連のAS番号のセットを認識した上で事前設定されています。プライベートとして予約された 16 ビット AS 番号のセットは、64,512 から 65,534 までの範囲です 。プライベートとして予約された32ビットAS番号は、4,200,000,000から4,294,967,294までの範囲です。

例:ASパスからプライベートAS番号を削除する AS 番号

ここでは、アドバタイズされたASパスからプライベートAS番号を削除して、プライベートAS番号がインターネットに通知されないようにする例を示しています。

要件

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

概要

サービスプロバイダとエンタープライズネットワークは、 remove-private ステートメントを使用して、インターネットへのプライベートAS番号のアドバタイズを防止します。 remove-private ステートメントは、アウトバウンド方向で機能します。パブリックAS番号を持ち、プライベートAS番号を持つ1つ以上のデバイスに接続されたデバイスで remove-private ステートメントを設定します。一般的に、プライベートAS番号を持つデバイスにはこのステートメントを設定しません。

図8は、サンプルのトポロジーを示しています。

図8:アドバタイズされたASパスNetwork diagram showing routers R1 in AS 65530, ISP in AS 100, and R2 in AS 200, illustrating their interconnections for routing configuration.からプライベートASを削除するためのトポロジー

この例では、デバイスR1はプライベートAS番号65530を使用してサービスプロバイダに接続しています。この例では、デバイスR1のプライベートAS番号がデバイスR2に通知されないようにするために、デバイスISPに設定された remove-private ステートメントを示しています。デバイスR2は、サービスプロバイダのAS番号のみを確認します。

注:

BGPオプション remove-private を追加または削除すると、影響を受けるBGPピアリングセッションがフラップされます。

設定

CLIクイックコンフィグレーション

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

デバイスR1

デバイスISP

デバイスR2

デバイスISP

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

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

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

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

  2. EBGPを設定します。

  3. 自律システム(AS)200(デバイスR2)のネイバーに対して、アドバタイズされたASパスからプライベートAS番号を削除します。

  4. AS番号を設定します。

結果

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

デバイスの設定が完了したら、設定モードから コミット を入力します。デバイスR1とデバイスR2で設定を繰り返し、必要に応じてインターフェイス名とIPアドレスを変更し、ルーティングポリシー設定を追加します。

検証

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

ネイバーステータスの確認

目的

デバイスISPがデバイスR2とのネイバーセッションで remove-private 設定を有効にしていることを確認します。

アクション

動作モードから、 show bgp neighbor 192.168.20.1 コマンドを入力します。

意味

RemovePrivateASオプションは、デバイスISPに予想される設定があることを示しています。

ルーティングテーブルのチェック

目的

デバイスに予想されたルートとASパスがあることを確認します。

アクション

動作モードから、 show route protocol bgp コマンドを入力します。

意味

デバイスISPは、デバイスR1へのASパスにプライベートAS番号65530を持っています。ただし、デバイスISPは、このプライベートAS番号をデバイスR2にアドバタイズしません。これは、デバイスR2のルーティングテーブルに示されています。デバイスR2からデバイスR1へのパスには、デバイスISPのAS番号のみが含まれます。

remove-privateステートメントの非アクティブ化時にASパスを確認する

目的

remove-privateステートメントなしで、プライベートAS番号がデバイスR2のルーティングテーブルに表示されることを確認します。

アクション

デバイスISPの設定モードから、 deactivate remove-private コマンドを入力し、デバイスR2のルーティングテーブルを再確認します。

意味

プライベートAS番号65530は、デバイスR2のデバイスR1へのASパスに表示されます。

変更履歴テーブル

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。

リリース
説明
20.2R1
リリース20.2R1以降、Junos OSはAIGPメトリックからMEDへの変換をサポートしています。この機能は、最適なパスを選択するために使用されるエンドツーエンドのAIGPメトリック値をMEDに伝送させたい場合に有効にできます。