PIM フィルタリングの設定
マルチキャスト メッセージ フィルタについて
マルチキャスト ソースとルーターは、特に PIM スパース モードを使用する場合に、かなりの数の制御メッセージを生成します。これらのメッセージは、分散ツリーを形成し、ランデブー ポイント(RP)と指定ルーター(DR)を特定し、ツリーのタイプを別のタイプに移行します。ほとんどの場合、このマルチキャスト メッセージング システムは透過的かつ効率的に動作します。ただし、一部の設定では、マルチキャスト制御メッセージの送受信をより詳細に制御する必要があります。
マルチキャスト 制御メッセージの送受信を制御するようにマルチキャスト フィルタリングを設定できます。
不正なグループとソースが RP ルーターに登録されないようにするには、ルーティング ポリシーを定義して、特定のグループとソースからの PIM 登録メッセージを拒否し、指定されたルーターまたは RP ルーターでポリシーを設定します。
RP ルーターでリジェクト ポリシーを設定すると、指定したグループとソースからの受信 PIM 登録メッセージが拒否されます。RP ルーターはまた、ユニキャストを使用して指定されたルーターにレジスタ ストップ メッセージを送信します。レジスタ停止メッセージを受信すると、指定されたルーターは、指定されたグループとソースの定期的な NULL レジスタ メッセージを RP ルーターに送信します。
指定されたルーターでリジェクト ポリシーを設定すると、指定したグループとソースの PIM レジスタ メッセージが RP ルーターに送信されなくなります。
RP ルーターでリジェクト ポリシーを設定している場合は、マルチキャスト ネットワーク内のすべての RP ルーターで同じポリシーを設定することをお勧めします。
RP ルーターで設定されたリジェクト ポリシーからグループと送信元アドレスを削除し、設定をコミットすると、指定したルーターが null レジスタ メッセージを送信した場合にのみ、RP ルーターがグループと送信元を登録します。
「」も参照
MAC アドレスのフィルタリング
ルーターがインターフェイス上でマルチキャスト プロトコルを使用して排他的に設定されている場合、マルチキャストはインターフェイス メディア アクセス コントロール(MAC)フィルタをマルチキャスト プロミスキャス モードに設定し、マルチキャスト グループの数は無制限です。ただし、ルーターがマルチキャストや、OSPF、ルーティング情報プロトコル バージョン 2(RIPv2)、ネットワーク タイム プロトコル(NTP)などの他のプロトコルのみに使用されていない場合、これらの各プロトコルは、それぞれのマルチキャスト グループのみをピックアップするようにインターフェイス フィルタに個別に要求します。この場合、インターフェイスでマルチキャストが設定されていない場合、マルチキャスト MAC フィルタの最大数は 20 に制限されます。たとえば、OSPF(マルチキャスト グループ 224.0.0.5)などのプロトコルに対するインターフェイス MAC フィルターの最大数は、インターフェイス上でマルチキャスト プロトコルも設定されていない限り、20 です。
MAC フィルターに設定は必要ありません。
RP および DR レジスタ メッセージのフィルタリング
指定ルーター(DR)またはランデブー ポイント(RP)から送信される PIM(プロトコル独立マルチキャスト)登録メッセージをフィルタリングできます。PIM RP は、単一の PIM スパース モード ドメイン内のすべてのアクティブ ソースを追跡します。場合によっては、RP が検出するソースや、DR から他の RP に通知するソースを制御することが望ましい場合があります。RP および DR レジスタ メッセージ フィルタリングにより、PIM レジスタ メッセージを高度に制御できます。また、メッセージ フィルタリングにより、不正なグループとソースが RP ルーターに登録されるのを防ぎます。
DR でフィルタリングされた登録メッセージは RP に送信されませんが、ソースはローカル ユーザーが使用できます。RP でフィルタリングされたメッセージを、送信元DRから受信したが、ルーターでは無視されるメッセージを登録します。マルチキャスト グループ トラフィックのソースは、RP または DR レジスタ メッセージ フィルタリングを単独または一緒に使用することで、制限または誘導できます。
レジスタ フィルタ ポリシーのアクションが登録メッセージを破棄する場合、ルーターはレジスタストップ メッセージを DR に送信する必要があります。登録停止メッセージは、悪意のあるユーザーがルーティング プロセスを中断するために意図的にトリガーするのを防ぐために調整されます。
マルチキャスト グループとソース情報は、ユニキャスト IP パケット内にカプセル化されます。この機能により、ルーターは PIM レジスタ メッセージを送信または受け入れる前に、マルチキャスト グループと送信元情報を検査できます。
RP への受信登録メッセージは、以降の処理を行う前に、設定されたレジスタ メッセージ フィルタリング ポリシーを通過します。登録メッセージが拒否された場合、RP ルーターはレジスタストップ メッセージを DR に送信します。DR が登録停止メッセージを受信すると、DR はフィルタリングされたグループとソースの登録メッセージの RP への送信を停止します。登録メッセージ フィルタリングには、次の 2 つのフィールドが使用されます。
グループ マルチキャスト アドレス
送信元アドレス
既存のポリシー ステートメントの構文を使用して、これらの 2 つのフィールドに対するフィルタリングを設定します。ステートメントは route-filter
マルチキャスト グループ アドレス フィルタリングに役立ち、 source-address-filter
ステートメントは送信元アドレス フィルタリングに役立ちます。ほとんどの場合、アクションは登録メッセージを 拒否 することですが、より複雑なフィルタリング ポリシーが可能です。
DR アドレス、プロトコル、ポートなど、他のヘッダー フィールドではフィルタリングを実行できません。一部の設定では、ポリシー アクションが登録メッセージを破棄する場合、RP が登録停止メッセージを送信しない場合があります。これは機能の動作には影響しませんが、ルーターは引き続き登録メッセージを受信します。
エニキャストRPが設定されている場合、登録メッセージはRPによって送受信できます。エニキャスト RP セット内のすべての RP は、同じ RP レジスタ メッセージ フィルタリング ポリシーを使用して設定する必要があります。そうしないと、フィルタリング ポリシーを回避できる可能性があります。
「」も参照
MSDP SA メッセージのフィルタリング
グループやソースの SA がネットワーク内外で漏洩するのを防ぐために、すべての外部 MSDP セッション(イン/アウト)に MSDP ソース アクティブ(SA)フィルターを適用するとともに、ブートストラップ ルーター(BSR)フィルターを適用する必要があります。BSR フィルターをネットワークの境界に適用すると、外部 BSR メッセージ(RP アドレスを通知)がネットワークに漏洩するのを防ぐことができます。PIM スパースモード ドメイン内のルーターは、1 つの RP ルーターのアドレスを知る必要があるため、ネットワークに複数のルーターを持つことで問題が発生する可能性があります。
マルチキャスト スコーピングを使用して、すべての顧客対応インターフェイスの境界フィルターを作成しなかった場合は、PIM 参加フィルターを使用できます。マルチキャスト スコープは、実際のマルチキャスト データ パケットがインターフェイス内またはインターフェイスから流れ出ないようにします。PIM 結合フィルターは、PIM スパース モードの状態が最初に作成されるのを防ぎます。PIM 参加フィルターは PIM スパース モードの状態にのみ適用されるため、マルチキャスト スコーピングを使用して実際のデータをフィルターする方が有益な場合があります。
ファイアウォール フィルター、 ログ、 サンプル、 カウントなどのファイアウォール アクション修飾子を適用する場合、インバウンド インターフェイスにフィルターを適用する場合にのみ機能します。修飾子は、アウトバウンド インターフェイスでは機能しません。
「」も参照
インターフェイスレベル PIM ネイバー ポリシーの設定
不要な PIM ネイバーをフィルタリングするようにポリシーを設定できます。次の例では、PIM インターフェイスは、hello 処理が行われる前に、ネイバー IP アドレスをポリシー ステートメントの IP アドレスと比較します。いずれかのネイバー IP アドレス(プライマリまたはセカンダリ)がプレフィックス リストで指定された IP アドレスと一致する場合、PIM は hello パケットを破棄してネイバーを拒否します。
PIM が不要な PIM ネイバーへの隣接関係をすでに確立した後に PIM ネイバー ポリシーを設定した場合、隣接関係はネイバーの保持時間が切れるまでそのまま維持されます。不要なネイバーが隣接関係を更新するために別の hello メッセージを送信すると、ルーターは不要なアドレスを認識してネイバーを拒否します。
不要な PIM ネイバーをフィルタリングするポリシーを設定するには、次の手順に示します。
「」も参照
送信 PIM 結合メッセージのフィルタリング
ネットワークのコアが MPLS を使用している場合、PIM ジョインおよびプルニング メッセージはカスタマー エッジ(CE)ルーターで停止し、コアに向けて転送されません。なぜなら、これらのルーターにはコア側のインターフェイスに PIM ネイバーがないためです。ネットワークのコアで IP を使用している場合、PIM join メッセージとプルーニング メッセージは、ネットワークコアのアップストリーム PIM ネイバーに転送されます。
ネットワークのコアで IP と MPLS の組み合わせを使用している場合、特定の PIM ジョインをフィルタリングし、CE ルーターのアップストリームエグレス インターフェイスでメッセージを削除できます。
PIM スパース モード(PIM-SM)の参加をフィルタリングし、アップストリーム方向の IPv4 および IPv6 のエグレス インターフェイスでメッセージを削除できます。メッセージは、グループ アドレス、送信元アドレス、送信インターフェイス、PIM ネイバー、またはこれらの値の組み合わせに基づいてフィルタリングできます。フィルターが削除された場合、PIM 定期的な参加タイマーが期限切れになった後、結合が送信されます。
PIM スパース モードの参加をフィルタリングし、エグレス インターフェイスでメッセージを削除するには、グループ アドレス、送信元アドレス、発信インターフェイス、または PIM ネイバーを拒否するポリシーを作成し、ポリシーを適用します。
次の例では、グループ アドレス 224.0.1.2 および 225.1.1.1 の PIM 結合および廃棄メッセージをフィルター処理します。
「」も参照
例:指定ルーターでの発信PIM登録メッセージの停止
この例では、指定されたルーター上で送信 PIM レジスタ メッセージを停止する方法を示しています。
要件
開始する前に、以下を行います。
ルーターがマルチキャスト ソースに直接接続されているかどうかを判断します。レシーバーは、これらのソースを見つけ出せる必要があります。
ルーターがマルチキャスト グループ レシーバに直接接続されているかどうかを判断します。レシーバが存在する場合は、IGMP が必要です。
スパース モード、デンス モード、スパース デンス モードのどちらを使用するようにマルチキャストを設定するかを決定します。モードごとに設定に関する考慮事項が異なります。
スパース モードまたはスパースデンス モードを使用する場合は、RP のアドレスを決定します。
静的設定、BSR、または自動 RP 方式を使用して RP を検索するかどうかを決定します。
PIM をスパース、デンス、またはスパース デンス モードで設定する際に、独自の RPF ルーティング テーブルを使用するようにマルチキャストを設定するかどうかを決定します。
マルチキャスト セッションのお知らせをリッスンするように SAP および SDP プロトコルを設定します。
IGMP を設定します。
PIM 静的 RP を設定します。
不正なグループとソースからの PIM レジスタ メッセージをフィルタリングします。例 :RPルーターでの受信PIM登録メッセージの拒否を参照してください。
概要
この例では、グループ アドレスを 224.2.2.2/32 、グループの送信元アドレスを 20.20.20.1/32 として設定します。グループと送信元アドレスに対して PIM 登録メッセージを送信しないように照合アクションを設定します。次に、指定されたルーターで stop-pim-register-msg-dr にポリシーを設定します。
構成
手順
CLI クイック設定
この例を迅速に設定するには、次のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致するために必要な詳細情報を変更してから、コマンドを階層レベルで [edit]
CLI にコピーアンドペーストします。
set policy-options policy-statement stop-pim-register-msg-dr from route-filter 224.2.2.2/32 exact set policy-options policy-statement stop-pim-register-msg-dr from source-address-filter 20.20.20.1/32 exact set policy-options policy-statement stop-pim-register-msg-dr then reject set protocols pim rp dr-register-policy stop-pim-register-msg-dr
手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、Junos OS CLI ユーザー ガイドの「設定モードでの CLI エディターの使用」を参照してください。
指定されたルーターで送信 PIM 登録メッセージを停止するには、次の手順に基づいて、以下の手順に基づいてメッセージを送信します。
ポリシー オプションを設定します。
[edit] user@host# edit policy-options
グループ アドレスを設定します。
[edit policy-options] user@host# set policy statement stop-pim-register-msg-dr from route-filter 224.2.2.2/32 exact
送信元アドレスを設定します。
[edit policy-options] user@host# set policy statement stop-pim-register-msg-dr from source-address-filter 20.20.20.1/32 exact
照合アクションを設定します。
[edit policy-options] user@host# set policy statement stop-pim-register-msg-dr then reject
ポリシーを割り当てます。
[edit] user@host# set dr-register-policy stop-pim-register-msg-dr
結果
設定モードから、and show protocols
コマンドを入力して設定をshow policy-options
確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
[edit] user@host#show policy-options
policy-statement stop-pim-register-msg-dr { from { route-filter 224.2.2.2/32 exact; source-address-filter 20.20.20.1/32 exact; } then reject; } [edit] user@host#show protocols
pim { rp { dr-register-policy stop-pim-register-msg-dr; } }
デバイスの設定が完了したら、設定モードから commit と入力します。
検証
設定が正しく機能していることを確認するには、次のタスクを実行します。
SAP および SDP アドレスとポートの検証
目的
SAP と SDP が正しいグループ アドレスとポートをリッスンするように構成されていることを確認します。
アクション
動作モードから、コマンドを show sap listen
入力します。
IGMP バージョンの検証
目的
該当するすべてのインターフェイスで IGMP バージョン 2 が設定されていることを確認します。
アクション
動作モードから、コマンドを show igmp interface
入力します。
PIM モードとインターフェイス設定の検証
目的
PIM スパース モードが該当するすべてのインターフェイスで設定されていることを確認します。
アクション
動作モードから、コマンドを show pim interfaces
入力します。
受信 PIM 結合メッセージのフィルタリング
マルチキャスト スコーピングは、マルチキャスト メッセージの伝搬を制御します。マルチキャスト スコーピングでは、実際のマルチキャスト データ パケットがインターフェイス内またはインターフェイス外を流れるのを防ぎますが、PIM 参加フィルターはルーターに状態が作成されることを防ぎます。状態((*,G)または(S,G)エントリーは、ユニキャストまたはマルチキャスト パケットの転送に使用される情報です。PIM 結合フィルターを使用すると、ネットワーク全体でマルチキャスト トラフィックが転送されるのを防ぎ、ネットワークのエッジのスコープでパケットがドロップされるのを防ぎます。また、PIM 結合フィルターは、サービス拒否(DoS)攻撃や PIM 状態の爆発の可能性を低減します。つまり、大量の PIM 結合メッセージがランデブー ポイント ツリー(RPT)上の各ルーターに転送されるため、メモリ消費が発生します。
PIM 結合フィルターを使用して特定のソース アドレスからのマルチキャスト トラフィックを効率的に制限するには、ネットワーク内のすべてのルーターにルーティング ポリシーを作成して適用します。
照合条件のリストについては、 表 1 を参照してください。
照合条件 |
マッチオン |
---|---|
インターフェイス |
名前または IP アドレスで指定されたルーター インターフェイスまたはインターフェイス |
隣人 |
ネイバー アドレス(ジョインおよびプルーニング メッセージの IP ヘッダー内の送信元アドレス) |
ルート フィルター |
結合および削除メッセージに埋め込まれたマルチキャスト グループ アドレス |
送信元アドレスフィルター |
結合およびプルーニング メッセージに埋め込まれたマルチキャスト 送信元アドレス |
次の例では、PIM 結合フィルターを作成する方法を示しています。このフィルタは、ルート フィルタと送信元アドレス フィルタ(bad-groups と bad-source )でそれぞれ構成 されます。 bad-groups フィルターは、リストされているすべてのグループに対して(S,G)結合メッセージを受信できないようにします。 不正ソース フィルターは、リストされているすべてのソースに対して(S、G)結合メッセージを受信できないようにします。 bad-groups フィルターと bad-sources フィルターは 2 つの異なる条件で使用されます。ルート フィルタと送信元アドレス フィルタが同じ条件にある場合は、論理的に ANDed されます。
受信した PIM 結合メッセージをフィルタリングするには、次の手順に示します。
「」も参照
例:RPルーターでの受信PIMレジスタメッセージの拒否
この例では、RP ルーターで受信 PIM レジスタ メッセージを拒否する方法を示しています。
要件
開始する前に、以下を行います。
ルーターがマルチキャスト ソースに直接接続されているかどうかを判断します。レシーバーは、これらのソースを見つけ出せる必要があります。
ルーターがマルチキャスト グループ レシーバに直接接続されているかどうかを判断します。レシーバが存在する場合は、IGMP が必要です。
スパース モード、デンス モード、スパース デンス モードのどちらを使用するようにマルチキャストを設定するかを決定します。モードごとに設定に関する考慮事項が異なります。
スパース モードまたはスパースデンス モードを使用する場合は、RP のアドレスを決定します。
静的設定、BSR、または自動 RP 方式を使用して RP を検索するかどうかを決定します。
PIM をスパース、デンス、またはスパース デンス モードで設定する際に、独自の RPF ルーティング テーブルを使用するようにマルチキャストを設定するかどうかを決定します。
マルチキャスト セッションのお知らせをリッスンするように SAP および SDP プロトコルを設定します。 セッション通知プロトコルの設定を参照してください。
IGMP を設定します。 IGMP の設定を参照してください。
PIM 静的 RP を設定します。 「静的 RP の設定」を参照してください。
概要
この例では、グループ アドレスを 224.1.1.1/32 、グループ内の送信元アドレスを 10.10.10.1/32 として設定します。PIM 登録メッセージを拒否し、reject-pim-register-msg-rp を RP のポリシーとして割り当てる照合アクションを設定します。
構成
手順
CLI クイック設定
この例を迅速に設定するには、次のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致するために必要な詳細情報を変更し、コマンドを階層レベルで [edit]
CLI にコピー アンド ペーストしてから、設定モードから入力 commit
します。
set policy-options policy-statement reject-pim-register-msg-rp from route-filter 224.1.1.1/32 exact set policy-options policy-statement reject-pim-register-msg-rp from source-address-filter 10.10.10.1/32 exact set policy-options policy-statement reject-pim-register-msg-rp then reject set protocols pim rp rp-register-policy reject-pim-register-msg-rp
手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、Junos OS CLI ユーザー ガイドの「設定モードでの CLI エディターの使用」を参照してください。
RP ルーター上の受信 PIM 登録メッセージを拒否するには、次の手順にしたがっています。
ポリシー オプションを設定します。
[edit] user@host# edit policy-options
グループ アドレスを設定します。
[edit policy-options] user@host# set policy statement reject-pim-register-msg-rp from route-filter 224.1.1.1/32 exact
送信元アドレスを設定します。
[edit policy-options] user@host# set policy statement reject-pim-register-msg-rp from source-address-filter 10.10.10.1/32 exact
照合アクションを設定します。
[edit policy-options] user@host# set policy statement reject-pim-register-msg-rp then reject
プロトコルを設定します。
[edit] user@host# edit protocols pim rp
ポリシーを割り当てます。
[edit] user@host# set rp-register-policy reject-pim-register-msg-rp
結果
設定モードから、and show protocols pim
コマンドを入力して設定をshow policy-options
確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
[edit] user@host#show policy-options
policy-statement reject-pim-register-msg-rp { from { route-filter 224.1.1.1/32 exact; source-address-filter 10.10.10.1/32 exact; } then reject; } [edit] user@host#show protocols pim
rp { rp-register-policy reject-pim-register-msg-rp; }
デバイスの設定が完了したら、設定モードから commit と入力します。
検証
設定が正しく機能していることを確認するには、次のタスクを実行します。
SAP および SDP アドレスとポートの検証
目的
SAP と SDP が正しいグループ アドレスとポートをリッスンするように構成されていることを確認します。
アクション
動作モードから、コマンドを show sap listen
入力します。
IGMP バージョンの検証
目的
該当するすべてのインターフェイスで IGMP バージョン 2 が設定されていることを確認します。
アクション
動作モードから、コマンドを show igmp interface
入力します。
PIM モードとインターフェイス設定の検証
目的
PIM スパース モードが該当するすべてのインターフェイスで設定されていることを確認します。
アクション
動作モードから、コマンドを show pim interfaces
入力します。
PIM RP および DR の登録メッセージ フィルタの設定
PIM レジスタ メッセージは、指定されたルーター(DR)によってランデブー ポイント(RP)に送信されます。グループの送信元が送信を開始すると、DR はユニキャスト PIM 登録パケットを RP に送信します。
登録メッセージの目的は次のとおりです。
送信元がグループに送信していることを RP に通知します。
ソースから送信された最初のマルチキャスト パケットを RP に配信して、最短パス ツリー(SPT)を配信します。
PIM RP は、単一の PIM スパース モード ドメイン内のすべてのアクティブ ソースを追跡します。場合によっては、RP が検出したソースや、DR が他の RP に通知するソースをより詳細に制御する必要があります。RP または DR レジスタ メッセージ フィルタリングにより、PIM レジスタ メッセージを高度に制御できます。メッセージ フィルタリングにより、不正なグループとソースが RP ルーターに登録されるのを防ぎます。
RP または DR 登録メッセージ フィルタリングを設定して、RP が検出するマルチキャスト ソースの数と場所を制御します。DR に登録メッセージ フィルターを適用して送信登録メッセージを制御したり、RP に適用して受信登録メッセージを制御したりできます。
エニキャスト RP が設定されている場合、エニキャスト RP セット内のすべての RP を同じ登録メッセージ フィルタリング ポリシーで設定する必要があります。
メッセージ フィルタリングは、グローバルに設定することも、ルーティング インスタンスに対して設定することもできます。これらの例は、グローバル設定を示しています。
送信元アドレス 10.10.94.2 からマルチキャスト グループ範囲 224.1.1.0/24 のレジスタ パケットをドロップするように RP フィルタを設定するには、次の手順に従います。
DR フィルターを設定して、グループ範囲 224.1.1.0/24 および送信元アドレス 10.10.10.1/32 のレジスタ パケットの送信を防止するには、次の手順に従います。
DR でポリシーを設定します。
[edit policy-options policy-statement outgoing-policy-for-rp] user@host# set from route-filter 224.1.1.0/24 orlonger user@host# set from source-address-filter 10.10.10.1/32 exact user@host# set then reject user@host# exit
ポリシーを DR に適用します。
静的アドレスは、DR がフィルタリングされたレジスタ メッセージを送信しないようにする RP のアドレスです。
[edit protocols pim rp] user@host# set dr-register-policy outgoing-policy-for-dr user@host# set static 10.10.10.3 user@host# exit
マルチキャスト グループ 224.1.1.5 の登録メッセージを受け入れるが、224.1.1.1 のメッセージを拒否するようにポリシー式を設定するには、次の手順に従います。
RP でポリシーを設定します。
[edit policy-options policy-statement reject_224_1_1_1] user@host# set from route-filter 224.1.1.0/24 orlonger user@host# set from source-address-filter 10.10.94.2/32 exact user@host# set then reject user@host# exit
[edit policy-options policy-statement accept_224_1_1_5] user@host# set term one from route-filter 224.1.1.5/32 exact user@host# set term one from source-address-filter 10.10.94.2/32 exact user@host# set term one then accept user@host# set term two then reject user@host# exit
ポリシーを RP に適用します。
[edit protocols pim rp] user@host# set rp-register-policy [ reject_224_1_1_1 | accept_224_1_1_5 ] user@host# set local address 10.10.10.5
フィルターの操作を監視するには、コマンドを show pim statistics
実行します。コマンド出力には、フィルタリングに関連する以下のフィールドが含まれています。
RP フィルタリング されたソース
Rx Joins/Prunes filtered
Tx Joins/Prunes フィルタリング
Rx レジスタ msgs フィルタリング ドロップ
Tx レジスタ msgs フィルタリング ドロップ