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 番号 65200 の前に、ローカル AS 番号 65250 が先頭に付加されるか、代わりに使用されます。

内部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 を設定します。

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

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

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

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

    ルーター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オプションを含めます。BGPオープンセッションの確立中にローカルASをエイリアスとして設定する場合、オープンメッセージに使用されたASは、ローカルASとグローバルASが交互に入れ替わります。EBGPネイバーとのピアセッションがそのローカルASを使用して確立された場合にのみ、ローカルASがASパスの先頭に追加されます。ローカルASは、他のすべての外部ピアに送信されるASパスで非表示になっています。BGPセッションがグローバルASを使用して確立されている場合は、グローバル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シナリオで便利です。

    [edit routing-options]階層レベルに設定されたグローバルASを外部ピアに送信される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を設定する

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

要件

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

概要

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

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

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

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

図 2: ローカルASを設定するためのトポロジーローカルASを設定するためのトポロジー

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

設定

CLIクイック構成

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

デバイスR1

デバイスR2

デバイスR3

デバイスR1の設定

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

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

Device R1を設定するには:

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

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

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

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

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

結果

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

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

デバイスR2の設定

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

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

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

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

  2. EBGPを設定します。

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

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

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

結果

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

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

デバイス R3 の設定

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

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

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

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

  2. EBGPを設定します。

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

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

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

結果

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

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

検証

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

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

目的

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

アクション

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

意味

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

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

目的

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

アクション

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

意味

デバイスR1とデバイスR3は、デバイスR2が実際にAS 200に存在する場合でも、AS 250内のデバイスとのピアリングとして表されます。

BGP ASパスの検証

目的

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

アクション

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

意味

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

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

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

要件

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

概要

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

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

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

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

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

図 3: プライベートローカルASを設定するためのトポロジープライベートローカルASを設定するためのトポロジー

デバイス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エディターを使用する を参照してください。

Device 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コマンドを入力します。

意味

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

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

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

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

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

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

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

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

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は、AIGP for family inet labeled-unicast および family inet6 labeled-unicastをサポートしています。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: BGP における複数パスのアドバタイズメントBGP における複数パスのアドバタイズメント

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

設定

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 protocols、、およびの各コマshow 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 protocols、、およびの各コマshow 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 protocols、およびshow 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 protocols、およびshow 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 protocols、およびshow 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 にルートを再アドバタイズするときに、IGP メトリックが AIGP 属性に追加されていることを確認します。

アクション
意味

これらのルートのネクストホップが変更されるため、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(none)とその再帰的ネクストホップの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値は表示されません。メトリック 2 の値は 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属性の存在の検証

目的

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を使用できます。

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

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

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

この問題を克服する 1 つの方法は、PE デバイスに適用される as-override ステートメントを使用することです。as-overrideステートメントは、CEデバイスのAS番号をPEデバイスのAS番号に置き換え、カスタマーの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番号がASパス属性に複数回表示されるのを防ぎます。

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

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

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パスの確認

目的

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

アクション

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

意味

出力は、デバイスPE1にAS 64512からの10.255.6.6/32への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 ステートメントを使用すると解決されます。

CEデバイスでは1つのルートが非表示になっています。これは、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接続があります。AS 64511にあるデバイスR2で分離されていますが、デバイスR1とデバイスR3は同じAS(AS 64512)にあります。デバイスR1とデバイスR3は、独自のループバックインターフェイスアドレスへのBGPダイレクトルートにアドバタイズします。

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

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

トポロジー

図 6: アドバタイズピアASのBGPトポロジーアドバタイズピアASのBGPトポロジー

設定

CLIクイック構成

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

デバイスR1

デバイスR2

デバイスR3

手順

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

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

Device R1を設定するには:

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

  2. BGP を設定します。

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

    loops 2ステートメントは、ルートを非表示にすることなく、ローカルデバイス自身のAS番号をASパスに1回まで表示できることを意味します。ローカルデバイスの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は、デバイスR1のループバックインターフェイスアドレス192.168.0.1/32へのルートをデバイスR2に送信します。デバイスR2は、デバイスR3にこのルートをアドバタイズしません。advertise-peer-asステートメントを有効にした後、デバイスR2はデバイスR3に192.168.0.1/32ルートをアドバタイズします。デバイスR3は、 loops ステートメントがアクティブになるまで、このルートを受け入れません。

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

特定ルートのBGPループ検知では、ルーティングインスタンスにローカル自律システム(AS)ドメインを使用します。デフォルトでは、すべてのルーティングインスタンスは単一のプライマリルーティングインスタンスドメインに属します。そのため、BGPループ検知では、すべてのルーティングインスタンスに設定されたローカル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は、デバイスR4(10.4.4.4/32)のループバック インターフェイス アドレスをデバイス R1 とデバイス R3 から学習しています。デバイスR1はASパス65001 65005 65004で10.4.4.4/32をアドバタイズし、デバイスR3はASパス65003 65004で10.4.4.4/32をアドバタイズしています。ASパスがデバイスR1からのASパスよりも短いため、デバイスR2はデバイスR3からの10.4.4.4/32のパスを最適パスとして選択します。

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

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

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

図 7: ASパス長を無視するためのトポロジーASパス長を無視するためのトポロジー

設定

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 のコマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。ネットワーク内の他のデバイスで設定を繰り返し、必要に応じてインターフェイス名と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パスから削除された後に実行されます。

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

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

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

要件

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

概要

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

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

図 8: アドバタイズされたASパスからプライベートASを削除するためのトポロジーアドバタイズされたASパスからプライベートASを削除するためのトポロジー

この例では、プライベートAS番号 65530を使用して、デバイスR1がサービスプロバイダに接続しています。この例では、デバイス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 protocols、、およびの各コマshow routing-optionsンドを入力し、コンフィギュレーションを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。デバイス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パスに表示されます。

変更履歴

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer をご利用ください。

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