例:マルチキャスト スヌーピングの設定
マルチキャストスヌーピングについて
ルーターなどのネットワークデバイスは、主にパケットレベル(レイヤー3)で動作します。ブリッジやLANスイッチなどの他のネットワークデバイスは、主にフレームレベルまたはレイヤー2で動作します。マルチキャストは主にパケット レベルのレイヤー 3 で動作しますが、フレーム レベルでレイヤー 3 の IP マルチキャスト グループ アドレスをレイヤー 2 MAC マルチキャスト グループ アドレスにマッピングする方法もあります。
ルーターは、内部のカプセル化されたパケットにアクセスするためにフレームとそのアドレスを処理する必要があるため、レイヤー2とレイヤー3の両方のアドレス指定情報を処理できます。ルーターは、PIM や IGMP などのレイヤー 3 マルチキャスト プロトコルを実行し、マルチキャスト コンテンツの転送場所や、インターフェイス上のホストがグループに参加するタイミングや脱退するタイミングを決定できます。しかし、レイヤー2デバイスとしてのブリッジとLANスイッチは、フレームが伝送するパケット内のマルチキャスト情報にアクセスできないはずです。
では、ブリッジやその他のレイヤー 2 デバイスは、インターフェイス上のデバイスがマルチキャスト ツリーに参加するタイミングや、マルチキャスト ツリーから脱退するタイミングや、接続された LAN 上のホストが特定のマルチキャスト グループのコンテンツを受信するかどうかをどのように判断するのでしょうか。
その答えは、レイヤ2デバイスがマルチキャストスヌーピングを実装することです。マルチキャスト スヌーピングは一般的な用語で、レイヤ 2 デバイスがレイヤ 3 パケット コンテンツを「スヌーピング」して、フレームを処理または転送するために実行されるアクションを決定するプロセスに適用されます。IGMPスヌーピングやPIMスヌーピングなど、より具体的な形式のスヌーピングがあります。いずれの場合も、スヌーピングには、通常は「禁止」されているレイヤー3(パケット)情報にアクセスできる、レイヤー2で機能するように設定されたデバイスが関与します。スヌーピングは、これらのデバイスでのマルチキャストをより効率的にします。
関連項目
マルチキャストスヌーピングとVPLSルート保護について
スヌーピングは、スパニングツリープロトコルなどのレイヤー2プロトコルが、インターネットグループ管理プロトコル(IGMP)やその他のマルチキャストプロトコルなどのレイヤー3プロトコルの動作の詳細を認識している場合に発生します。スヌーピングが必要なのは、VLANスイッチなどのレイヤー2デバイスが、マルチキャストグループのメンバーのMAC(メディアアクセス制御)アドレスなどのレイヤー3情報を認識する必要がある場合です。
VPLS ルート保護 は、マルチホーム環境の 1 つのインターフェイスのみがスパニングツリープロトコルフレームをアクティブに転送するスパニングツリープロトコルプロセスです。これにより、スパニング ツリーのルートをブリッジング ループから保護しますが、マルチホーム トポロジー内の両方のデバイスが、IGMP メンバーシップ レポートなどのスヌーピングされた情報から保護されるのを防ぎます。
例えば、互いに接続され(CE1–CE2リンクが設定されている)、2つのカスタマーエッジ(CE)ルーター(CE1とCE2)に接続されたマルチキャスト対応ホストの集合と、2つのプロバイダエッジ(PE)ルーター(それぞれPE1とPE2)にマルチホームされているホストの集合を考えてみましょう。アクティブ PE は、ルート保護動作により、アクティブ PE-CE リンク上で転送されたスパニングツリープロトコル情報のみを受信します。CE1–CE2リンクが動作している限り、これは問題ではありません。しかし、CE1 と CE2 の間のリンクに障害が発生し、もう一方の PE がアクティブ スパニング ツリー プロトコル リンクになった場合、マルチキャスト スヌーピング情報は新しいアクティブ PE で利用できません。新しいアクティブPEは、マルチキャストトラフィックをCEおよびこのCEルータがサービスを提供するホストに転送しません。
ホストが新しいグループメンバーシップIGMPレポートをCEルーターに送信すると、サービス停止は修正されます。ただし、通常のスパニングツリープロトコルルート保護動作にもかかわらず、マルチキャストスヌーピング情報が両方のPEに利用可能であれば、サービス停止を回避できます。
マルチキャスト スヌーピングを設定して、仮想スイッチ上のブリッジ ドメインおよびブリッジ ドメインのデフォルト ルーティング スイッチ上のスパニング ツリー トポロジの変更に関するメッセージを無視できます。 ignore-stp-topology-change
コマンドを使用して、スパニング ツリー トポロジの変更に関するメッセージを無視できます
関連項目
マルチキャストスヌーピングの設定
MXシリーズルーターの一般的なマルチキャストスヌーピングパラメータを設定するには、 multicast-snooping-options
ステートメントを含めます。
multicast-snooping-options { flood-groups [ ip-addresses ]; forwarding-cache { threshold suppress value <reuse value>; } graceful-restart <restart-duration seconds>; ignore-stp-topology-change; multichassis-lag-replicate-state; nexthop-hold-time milliseconds; traceoptions { file filename <files number> <size size> <world-readable | no-world-readable>; flag flag <flag-modifier> <disable>; } }
以下の階層レベルでこのステートメントを含めることができます。
[edit routing-instances routing-instance-name]
[edit logical-systems logical-system-name routing-instances routing-instance-name]
デフォルトでは、マルチキャスト スヌーピングはディセーブルです。VPLSまたはインスタンス階層の仮想スイッチインスタンスタイプでマルチキャストスヌーピングを有効にできます。
VPLSまたは仮想スイッチインスタンスの下に複数のブリッジドメインが設定されている場合、インスタンスレベルで設定されたマルチキャストスヌーピングオプションはすべてのブリッジドメインに適用されます。
ignore-stp-topology-change
ステートメントは、仮想スイッチ ルーティング インスタンス タイプでのみサポートされ、[edit logical-systems]
階層ではサポートされません。
nexthop-hold-time
ステートメントは、[edit routing-instances routing-instance-name]
階層でのみサポートされ、仮想スイッチまたはvplsのインスタンスタイプでのみサポートされます。
関連項目
例:マルチキャスト スヌーピングの設定
この例では、ブリッジまたは VPLS ルーティング インスタンスのシナリオでマルチキャスト スヌーピングを設定する方法を示します。
必要条件
この例では、次のハードウェアコンポーネントを使用しています。
MXシリーズルーター1台
マルチキャスト ルーターとして機能する 1 台のレイヤー 3 デバイス
始める前に:
インターフェイスを設定します。
内部ゲートウェイ プロトコルを設定します。 ルーティングデバイス用 Junos OS ルーティングプロトコルライブラリをご覧ください。
マルチキャストプロトコルを設定します。この機能は、次のマルチキャスト プロトコルで動作します。
ティッカー
PIM-DM
PIM-SM
PIM-SSM
概要とトポロジー
IGMPスヌーピングは、レイヤー2デバイスがすべてのインターフェイスからマルチキャストトラフィックを無差別にフラッディングするのを防ぎます。マルチキャスト スヌーピング用に行う設定は、IGMP スヌーピングの動作の管理に役立ちます。
マルチキャスト スヌーピング オプションは、デフォルトのマスター インスタンスと個々のブリッジまたは VPLS インスタンスで設定できます。デフォルトのマスター インスタンス設定はグローバルであり、論理ルーター内のすべてのブリッジ インスタンスまたは VPLS インスタンスに適用されます。個々のインスタンスの設定は、グローバル設定よりも優先されます。
この例には、以下のステートメントが含まれています。
flood-groups:トラフィックをフラッディングする必要があるマルチキャストグループアドレスを一覧表示できます。この設定は、IGMP スヌーピングが必要なマルチキャスト フラッディングを防止しないようにするのに役立ちます。224.0.0.1 から 224.0.0.255 までのマルチキャスト アドレスのブロックは、ローカル ワイヤ使用のために予約されています。この範囲のグループは、ルーティングプロトコルやローカル検出メカニズムなど、さまざまな用途に割り当てられます。例えば、OSPF はすべての OSPF ルーターに 224.0.0.5 を使用します。
forwarding-cache—転送エントリーを期限切れにする方法と、エントリー数を制御する方法を指定します。
転送キャッシュにしきい値を設定して、キャッシュ エントリが特定の最大値に達したときにスヌーピングを抑制(サスペンド)し、その値が別のしきい値に低下したときにキャッシュを再利用できます。デフォルトでは、ルーターでしきい値は有効になっていません。
抑制しきい値は、新しいマルチキャスト転送キャッシュエントリを抑制します。オプションのreuseしきい値は、ルーターが新しいマルチキャスト転送キャッシュエントリの作成を開始するポイントを指定します。両方のしきい値の範囲は 1 から 200,000 です。設定されている場合、再使用値は抑制値より小さくなければなりません。抑制値は必須です。オプションの reuse 値を指定しない場合、マルチキャスト転送キャッシュエントリーの数は抑制値に制限されます。マルチキャスト転送キャッシュ エントリの数が抑制値を下回るとすぐに、新しいエントリが作成されます。
graceful-restart—再起動前に学習したルートが、再学習されたルートに置き換えられるまでの時間を設定します。マルチキャスト スヌーピングのグレースフル リスタートが無効になっている場合、ルーティング エンジンの再起動後にスヌーピング情報が失われます。
デフォルトでは、グレースフルリスタート時間は180秒(3分)です。この値は 0 秒から 300 秒の間で設定できます。期間を 0 に設定すると、グレースフル リスタートは事実上無効になります。この値は、IGMP クエリーの応答間隔より少し大きく設定します。
ignore-stp-topology-change—スパニングツリートポロジーの状態変化に関するメッセージを無視するようにMXシリーズルーターを設定します。
デフォルトでは、MX シリーズ ルーターの IGMP スヌーピング プロセスは、いずれかのスパニング ツリー プロトコル(STP)によって行われたインターフェイスの状態変更を検知します。
2 つの PE ルーターが相互接続された 2 つの CE ルーターに接続され、STP ルート保護が PE ルーターで有効になっている VPLS マルチホーミング環境では、PE ルーター インターフェイスの 1 つが転送状態になり、もう 1 つがブロッキング状態になります。
2 つの CE ルーターを相互接続するリンクに障害が発生した場合、ブロッキング状態の PE ルーター インターフェイスは転送ステートに移行します。
PE ルーター インターフェイスは、次の一般的なクエリまたはグループ固有のクエリに応答して、メンバーシップ レポートを受信するのを待機しません。代わりに、IGMP スヌーピング プロセスは、CE ルータに向けて一般的なクエリー メッセージを送信します。CEルータに接続されたホストは、関心のあるすべてのグループのレポートで応答します。
2 つの CE ルーターを相互接続するリンクが復元されると、両方の PE ルーターの元のスパニング ツリーの状態が復元されます。転送 PE は、スパニングツリートポロジー変更メッセージを受信し、CE ルーターに一般クエリーメッセージを送信して、グループメンバーシップ状態を直ちに再構築します。
手記:ignore-stp-topology-change
ステートメントは、仮想スイッチ ルーティング インスタンス タイプでのみサポートされます。
位相幾何学
図 1 は VPLS マルチホーミング トポロジーを示しており、顧客ネットワークには 2 つの CE デバイスがあり、それらの間がリンクされています。各 CE は 1 つの PE に接続されています。

構成
プロシージャ
CLIクイック構成
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit]
階層レベルで CLI にコピー アンド ペーストして、設定モードから commit
を入力します。
set bridge-domains domain1 multicast-snooping-options forwarding-cache threshold suppress 100 set bridge-domains domain1 multicast-snooping-options forwarding-cache threshold reuse 50 set bridge-domains domain1 multicast-snooping-options graceful-restart restart-duration 120 set routing-instances ce1 instance-type virtual-switch set routing-instances ce1 bridge-domains domain1 domain-type bridge set routing-instances ce1 bridge-domains domain1 vlan-id 100 set routing-instances ce1 bridge-domains domain1 interface ge-0/3/9.0 set routing-instances ce1 bridge-domains domain1 interface ge-0/0/6.0 set routing-instances ce1 bridge-domains domain1 multicast-snooping-options flood-groups 224.0.0.5 set routing-instances ce1 bridge-domains domain1 multicast-snooping-options ignore-stp-topology-change
手順
次の例では、設定階層のいくつかのレベルに移動する必要があります。CLIのナビゲーションについては、 『Junos OS CLIユーザーガイド』を参照してください。
IGMPスヌーピングを設定するには:
マスタールーティングインスタンスでマルチキャストスヌーピングを設定します。
[edit bridge-domains domain1] user@host# set multicast-snooping-options forwarding-cache threshold suppress 100 reuse 50 user@host# set multicast-snooping-options graceful-restart 120
ルーティングインスタンスを設定します。
[edit routing-instances ce1] user@host# set instance-type virtual-switch
ルーティングインスタンスでブリッジドメインを設定します。
[edit routing-instances ce1 bridge-domains domain1] user@host# set domain-type bridge user@host# set interface ge-0/0/6.0 user@host# set interface ge-0/3/9.0 user@host# set vlan-id 100
フラッディング グループを構成します。
[edit routing-instances ce1 bridge-domains domain1] user@host# set multicast-snooping-options flood-groups 224.0.0.5
スパニングツリートポロジーの状態変化に関するメッセージを無視するようにルーターを設定します。
[edit routing-instances ce1 bridge-domains domain1] user@host# set multicast-snooping-options ignore-stp-topology-change
デバイスの設定が完了したら、設定をコミットします。
user@host# commit
業績
show bridge-domains
コマンドと show routing-instances
コマンドを入力して、設定を確認します。
user@host# show bridge-domains domain1 { multicast-snooping-options { forwarding-cache { threshold { suppress 100; reuse 50; } } } }
user@host# show routing-instances ce1 { instance-type virtual-switch; bridge-domains { domain1 { domain-type bridge; vlan-id 100; interface ge-0/3/9.0; ## 'ge-0/3/9.0' is not defined interface ge-0/0/6.0; ## 'ge-0/0/6.0' is not defined multicast-snooping-options { flood-groups 224.0.0.5; ignore-stp-topology-change; } } } }
検証
構成を確認するには、次のコマンドを実行します。
show igmp snooping interface
IGMP スヌーピング メンバーシップを表示
igmp スヌーピング統計情報の表示
マルチキャストスヌーピングルートを示す
ルートテーブルを表示
マルチキャスト スヌーピングの一括更新の有効化
個々のインターフェイスがマルチキャスト グループに参加または脱退するたびに、新しいネクスト ホップ エントリがルーティング テーブルと転送テーブルにインストールされます。 nexthop-hold-time
ステートメントを使用して、1 から 1000 ミリ秒(ms)までの時間を指定できます。その間に、発信インターフェイスの変更が累積され、ルーティング テーブルと転送テーブルに一括で更新されます。一括更新により、参加メッセージと退出メッセージの処理に必要な処理時間とメモリ オーバーヘッドが削減されます。これは、インターネットポトコルテレビ(IPTV)などのアプリケーションで、ユーザーがチャンネルを変更すると、短期間にグループに参加または脱退する何千ものインターフェイスを作成できる場合に便利です。IPTV のシナリオでは、通常、ストリームの数は比較的少なく制御され、発信インターフェイスの数は多くなります。一括更新を使用すると、参加の遅延を短縮できます。
この例では、nexthop-hold-time
ステートメントを使用して、インスタンスタイプ仮想スイッチのホールドタイムを 20 ミリ秒に設定します。
nexthop-hold-time
ステートメントは、以下の階層レベルの仮想スイッチまたは VPLS のルーティング インスタンス タイプにのみ含めることができます。
[edit routing-instances routing-instance-name multicast-snooping-options]
ルーター設定から nexthop-hold-time
ステートメントを削除すると、一括更新は無効になります。
関連項目
マルチシャーシ リンク アグリゲーション グループ インターフェイスのマルチキャスト スヌーピングの有効化
マルチシャーシリンクアグリゲーショングループ(MC-LAG)インターフェイスのIGMPスヌーピングと状態レプリケーションを有効にするために、[edit multicast-snooping-options]
階層レベルにmultichassis-lag-replicate-state
ステートメントを含めます。
[edit] multicast-snooping-options { multichassis-lag-replicate-state; }
デュアルリンクMC-LAGインターフェイスのリンク間で参加および脱退メッセージを複製すると、サービス中断が発生したMC-LAGインターフェイスのメンバーシップ情報をより迅速に回復できます。
状態が再現されない場合、デュアルリンクMC-LAGインターフェイスでサービスが中断された場合(たとえば、アクティブリンクがスタンバイに切り替わった場合)、ネットワークへのIGMPクエリーを生成することで、インターフェイスのメンバーシップ情報が回復されます。このメソッドは、完了するまでに 1 秒から 10 秒かかる場合があり、一部のアプリケーションでは長すぎる場合があります。
MC-LAG インターフェイスに状態の複製が提供されている場合、MC-LAG デバイスで受信した IGMP Join または Leave メッセージは、シャーシ間通信プロトコル(ICCP)接続を介して、アクティブな MC-LAG リンクからスタンバイ リンクに複製されます。スタンバイ リンクは、それ自体をネクスト ホップとして追加せず、メッセージをネットワークにフラッディングしない場合を除き、対応するアクティブ MC-LAG リンクから受信したかのようにメッセージを処理します。フェイルオーバー後、複製されたメッセージを取得することで、リンクのマルチキャスト メンバーシップの状態を数秒以内に回復できます。
この例では、MC-LAG インターフェイスの状態レプリケーションを有効にします。