Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

動的ルーティング ポリシーの理解

設定変更をコミットするために必要な検証プロセスには、多大なオーバーヘッドと時間がかかります。例えば、20,000行の長さのルーティングポリシーの1行のプレフィックスを変更すると、コミットに最大20秒かかることがあります。ルーティングポリシーの変更をより迅速にコミットできると便利です。

Junos OS リリース 9.5 以降では、ルーティング ポリシーおよび特定のルーティング ポリシー オブジェクトを動的データベースに設定できますが、このオブジェクトは標準設定データベースで必要とされるものと同じ検証の対象ではありません。その結果、動的データベースへの変更をコミットするのにかかる時間は、標準構成データベースの場合よりもはるかに短くなります。その後、標準データベースで設定したルーティングポリシーで、これらのポリシーおよびポリシーオブジェクトを参照できます。BGPは、動的データベースで設定されたポリシーおよびポリシーオブジェクトを参照するルーティングポリシーを適用できる唯一のプロトコルです。動的データベースに設定されたオブジェクトに基づいてルーティング・ポリシーを構成してコミットした後、動的データベース構成に変更を加えることによって、既存のルーティング・ポリシーを迅速に更新することができます。

注意:

Junos OSは、動的データベースの設定変更を検証しません。この機能を使用する際、コミットする前にすべての設定変更をテストおよび検証する必要があります。

動的データベースでのルーティングポリシーとポリシーオブジェクトの設定

Junos OS リリース 9.5 以降では、構成データベースである 動的データベースがサポートされます。これは標準構成データベースと同様の方法で編集できますが、構成変更をコミットするための同じ検証プロセスの対象にはなりません。その結果、設定変更のコミットにかかる時間が大幅に短縮されます。動的データベースで定義されたポリシーとポリシーオブジェクトは、標準設定で設定されたルーティングポリシーで参照できるようになります。動的データベースは、 /var/run/db/juniper.dyn ディレクトリに格納されます。

動的データベースを設定するには、 configure dynamic コマンドを入力して動的データベースの設定モードを開始します。

この動的構成データベースでは、 [edit policy-options] 階層レベルで以下のステートメントを構成できます。

  • as-path name

  • as-path-group group-name

  • community community-name

  • condition condition-name

  • prefix-list prefix-list-name

  • policy-statement policy-statement-name

注:

[edit dynamic]階層レベルでは他の設定はサポートされていません。

policy-statement policy-statement-name ステートメントを使用して、標準設定データベースの場合と同様にルーティング ポリシーを設定します。

動的データベースの設定モードを終了するには、[edit dynamic]階層内の任意のレベルから exit configuration-mode コマンドを発行するか、最上位レベルから exit コマンドを使用します。

動的データベース設定に基づくルーティング ポリシーの設定

標準設定モードでは、動的データベースの [edit dynamic] 階層レベルで設定されたポリシーおよびポリシー オブジェクトを参照するルーティング ポリシーを設定できます。動的データベース構成を参照するルーティング・ポリシーを定義するには、[edit policy-options policy-statement policy-statement-name]階層レベルで dynamic-db ステートメントを含めます。

また、動的データベース内のこれらのオブジェクトの設定に基づいて、特定のポリシー オブジェクトを定義することもできます。動的データベースに基づいてポリシー オブジェクトを定義するには、[edit policy-options]階層レベルで以下のステートメントを含む dynamic-db ステートメントを含めます。

  • as-path name

  • as-path-group group-name

  • community community-name

  • condition condition-name

  • prefix-list prefix-list-name

標準設定では、動的データベースで設定されたオブジェクトを参照する標準設定で設定したポリシーオブジェクトを参照するルーティングポリシーを定義することもできます。

たとえば、標準コンフィギュレーションモードでは、ダイナミックデータベースで設定されたプレフィックスリスト(別名prefix-list pl2)を参照するプレフィックスリストprefix-list pl2を設定します。

次に、以下を含む標準設定でルーティング ポリシー prefix-list pl2を設定します。

prefix-list pl2 の構成を更新する必要がある場合は、動的データベース構成で [edit dynamic] 階層レベルを使用して更新します。これにより、標準構成データベースで行うよりも迅速に、プレフィックスリストに対するコミット設定の変更を行うことができます。

注:

Junos OSをJunos OSリリース9.4以前にダウングレードする場合は、まず動的データベースを参照しているルーティング・ポリシーを削除する必要があります。つまり、 dynamic-db ステートメントで設定されたルーティングポリシーまたはポリシーオブジェクトを削除する必要があります。

BGP への動的ルーティング ポリシーの適用

BGPは、動的データベース設定を参照するルーティングポリシーを適用できる唯一のルーティングプロトコルです。これらのポリシーは、標準構成で適用する必要があります。ダイナミックポリシーは、BGPエクスポートまたはインポートポリシーに適用できます。また、グローバル、グループ、またはネイバー階層レベルで適用することもできます。

BGP エクスポート ポリシーを適用するには、[edit protocols bgp][edit protocols bgp group group-name]、または [edit protocols bgp group group-name neighbor address] 階層レベルで export [ policy-names ] ステートメントを含めます。

BGP インポート ポリシーを適用するには、[edit protocols bgp][edit protocols bgp group group-name]、または [edit protocols bgp group group-name neighbor address] 階層レベルで import [ policy-names ] ステートメントを含めます。

動的データベースで設定されたポリシーを参照する [edit policy-options policy-statement] 階層レベルで、その標準設定で設定された1つ以上のポリシー名を含めます。

NSRルーティングエンジンスイッチオーバー後のBGPピアリングセッションの再確立の防止

アクティブなノンストップルーティング(NSR)を有効にしている場合、動的データベースはバックアップルーティングエンジンと同期されません。その結果、バックアップのルーティングエンジンに切り替えた場合、スイッチオーバー時にプライマリルーティングエンジンで実行されていたインポートおよびエクスポートポリシーが利用できなくなる可能性があります。そのため、スイッチオーバーが発生した直後にBGPピアリングセッションが自動的に再確立されないようにしたい場合があります。

指定した期間、または手動でセッションを再確立するまで、アクティブなノンストップルーティングスイッチオーバー後にBGPピアリングセッションを再確立しないようにルーターを設定できます。[edit protocols bgp][edit protocols bgp group group-name]、または[edit protocols bgp group group-name neighbor address]階層レベルで idle-after-switch-over (seconds | forever) ステートメントを含めます。

seconds,には、 1 から 4,294,967,295 (2,32, – 1) の値を指定します。BGP ピアリング セッションは、指定された期間が経過するまで再確立されません。foreverオプションを指定した場合、clear bgp neighbor コマンドを発行するまで BGP ピアリングセッションは確立されません。