ポリシーフレームワークの概要
Junos® オペレーティングシステム(Junos OS)には、ルーティング情報とパケットのフローを制御できるJunos OSポリシーの集合体である ポリシーフレームワークが用意されています。
Junos OSポリシーアーキテクチャは、シンプルでわかりやすいものです。ただし、各ポリシーを実際に実装すると、ポリシーが複雑になり、ルーターの機能にパワーと柔軟性が加わります。ポリシーの設定は、ルーター内およびを通過するルーティング情報またはパケットのフローに大きな影響を与えます。例えば、特定の顧客に関連するルートをルーティングテーブルに配置することを許可しないルーティングポリシーを設定することができます。このルーティングポリシーの結果として、顧客ルートはデータパケットをさまざまな宛先に転送するために使用されず、ルートはルーティングプロトコルによってネイバーにアドバタイズされません。
ポリシーを設定する前に、ポリシーで何を達成したいかを決定し、さまざまな一致条件とアクションを使用して目標を達成する方法を十分に理解します。また、設定するポリシーのデフォルトポリシーとアクションについて理解していることを確認してください。
ルーティングポリシーおよびファイアウォールフィルター
ポリシーフレームワークは、以下のポリシーで構成されています。
ルーティングポリシー—ルーティングプロトコルとルーティングテーブル間、およびルーティングテーブルと転送テーブル間のルーティング情報を制御できます。すべてのルーティングプロトコルは、Junos OSルーティングテーブルを使用して、学習したルートを格納し、プロトコルパケットでどのルートをアドバタイズすべきかを決定します。ルーティングポリシーを使用すると、ルーティングプロトコルがどのルートをルーティングテーブルに格納し、どのルートから取得するかを制御できます。
ファイアウォールフィルター ポリシー—ネットワーク宛先にルーターを通過するパケットと、ルーターを宛先とするパケットを制御できます。
注:ここでは、 ファイアウォールフィルター ポリシーという用語を使用して、ファイアウォールフィルターがポリシーであり、ルーティングポリシーといくつかの基本的な類似点を共有していることを強調するために使用します。ただし、このマニュアルの残りの部分でファイアウォールフィルターポリシーを参照する場合は、 ファイアウォールフィルター という用語が使用されます。
ルーティングポリシーを作成する理由
以下に示す一般的な状況は、独自のルーティングポリシーを作成することで、ルーティングルーティングポリシーフレームワークのデフォルトルーティングポリシーをプリエンプトしたい場合があります。
プロトコルがすべてのルートをルーティングテーブルにインポートすることは望ましくありません。ルーティングテーブルが特定のルートについて学習しなければ、そのルートをパケットの転送に使用したり、他のルーティングプロトコルに再配布したりすることはできません。
ルーティングプロトコルが学習したすべてのアクティブなルートをエクスポートすることは望ましくありません。
ルーティングプロトコルが、別のルーティングプロトコルから学習したアクティブなルートを知らせたい場合、これは ルート再分配とも呼ばれます。
優先値、ASパス、コミュニティなどのルート特性を操作したい場合。ルート特性を操作して、目的地に到達するためのアクティブなルートとして選択するルートを制御できます。一般に、アクティブなルートはルーターのネイバーにもアドバタイズされます。
デフォルトのBGPルートフラップダンピングパラメーターを変更したい場合。
パケット単位のロードバランシングを実行したい場合。
サービスクラス(CoS)を有効にしたいと考えています。
ポリシーに影響されるルーターフロー
Junos OSポリシーは、以下のルーターフローに影響します。
ルーティングプロトコルとルーティングテーブル間、およびルーティングテーブルと転送テーブル間のルーティング情報のフロー。このフローは、ルーティングエンジンが処理します。 ルーティング情報 とは、ルーティングプロトコルがルーターのネイバーから学習したルートに関する情報です。この情報はルーティングテーブルに保存され、その後、ルーティングプロトコルによってルーターのネイバーにアドバタイズされます。ルーティングポリシーでは、この情報のフローを制御できます。
ルーターの物理インターフェイスに出入りするデータパケットのフロー。このフローは、パケット転送エンジンが処理します。 データパケット は、送信元から宛先に転送される際にルーターを通過するデータのチャンクです。ルーターがインターフェイス上でデータパケットを受信すると、宛先への最適なルートを転送テーブルで探して、パケットの転送先を決定します。次に、ルーターは、適切なインターフェイスを介してデータパケットを宛先に転送します。ファイアウォールフィルターを使用すると、これらのデータパケットのフローを制御できます。
ルーターの物理インターフェイスからルーティングエンジンへのローカルパケットのフロー。このフローは、ルーティングエンジンが処理します。 ローカルパケット は、ルーター宛てのデータ、またはによって送信されるデータのチャンクです。ローカルパケットには通常、ルーティングプロトコルのデータ、TelnetやSSHなどのIPサービスのデータ、ICMP(Internet Control Message Protocol)などの管理プロトコルのデータが含まれています。ルーティングエンジンは、ローカルパケットを受信すると、そのパケットを適切なプロセスまたはカーネル(どちらもルーティングエンジンの一部であるルーティングエンジン)、またはパケット転送エンジンに転送します。ファイアウォールフィルターを使用すると、これらのローカルパケットのフローを制御できます。
注:この章の残りの部分では、特に明記されていない限り、 パケット という用語はデータパケットとローカルパケットの両方を指します。
図1 は、ルーターを通過する流れを示しています。フローは互いに大きく異なりますが、相互依存でもあります。ルーティングポリシーは、転送テーブルに配置されるルートを決定します。また、転送テーブルは、パケットの転送に適切な物理インターフェイスを決定する上で不可欠な役割を果たします。
のフロー
ルーティングポリシーを設定して、ルーティングプロトコルがルーティングテーブルに配置するルートを制御し、ルーティングプロトコルがルーティングテーブルからアドバタイズするルートを制御することができます( 図2を参照)。ルーティングプロトコルは、ルーティングテーブルからのみアクティブなルートをアドバタイズします。( アクティブルート とは、目的地に到達するためにルーティングテーブル内のすべてのルートから選択されるルートです。
ルーティングポリシーを使用して、以下を実行することもできます。
特定のルート特性を変更することで、目的地に到達するためのアクティブなルートとして選択されるルートを制御できます。一般に、アクティブなルートはルーターのネイバーにもアドバタイズされます。
デフォルトのBGPルートフラップダンピング値に変更します。
パケット単位のロードバランシングを実行します。
サービスクラス(CoS)を有効にします。
を制御するルーティングポリシー
ファイアウォールフィルターを設定して、パケットフローの次の側面を制御できます( 図3を参照)。
物理インターフェイスで受け入れ、物理インターフェイスから送信されるデータパケット。データパケットのフローを制御するには、物理インターフェイスにファイアウォールフィルターを適用します。
どのローカルパケットが物理インターフェイスからルーティングエンジンに送信されるか。ローカルパケットを制御するには、ルーティングエンジンへのインターフェイスであるループバックインターフェイスにファイアウォールフィルターを適用します。
ファイアウォールフィルターは、ルーターを通過してネットワーク宛先に到達するトラフィックや、ルーティングエンジンに向かう過剰なトラフィックからルーターを保護する手段を提供します。ローカルパケットを制御するファイアウォールフィルターは、サービス拒否攻撃などの外部インシデントからルーターを保護することもできます。
を制御するファイアウォールフィルター
制御ポイント
すべてのポリシーには、ルーターを介したルーティング情報またはパケットを制御できる 2 つのポイントが用意されています( 図 4 を参照)。これらの制御ポイントを使用すると、以下を制御できます。
ルーティングテーブルに配置される前後のルーティング情報
転送テーブル検索前後のデータパケット
ルーティングエンジンが受信する前後のローカルパケット。(図4 は1つの制御ポイントしか示していないように見えますが、ローカルパケットは双方向のフローであるため、実際には2つの制御ポイントが存在します。)
2つの制御ポイントがあるため、それぞれのテーブルとの対話の前後にルーティング情報やデータパケットを制御するポリシーと、ルーティングエンジンとの対話の前後にローカルパケットを制御するポリシーを設定することができます。 インポート ルーティング ポリシー はルーティング テーブルに配置されるルーティング情報を制御し、 エクスポート ルーティング ポリシー はルーティング テーブルからアドバタイズされるルーティング情報を制御します。 入力ファイアウォールフィルターは ルーターインターフェイスで受信したパケットを制御し、 出力ファイアウォールフィルターは ルーターインターフェイスから送信されるパケットを制御します。
ポリシーコンポーネント
すべてのポリシーは、設定する以下のコンポーネントで構成されています。
一致条件—ルートまたはパケットを比較する基準。1つ以上の基準を設定できます。すべての条件が一致する場合、1つ以上のアクションが適用されます。
アクション—すべての基準が一致した場合の動作1つ以上のアクションを設定できます。
用語—一致条件とアクションが定義される名前付き構造。1つ以上の用語を定義できます。
ポリシー フレームワーク ソフトウェアは、各着信および発信ルートまたはパケットを条件内の一致条件に対して評価します。一致条件の基準が満たされると、定義されたアクションが実行されます。
一般に、ポリシー フレームワーク ソフトウェアは、ポリシーの最初の条件の一致条件とルートまたはパケットを比較し、次の条件に進むという具合を繰り返します。そのため、ポリシー内で用語を並べる順序は重要です。
アクションを実行するには、ルートまたはパケットが項内のすべての一致条件に一致する必要があるため、条件内の一致条件の順序は関係ありません。