Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
このページで
 

例:BGP階層の異なるレベルでのルーティングポリシーの適用

この例では、シンプルなネットワークトポロジーで設定されたBGPを紹介し、ルーティングポリシーがBGP設定の異なるレベルで適用された時にどのような効果があるかを説明します。

要件

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

概要

BGPでは、以下のようなポリシーを適用できます。

  • BGPグローバルのimportおよびexportステートメント-これらのステートメントを[edit protocols bgp]階層レベルに含める(ルーティングインスタンスの場合は、これらのステートメントを[edit routing-instances routing-instance-name protocols bgp]階層レベルに含める)。

  • グループのimportおよびexportステートメント-これらのステートメントを[edit protocols bgp group group-name]階層レベルに含める(ルーティングインスタンスの場合は、これらのステートメントを[edit routing-instances routing-instance-name protocols bgp group group-name]階層レベルに含める)。

  • ピアのimportおよびexportステートメント-これらのステートメントを[edit protocols bgp group group-name neighbor address]階層レベルに含める(ルーティングインスタンスの場合は、これらのステートメントを[edit routing-instances routing-instance-name protocols bgp group group-name neighbor address]階層レベルに含める)。

  • ファミリのimportおよびexportステートメント-これらのステートメントを[edit protocols bgp family nlri]階層レベルに含める(ルーティングインスタンスの場合は、これらのステートメントを[edit routing-instances routing-instance-name protocols bgp family nlri]階層レベルに含める)。

ピアレベルのimportまたはexportステートメントは、グループのimportまたはexportステートメントを上書きします。グループレベルimportまたはexportステートメントは、グローバルBGPのimportまたはexportステートメントを上書きします。

この例では、send-directという名のポリシーがグローバルレベルで適用され、send-192.168.0.1という名の別のポリシーがグループレベルで適用されており、send-192.168.20.1という名の3つ目のポリシーがネイバーレベルで適用されています。

これは、重要なポイントであり、しばしば誤解され問題が生じる原因となっていますが、このような構成では、最も明示的なポリシーのみが適用されます。ネイバーレベルのポリシーは、グループレベルのポリシーよりも明示的であり、さらにグループレベルのポリシーは、グローバルポリシーよりも明示的です。

ネイバー172.16.2.2には、send-192.168.20.1ポリシーのみが適用されます。ネイバー172.16.3.3にはより具体的なものがないため、send-192.168.0.1ポリシー適用のみがされます。一方で、other-groupのグループにあるネイバー172.16.4.4には、グループまたはネイバーレベルのポリシーがないため、send-directポリシーを使用します。

ネイバー172.16.2.2で3つのポリシーすべての機能を実行させる必要がある場合は、他の3つの機能が含まれる新しいネイバーレベルのポリシーを記述して適用するか、既存の3つのポリシーすべてをチェーンとして、ネイバー172.16.2.2に適用することができます。

トポロジー

図 1は、サンプルネットワークを示しています。

図 1: BGPへのルーティングポリシーの適用BGPへのルーティングポリシーの適用

CLIクイック構成は、図 1にあるすべてのデバイスの構成を示しています。

セクション#configuration__policy-bgp-apply-levels-stは、デバイスR1の手順を説明しています。

設定

CLIクイック構成

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

デバイスR1

デバイスR2

デバイスR3

デバイスR4

手順

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

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

IS-ISデフォルトのルートポリシーを設定します。

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

  2. インターフェイス上で、OSPFまたは別の内部ゲートウェイプロトコル(IGP)を有効にします。

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

  4. ルーティングポリシーを有効にします。

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

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

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

結果

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

検証

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

BGPルート学習の検証

目的

ルーティングテーブルを確認して、BGPエクスポートポリシーが期待通りに機能していることを確認します。

アクション

説明

デバイスR1は、show route protocol directコマンドに2つのダイレクトルートを表示します:172.16.1.1/32および10.10.10.0/30。show route protocol staticコマンドは、2つのスタティックルートを表示します:192.168.0.1/32および192.168.20.1/32。

デバイスR2では、show route protocol bgpコマンドによって、デバイスR2がBGPで学習した唯一のルートが192.168.20.1/32ルートであることが示されています。

デバイスR3では、show route protocol bgpコマンドによって、デバイスR3がBGPで学習した唯一のルートが192.168.0.1/32ルートであることが示されています。

デバイスR4では、show route protocol bgpコマンドによって、デバイスR4がBGPで学習したルートは172.16.1.1/32および10.10.10.0/30ルートのみであることが示されています。

BGPルート受信の検証

目的

デバイスR1から受信したBGPルートをチェックし、BGPのエクスポートポリシーが期待通りに機能していることを確認します。

アクション

説明

デバイスR2では、route receive-protocol bgp 172.16.1.1コマンドによって、デバイスR2はデバイスR1から1つのBGPルート192.168.20.1/32のみを受け取っていることが示されています。

デバイスR3では、route receive-protocol bgp 172.16.1.1コマンドによって、デバイスR3がデバイスR1から1つのBGPルート192.168.0.1/32のみを受け取っていることが示されています。

デバイスR4では、route receive-protocol bgp 172.16.1.1コマンドによって、デバイスR4がデバイスR1から2つのBGPルート172.16.1.1/32および10.10.10.0/30を受け取っていることが示されています。

要約すると、BGPの異なるCLI階層に複数のポリシーが適用される場合、最も具体的なアプリケーションのみが評価され、より具体性に欠ける他のアプリケーションは除外されます。このポイントは理にかなっているように見えますが、ルーターの設定時には忘れられがちです。ネイバーレベルのポリシーがグローバルポリシーまたはグループレベルのポリシーと組み合わされていると勘違いして、ポリシーの動作が予想と異なるのに気づくのです。