この章では、Internet Group Management Protocol(IGMP)スヌーピングを Catalyst 3560 スイッチ上で設定する方法について、ローカル IGMP スヌーピング、Multicast VLAN Registration(MVR)の適用を含めて説明します。また、IGMP フィルタリングを使用したマルチキャスト グループ メンバーシップの制御と、IGMP スロットリング アクションの設定手順についても説明します。
- ・ IGMP スヌーピングの概要
- ・ IGMP スヌーピングの設定
- ・ IGMP スヌーピング情報の表示
- ・ MVR の概要
- ・ MVR の設定
- ・ MVR 情報の表示
- ・ IGMP フィルタリングおよびスロットリングの設定
- ・ IGMP フィルタリングおよび IGMP スロットリング設定の表示
IGMP スヌーピングの概要
レイヤ 2 スイッチは IGMP スヌーピングを使用して、レイヤ 2 インターフェイスを動的に設定し、マルチキャスト トラフィックが IP マルチキャスト デバイスと対応付けられたインターフェイスにだけ転送されるようにすることによって、マルチキャスト トラフィックのフラッディングを制限できます。名称が示すとおり、IGMP スヌーピングの場合、LAN スイッチでホストとルータ間の IGMP 伝送をスヌーピングし、マルチキャスト グループとメンバー ポートを追跡する必要があります。特定のマルチキャスト グループについて、ホストから IGMP レポートを受信したスイッチは、ホストのポート番号を転送テーブル エントリに追加します。ホストから IGMP Leave Group メッセージを受信した場合は、テーブル エントリからホスト ポートを削除します。マルチキャスト クライアントから IGMP メンバーシップ レポートを受信しなかった場合にも、スイッチはエントリを定期的に削除します。
マルチキャスト ルータは、すべての VLAN に対し一般的なクエリを定期的に送信します。このマルチキャスト トラフィックに関心のあるホストはすべて Join 要求を送信し、転送テーブルのエントリに追加されます。スイッチは、IGMP Join 要求の送信元となる各グループの IGMP スヌーピング IP マルチキャスト転送テーブルで、VLAN ごとに 1 つずつエントリを作成します。
スイッチは、MAC(メディア アクセス制御)アドレスに基づくグループではなく、IP マルチキャスト グループに基づくブリッジングをサポートしています。マルチキャスト MAC アドレスに基づくグループの場合、設定されている IP アドレスを設定済みの MAC アドレス(エイリアス)または予約済みのマルチキャスト MAC アドレス(224.0.0.xxx の範囲内)に変換すると、コマンドがエラーになります。スイッチでは IP マルチキャスト グループを使用するので、アドレス エイリアスの問題は発生しません。
IGMP スヌーピングによって、IP マルチキャスト グループは動的に学習されます。ただし、 ip igmp snooping vlan vlan-id static ip_address interface interface-id グローバル コンフィギュレーション コマンドを使用すると、マルチキャスト グループを静的に設定できます。グループ メンバーシップをマルチキャスト グループ アドレスに静的に指定すると、その設定値は IGMP スヌーピングによる自動操作より優先されます。マルチキャスト グループ メンバーシップのリストは、ユーザが定義した設定値および IGMP スヌーピングによって学習された設定値の両方で構成できます。
マルチキャスト トラフィックはルーティングする必要がないのでマルチキャスト インターフェイスを使用せずに、サブネットの IGMP スヌーピングをサポートするよう IGMP スヌーピング クエリーを設定できます。IGMP スヌーピング クエリーの詳細については、 IGMP スヌーピング クエリアの設定 を参照してください。
ポート スパニングツリー、ポート グループ、または VLAN ID が変更された場合、VLAN 上のこのポートから IGMP スヌーピングで学習されたマルチキャスト グループは削除されます。
IGMP バージョン
スイッチは、IGMP バージョン 1、IGMP バージョン 2、および IGMP バージョン 3 をサポートしています。これら 3 つのバージョンは、スイッチ上でそれぞれ相互運用できます。たとえば、IGMPv2 スイッチ上で IGMP スヌーピングがイネーブルの場合、このスイッチが IGMPv3 レポートをホストから受信すると、この IGMPv3 レポートをマルチキャスト ルータへ転送できます。
IGMPv3 スイッチは、Basic IGMPv3 Snooping Support(BISS)をサポートしています。BISS は、IGMPv1 および IGMPv2 スイッチでのスヌーピング機能と、IGMPv3 メンバーシップ レポート メッセージをサポートしています。ネットワークに IGMPv3 ホストがある場合、BISS によりマルチキャスト トラフィックのフラッディングは抑制されます。トラフィックは、IGMPv2 または IGMPv1 ホストの IGMP スヌーピング機能の場合とほぼ同じポート セットに抑制されます。
IGMPv3 スイッチは、Source Specific Multicast(SSM)機能を実行しているデバイスとメッセージの送受信を行うことができます。IGMPv3 および IGMP の送信元固有のマルチキャストの詳細については、次の URL を参照してください。
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121newft/121t/121t5/dtssm5t.htm
マルチキャスト グループへの加入
スイッチに接続したホストが IP マルチキャスト グループに加入し、なおかつそのホストが IGMP バージョン 2 クライアントの場合、ホストは加入する IP マルチキャスト グループを指定した非送信請求 IGMP Join メッセージを送信します。別の方法として、ルータから一般クエリーを受信したスイッチは、そのクエリーを VLAN 内のすべてのポートに転送します。IGMP バージョン 1 またはバージョン 2 のホストがマルチキャスト グループに加入する場合、ホストはスイッチに Join メッセージを送信することによって応答します。スイッチの CPU は、そのグループのマルチキャスト転送テーブル エントリがまだ存在していないのであれば、エントリを作成します。CPU はさらに、Join メッセージを受信したインターフェイスを転送テーブル エントリに追加します。そのインターフェイスと対応付けられたホストが、そのマルチキャスト グループ用のマルチキャスト トラフィックを受信します。 図23-1 を参照してください。
図23-1 IGMP Join の初期メッセージ
ルータ A がスイッチに一般クエリーを送り、スイッチはそのクエリーをポート 2 〜 5、つまり同一 VLAN のすべてのメンバーに転送します。ホスト 1はマルチキャスト グループ 224.1.2.3 に加入するために、グループに IGMP メンバーシップ レポート(IGMP Join メッセージ)をマルチキャストします。スイッチの CPU は IGMP レポートの情報を使用して、転送テーブルのエントリを設定します( 表23-1 を参照)。転送テーブルにはホスト 1 およびルータに接続しているポート番号が含まれます。
スイッチのハードウェアは、マルチキャスト グループの他のパケットと IGMP 情報パケットを区別できます。テーブルの情報は、224.1.2.3 マルチキャスト IP アドレス宛ての、IGMP パケットではないフレームを、ルータおよびグループに加入したホストに対して送信するように、スイッチング エンジンに指示します。
別のホスト(たとえばホスト 4)が同じグループに非請求の IGMP Join メッセージを送信する場合( 図23-2 を参照)、CPU はメッセージを受信して、転送テーブルにホスト 4 のポート番号を追加します( 表23-2 を参照)。転送テーブルによって、CPU だけに IGMP メッセージが転送されるので、スイッチ上の他のポートにメッセージがフラッディングされることはありません。既知のマルチキャスト トラフィックはすべて、CPU ではなくグループに転送されます。
図23-2 2 番めのホストのマルチキャスト グループへの加入
マルチキャスト グループからの脱退
ルータはマルチキャスト一般クエリーを定期的に送信し、スイッチはそれらのクエリーを VLAN のすべてのポートを通じて転送します。関心のあるホストがクエリーに応答します。VLAN 内の少なくとも 1 つのホストがマルチキャスト トラフィックを受信しなければならない場合、ルータは VLAN に引き続き、マルチキャスト トラフィックを転送します。スイッチは、その IGMP スヌーピングによって維持された IP マルチキャスト グループの転送テーブルで指定されたホストに対してだけ、マルチキャスト グループ トラフィックを転送します。
ホストがマルチキャスト グループから脱退する場合、何も通知せずに脱退することも、Leave メッセージを送信することもできます。ホストから Leave メッセージを受信したスイッチは、グループ固有のクエリーを送信して、そのインターフェイスに接続された他のデバイスが所定のマルチキャスト グループのトラフィックに関与しているかどうかを学習します。スイッチはさらに、転送テーブルでその MAC グループの情報を更新し、そのグループのマルチキャスト トラフィックの受信に関心のあるホストだけが、転送テーブルに指定されるようにします。ルータが VLAN からレポートを受信しなかった場合、その VLAN 用のグループは IGMP キャッシュから削除されます。
即時脱退
即時脱退機能をサポートするのは、IGMP バージョン 2 が稼働しているホストだけです。
スイッチは IGMP スヌーピングの即時脱退を使用して、先にスイッチからインターフェイスにグループ固有のクエリーを送信しなくても、Leave メッセージを送信するインターフェイスを転送テーブルから削除できるようにします。VLAN インターフェイスは、最初の Leave メッセージで指定されたマルチキャスト グループのマルチキャスト ツリーからプルーニングされます。即時脱退によって、複数のマルチキャスト グループが同時に使用されている場合でも、スイッチド ネットワークのすべてのホストに最適な帯域幅管理が保証されます。
設定手順については、 IGMP 即時脱退のイネーブル化 を参照してください。
IGMP 脱退タイマーの設定
Cisco IOS Release 12.2(25)SEA 以前では、IGMP スヌーピング脱退タイマーは 5 秒に固定されていました。そのため、クエリーのクエリー応答時間が終了するまでに、スイッチがメンバーシップ レポートを受信しなかった場合、ポートがマルチキャスト グループのメンバーシップから削除されていました(ただし、アプリケーションによっては 5 秒未満の脱退時間を要求します)。
Cisco IOS Release 12.2(25)SEB 以降では、ホストがまだ指定のマルチキャスト グループに関心があるかどうかを確認するために、グループ固有のクエリーを送信したあとのスイッチの待機時間を設定できます。IGMP 脱退応答時間は、100 〜 5000 ミリ秒の間で設定できます。タイマーはグローバルにまたは VLAN 単位で設定できますが、VLAN に脱退時間を設定すると、グローバルに設定した脱退時間は上書きされます。
設定手順については、 IGMP 脱退タイマーの設定 を参照してください。
IGMP レポート抑制
スイッチは、IGMP レポート抑制を使用して、1 つのマルチキャスト ルータ クエリーごとに IGMP レポートを 1 つだけマルチキャスト デバイスに転送します。IGMP ルータ抑制がイネーブルの場合(デフォルト)、このスイッチは、グループに対応するすべてのホストからの最初の IGMP レポートをすべてのマルチキャスト ルータに送信します。スイッチは、グループに対応する残りの IGMP レポートについては、マルチキャスト ルータに送信しません。この機能により、重複したレポートがマルチキャスト デバイスに送信されるのを防ぎます。
マルチキャスト ルータのクエリーに、IGMPv1 および IGMPv2 レポートだけに対応したレポートが含まれている場合、スイッチはグループ内のすべてのホストから、最初の IGMPv1 または IGMPv2 レポートだけを、すべてのマルチキャスト ルータに転送します。
また、マルチキャスト ルータ クエリーに、IGMPv3 レポートの要求も含まれている場合、スイッチは、グループのすべての IGMPv1、IGMPv2、および IGMPv3 レポートをマルチキャスト デバイスに転送します。
IGMP レポート抑制をディセーブルにすると、すべての IGMP レポートはマルチキャスト ルータに転送されます。設定手順については、 IGMP レポート抑制のディセーブル化 を参照してください。
IGMP スヌーピングの設定
IGMP スヌーピングにより、スイッチで IGMP パケットを調べたり、パケットの内容に基づいて転送先を決定したりできます。ここでは、次の設定情報について説明します。
- ・ IGMP スヌーピングのデフォルト設定
- ・ IGMP スヌーピングのイネーブル化およびディセーブル化
- ・ スヌーピング方法の設定
- ・ マルチキャスト ルータ ポートの設定
- ・ グループに加入するホストの静的な設定
- ・ IGMP 即時脱退のイネーブル化
- ・ IGMP 脱退タイマーの設定
- ・ TCN 関連のコマンドの設定
- ・ IGMP スヌーピング クエリアの設定
- ・ IGMP レポート抑制のディセーブル化
IGMP スヌーピングのデフォルト設定
表23-3 に、IGMP スヌーピングのデフォルト設定を示します。
|
TCN 1 フラッド クエリー カウント |
|
IGMP スヌーピングのイネーブル化およびディセーブル化
デフォルトでは、IGMP スヌーピングはスイッチ上でグローバルにイネーブルです。グローバルにイネーブルまたはディセーブルに設定されている場合、既存のすべての VLAN インターフェイスでもイネーブルまたはディセーブルです。デフォルトでは、IGMP スヌーピングはすべての VLAN でイネーブルですが、VLAN 単位で IGMP スヌーピングをイネーブルおよびディセーブルに設定できます。
グローバル IGMP スヌーピングは、VLAN IGMP スヌーピングよりも優先されます。グローバル スヌーピングがディセーブルの場合、VLAN スヌーピングをイネーブルに設定することはできません。グローバル スヌーピングがイネーブルの場合、VLAN スヌーピングをイネーブルまたはディセーブルに設定できます。
スイッチ上で IGMP スヌーピングをグローバルにイネーブルにするには、特権 EXEC モードで次の手順を実行します。
すべての VLAN インターフェイス上で IGMP スヌーピングをグローバルにディセーブルにするには、 no ip igmp snooping グローバル コンフィギュレーション コマンドを使用します。
特定の VLAN インターフェイス上で IGMP スヌーピングをイネーブルにするには、特権 EXEC モードで次の手順を実行します。
|
VLAN インターフェイス上で IGMP スヌーピングをイネーブルにします。VLAN ID の範囲は 1 〜 1001 および 1006 〜 4094 です。
|
||
特定の VLAN インターフェイス上で IGMP スヌーピングをディセーブルにするには、 no ip igmp snooping vlan vlan-id グローバル コンフィギュレーション コマンドを、指定した VLAN 番号に対して使用します。
スヌーピング方法の設定
マルチキャスト対応のルータ ポートは、レイヤ 2 マルチキャスト エントリごとに転送テーブルに追加されます。スイッチは、次のいずれかの方法でポートを学習します。
- ・ IGMP クエリー、Protocol Independent Multicast(PIM)パケット、および Distance Vector Multicast Routing Protocol(DVMRP)パケットのスヌーピング
- ・ 他のルータからの Cisco Group Management Protocol(CGMP)パケットの待ち受け
- ・ ip igmp snooping mrouter グローバル コンフィギュレーション コマンドによるマルチキャスト ルータ ポートへの静的な接続
IGMP クエリーおよび PIM パケットと DVMRP パケットのスヌーピング、または CGMP self-join パケットまたは proxy-join パケットのいずれかの待ち受けを行うように、スイッチを設定できます。デフォルトでは、スイッチはすべての VLAN 上の PIM パケットと DVMRP パケットをスヌーピングします。CGMP パケットだけでマルチキャスト ルータ ポートを学習するには、 ip igmp snooping vlan vlan-id mrouter learn cgmp グローバル コンフィギュレーション コマンドを使用します。このコマンドを入力すると、ルータは CGMP self-join パケットおよび CGMP proxy-join パケットだけを待ち受け、その他の CGMP パケットは待ち受けません。PIM パケットと DVMRP パケットだけでマルチキャスト ルータ ポートを学習するには、 ip igmp snooping vlan vlan-id mrouter learn pim-dvmrp グローバル コンフィギュレーション コマンドを使用します。
VLAN インターフェイスがマルチキャスト ルータに動的にアクセスする方法を変更するには、特権 EXEC モードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id mrouter learn { cgmp | pim-dvmrp } |
VLAN で IGMP スヌーピングをイネーブルにします。VLAN ID の範囲は 1 〜 1001 および 1006 〜 4094 です。 |
|
デフォルトの学習方式に戻すには、 no ip igmp snooping vlan vlan-id mrouter learn cgmp グローバル コンフィギュレーション コマンドを使用します。
次に、CGMP パケットを学習方式として使用するように IGMP スヌーピングを設定する例を示します。
Switch(config)# ip igmp snooping vlan 1 mrouter learn cgmp
マルチキャスト ルータ ポートの設定
マルチキャスト ルータ ポートを追加(マルチキャスト ルータに静的な接続を追加)するには、スイッチ上で ip igmp snooping vlan mrouter グローバル コンフィギュレーション コマンドを使用します。
マルチキャスト ルータへの静的な接続をイネーブルにするには、特権 EXEC モードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id mrouter interface interface-id |
||
VLAN からマルチキャスト ルータ ポートを削除するには、 no ip igmp snooping vlan vlan-id mrouter interface interface-id グローバル コンフィギュレーション コマンドを使用します。
次に、マルチキャスト ルータへの静的な接続をイネーブルにする例を示します。
Switch (config)# ip igmp snooping vlan 200 mrouter interface gigabitethernet0/2
グループに加入するホストの静的な設定
ホストまたはレイヤ 2 ポートは通常、マルチキャスト グループに動的に加入しますが、インターフェイス上にホストを静的に設定することもできます。
マルチキャスト グループのメンバーとしてレイヤ 2 ポートを追加するには、特権 EXEC モードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id static ip_address interface interface-id |
||
マルチキャスト グループからレイヤ 2 ポートを削除するには、 no ip igmp snooping vlan vlan-id static ip-address interface interface-id グローバル コンフィギュレーション コマンドを使用します。
Switch(config)# ip igmp snooping vlan 105 static 224.2.4.12 interface gigabitethernet0/1
IGMP 即時脱退のイネーブル化
IGMP 即時脱退をイネーブルに設定すると、スイッチはポート上で IGMP バージョン 2 の Leave メッセージを検出した場合、ただちにそのポートを削除します。即時脱退機能を使用するのは、VLAN の各ポート上にレシーバーが 1 つだけ存在する場合に限定してください。
IGMP 即時脱退をイネーブルにするには、特権 EXEC モードで次の手順を実行します。
VLAN 上で IGMP 即時脱退をディセーブルにするには、 no ip igmp snooping vlan vlan-id immediate-leave グローバル コンフィギュレーション コマンドを使用します。
次に、VLAN 130 上で IGMP 即時脱退をイネーブルにする例を示します。
Switch(config)# ip igmp snooping vlan 130 immediate-leave
IGMP 脱退タイマーの設定
IGMP 脱退タイマーを設定するときには、次の注意事項に従ってください。
- ・ 脱退時間はグローバルまたは VLAN 単位で設定できます。
- ・ VLAN 上に脱退時間を設定すると、グローバルに設定された内容は上書きされます。
- ・ デフォルトの脱退時間は 1000 ミリ秒です。
- ・ IGMP の脱退時間の設定は、IGMP バージョン 2 が稼働しているホストでのみサポートされます。
- ・ ネットワークで実際の脱退にかかる待ち時間は、通常、設定した脱退時間どおりになります。ただし、脱退時間は、リアルタイムの CPU の負荷の状態、およびネットワークの遅延状態、インターフェイスから送信されたトラフィック量によって、設定された時間を前後することがあります。
IGMP脱退タイマーの設定をイネーブルにするには、特権 EXEC モードで次の手順を実行します。
IGMP 脱退タイマーをグローバルにリセットしてデフォルト設定に戻すには、 no ip igmp snooping last-member-query-interval グローバル コンフィギュレーション コマンドを使用します。
特定の VLAN から IGMP 脱退タイマーの設定を削除するには、 no ip igmp snooping vlan vlan-id last-member-query-interval グローバル コンフィギュレーション コマンドを使用します。
TCN 関連のコマンドの設定
ここでは、TCN イベント中にフラッディングしたマルチキャスト トラフィックを制御する方法を説明します。
TCN イベント後のマルチキャスト フラッディング時間の制御
ip igmp snooping tcn flood query count グローバル コンフィギュレーション コマンドを使用して、TCN イベント後にフラッディングするマルチキャスト トラフィックの時間を制御できます。このコマンドは、TCN イベント後にフラッディングするマルチキャスト データのトラフィックに対し、一般クエリー数を設定します。クライアントが場所を変更することで同ポートの受信者がブロックされたあと、現在転送中の場合、またはポートが Leave メッセージを送信せずにダウンした場合などが、TCN イベントに該当します。
ip igmp snooping tcn flood query count コマンドを使用して、TCN フラッディング クエリー カウントを 1 に設定した場合、一般クエリーを 1 つ受信するまでフラッディングが続きます。カウントを 7 に設定した場合、一般クエリーを 7 つ受信するまでフラッディングが続きます。グループは、TCN イベント中に受信した一般クエリーに基づいて再度学習されます。
TCN フラッディング クエリー カウントを設定するには、特権 EXEC モードで次の手順を実行します。
|
マルチキャスト トラフィックのフラッディングに使用する一般 IGMP クエリー数を指定します。指定できる範囲は 1 〜 10 です。デフォルトのフラッディング クエリー カウントは 2 です。 |
||
デフォルトのフラッディング クエリー カウントに戻す場合は、 no ip igmp snooping tcn flood query count グローバル コンフィギュレーション コマンドを使用します。
フラッディング モードからの回復
トポロジの変更が発生した場合、スパニングツリーのルートは特別な IGMP Leave メッセージ(グローバル Leave メッセージ)をグループ マルチキャスト アドレス 0.0.0.0. に送信します。ただし、 ip igmp snooping tcn query solicit グローバル コンフィギュレーション コマンドをイネーブルにしている場合、スイッチはスパニングツリーのルートであるかどうかに関わらず、グローバル Leave メッセージを送信します。ルータはこの特別な Leave メッセージを受信した場合、即座に一般クエリーを送信して、TCN 中のフラッディング モードからの回復に努めます。スイッチがスパニングツリーのルートであれば、このコンフィギュレーション コマンドに関係なく、Leave メッセージが常に送信されます。デフォルトでは、クエリー送信要求はディセーブルに設定されています。
スイッチがスパニングツリー ルートであるかどうかに関わらず、グローバル Leave メッセージを送信するように設定するには、特権 EXEC モードで次の手順を実行します。
|
IGMP Leave(グローバル Leave)メッセージを送信し、TCN イベント中のフラッディング モードからの回復を促します。デフォルトでは、クエリー送信要求はディセーブルに設定されています。 |
||
デフォルトのクエリー送信要求に戻す場合は、 no ip igmp snooping tcn query solicit グローバル コンフィギュレーション コマンドを使用します。
TCN イベント中のマルチキャスト フラッディングのディセーブル化
スイッチは TCN を受信すると、一般クエリーを 2 つ受信するまで、すべてのポートに対してマルチキャスト トラフィックをフラッディングします。異なるマルチキャスト グループのホストに接続しているポートが複数ある場合、リンク範囲を超えてスイッチによるフラッディングが行われ、パケット損失が発生する可能性があります。その場合、 ip igmp snooping tcn flood インターフェイス コンフィギュレーション コマンドを使用して、この状態を制御できます。
インターフェイス上でマルチキャスト フラッディングをディセーブルにするには、特権 EXEC モードで次の手順を実行します。
インターフェイス上でマルチキャスト フラッディングを再度イネーブルにする場合、 ip igmp snooping tcn flood インターフェイス コンフィギュレーション コマンドを使用します。
IGMP スヌーピング クエリアの設定
IGMP スヌーピング クエリアを設定するときには、次の注意事項に従ってください。
- ・ VLAN をグローバル コンフィギュレーション モードに設定してください。
- ・ IP アドレスおよび VLAN インターフェイスを設定してください。イネーブルになると、IGMP スヌーピング クエリアはクエリー送信元アドレスとして IP アドレスを使用します。
- ・ VLAN インターフェイス上で IP アドレスが設定されていない場合、IGMP スヌーピング クエリアは IGMP クエリア用に設定されたグローバル IP アドレスを使用しようとします。グローバル IP アドレスが指定されていない場合、IGMP クエリアは VLAN Switch Virtual Interface(SVI; スイッチ仮想インターフェイス)IP アドレス(存在する場合)を使用しようとします。SVI IP アドレスが存在しない場合、スイッチはスイッチ上で設定された利用可能な最初の IP アドレスを使用します。利用可能な最初の IP アドレスは、 show ip interface 特権 EXEC コマンドの出力に表示されます。IGMP スヌーピング クエリアはスイッチ上で利用可能な IP アドレスを検出できない場合、IGMP 一般クエリーを生成しません。
- ・ IGMP スヌーピング クエリアは IGMP バージョン 1 および 2 をサポートします。
- ・ 管理上イネーブルである場合、IGMP スヌーピング クエリアはネットワークにマルチキャスト ルータの存在を検出すると、非クエリア ステートになります。
- ・ 管理上イネーブルである場合、IGMP スヌーピング クエリアは操作上、次の状況でディセーブル ステートになります。
特定の VLAN で IGMP スヌーピング クエリア機能をイネーブルにするには、特権 EXEC モードで次の手順を実行します。
次に、IGMP スヌーピング クエリアの送信元アドレスを 10.0.0.64 に設定する例を示します。
Switch(config)# ip igmp snooping querier 10.0.0.64
次に、IGMP スヌーピング クエリアの最大応答時間を 25 秒に設定する例を示します。
Switch(config)# ip igmp snooping querier query-interval 25
次に、IGMP スヌーピング クエリアのタイムアウトを 60 秒に設定する例を示します。
Switch(config)# ip igmp snooping querier timeout expiry 60
次に、IGMP スヌーピング クエリア機能をバージョン 2 に設定する例を示します。
Switch(config)# no ip igmp snooping querier version 2
IGMP レポート抑制のディセーブル化
IGMP レポート抑制はデフォルトでイネーブルです。IGMP レポート抑制がイネーブルの場合、スイッチは、マルチキャスト ルータ クエリーごとに IGMP レポートを 1 つだけ転送します。IGMP レポート抑制がディセーブルの場合、すべての IGMP レポートがマルチキャスト ルータに転送されます。
IGMP レポート抑制をディセーブルにするには、特権 EXEC モードで次の手順を実行します。
IGMP レポート抑制を再びイネーブルにする場合は、 ip igmp snooping report-suppression グローバル コンフィギュレーション コマンドを使用します。
IGMP スヌーピング情報の表示
動的に学習された、あるいは静的に設定されたルータ ポートおよび VLAN インターフェイスに関する IGMP スヌーピング情報を表示できます。また、IGMP スヌーピング用に設定された VLAN の IP アドレス マルチキャスト エントリを表示することもできます。
IGMP スヌーピング情報を表示するには、 表23-4 の特権 EXEC コマンドを 1 つまたは複数使用します。
各コマンドのキーワードおよびオプションの詳細については、このリリースに対応するコマンド リファレンスを参照してください。
MVR の概要
MVR は、イーサネット リング ベースのサービス プロバイダー ネットワークにおいて、マルチキャスト トラフィックを大規模展開するアプリケーション(サービス プロバイダー ネットワークによる複数のテレビ チャネルのブロードキャストなど)を想定して開発されました。MVR によってポート上の加入者は、ネットワークワイドなマルチキャスト VLAN 上のマルチキャスト ストリームに加入し、脱退できます。加入者は別個の VLAN 上にありながら、ネットワークで単一マルチキャスト VLAN を共有できます。MVR によって、マルチキャスト VLAN でマルチキャスト ストリームを連続送信する能力が得られますが、ストリームと加入者の VLAN は、帯域幅およびセキュリティ上の理由で分離されます。
MVR では、加入者ポートが IGMP Join および Leave メッセージを送信することによって、マルチキャスト ストリームへの加入および脱退(Join および Leave)を行うことが前提です。これらのメッセージは、イーサネットで接続され、IGMP バージョン 2 に準拠しているホストから発信できます。MVR は IGMP スヌーピングの基本メカニズムで動作しますが、この 2 つの機能はそれぞれ単独で動作します。それぞれ他方の機能の動作に影響を与えずに、イネーブルまたはディセーブルにできます。ただし、IGMP スヌーピングと MVR が両方ともイネーブルの場合、MVR は MVR 環境で設定されたマルチキャスト グループが送信した Join および Leave メッセージだけに反応します。他のマルチキャスト グループから送信された Join および Leave メッセージはすべて、IGMP スヌーピングが管理します。
スイッチの CPU は、MVR IP マルチキャストストリームとそれに対応するスイッチ転送テーブル内の IP マルチキャスト グループを識別し、IGMP メッセージを代行受信し、転送テーブルを変更して、マルチキャスト ストリームの受信側としての加入者を追加または削除します。受信側が送信元と異なる VLAN 上に存在している場合でも同じです。この転送動作により、異なる VLAN の間でトラフィックを選択して伝送できます。
スイッチの MVR 動作は、互換モードまたはダイナミック モードに設定できます。
- ・ 互換モードの場合、MVR ホストが受信したマルチキャスト データはすべての MVR データ ポートに転送されます。MVR データ ポートの MVR ホスト メンバーシップは無関係です。マルチキャスト データは、IGMP レポートまたは静的な MVR 設定のどちらかによって、MVR ホストが加入しているレシーバー ポートだけに転送されます。MVR ホストから受信した IGMP レポートが、スイッチに設定された MVR データ ポートから転送されることはありません。
- ・ ダイナミック モードの場合、スイッチ上の MVR ホストが受信したマルチキャスト データは、IGMP レポートまたは静的な MVR 設定のどちらかによって、MVR ホストが加入している MVR データおよびクライアント ポートから転送されます。それ以外のポートからは転送されません。MVR ホストから受信した IGMP レポートも、スイッチのすべての MVR データ ポートから転送されます。したがって、互換モードでスイッチを稼働させた場合と異なり、MVR データ ポート リンクで不要な帯域幅を使用しなくてすみます。
MVR に関与するのはレイヤ 2 ポートだけです。ポートを MVR レシーバー ポートとして設定する必要があります。スイッチでサポートされる MVR マルチキャスト VLAN は、1 つのみです。
マルチキャスト TV アプリケーションで MVR を使用する場合
マルチキャスト TV アプリケーションでは、PC またはセットトップ ボックスを装備したテレビでマルチキャスト ストリームを受信できます。1 つの加入者ポートに複数のセットトップ ボックスまたは PC を接続できます。加入者ポートは、MVR レシーバー ポートとして設定されたスイッチ ポートです。 図23-3 に構成例を示します。Dynamic Host Configuration Protocol(DHCP)はセットトップ ボックスまたは PC に IP アドレスを割り当てます。加入者がチャネルを選択すると、セットトップ ボックスまたは PC からスイッチ A に、所定のマルチキャストに加入するための IGMP レポートが送信されます。IGMP レポートが設定されている IP マルチキャスト グループ アドレスの 1 つと一致すると、スイッチの CPU がハードウェア アドレス テーブルを変更して、指定のマルチキャスト ストリームをマルチキャスト VLAN から受信したときの転送先として、レシーバー ポートと VLAN を追加します。マルチキャスト VLAN との間でマルチキャスト データを送受信するアップリンク ポートを MVR 送信元ポートといいます。
図23-3 MVR の例
加入者がチャネルを切り替えた場合、またはテレビのスイッチを切った場合には、セットトップ ボックスからマルチキャスト ストリームに対する IGMP Leave メッセージが送信されます。スイッチの CPU は、レシーバー ポートの VLAN 経由で MAC ベースの一般クエリーを送信します。VLAN に、同じグループに加入している別のセットトップ ボックスがある場合、そのセットトップ ボックスはクエリーに指定された最大応答時間内に応答しなければなりません。応答を受信しなかった場合、CPU はそのグループの転送先としてのレシーバー ポートを除外します。
即時脱退機能を使用しない場合、レシーバー ポートの加入者から IGMP Leave メッセージを受信したスイッチは、そのポートに IGMP クエリーを送信し、IGMP グループ メンバーシップ レポートを待ちます。設定された時間内にレポートが届かないと、レシーバー ポートがマルチキャスト グループ メンバーシップから削除されます。即時脱退機能がイネーブルの場合、IGMP Leave を受信したレシーバー ポートから IGMP クエリーが送信されません。Leave メッセージの受信後ただちに、マルチキャスト グループ メンバーシップからレシーバー ポートが削除されるので、脱退のための待ち時間が短縮されます。即時脱退機能をイネーブルにするのは、接続されているレシーバー デバイスが 1 つだけのレシーバー ポートに限定してください。
MVR を使用すると、VLAN ごとに加入者用のテレビ チャネル マルチキャスト トラフィックを複製しなくてすみます。すべてのチャネル用のマルチキャスト トラフィックは、マルチキャスト VLAN 上でのみ、VLAN トランク全体で 1 回送信されます。IGMP Leave および Join メッセージは、加入者ポートが割り当てられている VLAN に送られます。これらのメッセージは、レイヤ 3 デバイス上のマルチキャスト VLAN のマルチキャスト トラフィック ストリームに対し、動的に登録します。アクセス レイヤ スイッチ(スイッチ A)が転送動作を変更し、マルチキャスト VLAN から別個の VLAN 上の加入者ポートへトラフィックを転送できるようにするので、選択されたトラフィックが 2 つの VLAN 間を伝送されます。
IGMP レポートは、マルチキャスト データと同じ IP マルチキャスト グループ アドレスに送信されます。スイッチ A の CPU は、レシーバー ポートから送られたすべての IGMP Join および Leave メッセージを取り込み、MVR モードに基づいて、送信元(アップリンク)ポートのマルチキャスト VLAN に転送しなければなりません。
MVR の設定
MVR のデフォルト設定
表23-5 に、MVR のデフォルト設定を示します。
MVR 設定時の注意事項および制限事項
- ・ レシーバー ポートはアクセス ポートでなければなりません。トランク ポートにすることはできません。スイッチ上のレシーバー ポートは、異なる VLAN に所属していてもかまいませんが、マルチキャスト VLAN には所属させないでください。
- ・ スイッチ上で設定できるマルチキャスト エントリ(MVR グループ アドレス)の最大数(受信できるテレビ チャネルの最大数)は 256 です。
- ・ 送信元 VLAN で受信され、レシーバー ポートから脱退する MVR マルチキャスト データは、スイッチで Time to Live(TTL)が 1 だけ少なくなります。
- ・ スイッチ上の MVR は、MAC マルチキャスト アドレスではなく IP マルチキャスト アドレスを使用するので、スイッチ上でエイリアスの IP マルチキャスト アドレスを使用できます。ただし、スイッチが Catalyst 3550 または Catalyst 3500 XL スイッチと相互運用している場合は、相互間でエイリアスとなる、または予約済みの IP マルチキャスト アドレス(224.0.0.xxx の範囲)を使用して IP アドレスを設定しないでください。
- ・ プライベート VLAN に MVR を設定しないでください。
- ・ スイッチ上でマルチキャスト ルーティングがイネーブルの場合、MVR はサポートされません。MVR がイネーブルの場合に、マルチキャスト ルーティングおよびマルチキャスト ルーティング プロトコルをイネーブルにすると、MVR がディセーブルになり、警告メッセージが表示されます。マルチキャスト ルーティングおよびマルチキャスト ルーティング プロトコルがイネーブルの場合に、MVR をイネーブルにしようとすると、MVR をイネーブルにする操作が取り消され、エラー メッセージが表示されます。
- ・ MVR はスイッチ上で IGMP スヌーピングと共存できます。
- ・ MVR レシーバー ポートで受信した MVR データは、MVR 送信元ポートに転送されません。
- ・ MVR は IGMPv3 メッセージをサポートしていません。
MVR グローバル パラメータの設定
デフォルト値を使用する場合は、オプションの MVR パラメータを設定する必要はありません。デフォルトのパラメータを変更する場合には(MVR VLAN 以外)、最初に MVR をイネーブルにする必要があります。
MVR パラメータを設定するには、特権 EXEC モードで次の手順を実行します。
スイッチをデフォルトの設定に戻すには、 no mvr [ mode | group ip-address | querytime | vlan ] グローバル コンフィギュレーション コマンドを使用します。
次に、MVR をイネーブルにして、MVR グループ アドレスを設定し、クエリー タイムを 1 秒(10 分の 10 秒)に設定し、MVR マルチキャスト VLAN を VLAN 22 として指定し、MVR モードをダイナミックに設定する例を示します。
Switch(config)# mvr group 228.1.23.4
Switch(config)# mvr querytime 10
Switch(config)# mvr mode dynamic
show mvr members 特権 EXEC コマンドを使用すると、スイッチ上の MVR マルチキャスト グループ アドレスを確認できます。
MVR インターフェイスの設定
レイヤ 2 MVR インターフェイスを設定するには、特権 EXEC モードで次の手順を実行します。
インターフェイスをデフォルトの設定に戻すには、 no mvr [ type | immediate | vlan vlan-id | group ] インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートをレシーバー ポートとして設定し、マルチキャスト グループ アドレスに送信されたマルチキャスト トラフィックを受信するようにポートを静的に設定し、ポートに即時脱退機能を設定し、結果を確認する例を示します。
Switch(config)# interface gigabitethernet0/2
Switch(config-if)# mvr type receiver
Switch(config-if)# mvr vlan 22 group 228.1.23.4
Switch(config-if)# mvr immediate
Port Type Status Immediate Leave
---- ---- ------- ---------------
Gi0/2 RECEIVER ACTIVE/DOWN ENABLED
MVR 情報の表示
スイッチまたは指定されたインターフェイスの MVR 情報を表示できます。MVR の設定を表示するには、特権 EXEC モードで 表23-6 のコマンドを使用します。
IGMP フィルタリングおよびスロットリングの設定
都市部や Multiple-Dwelling Unit(MDU; 集合住宅)などの環境では、スイッチ ポート上のユーザが属する一連のマルチキャスト グループを制御する必要があります。この機能を使用することにより、IP/TV などのマルチキャスト サービスの配信を、特定タイプの契約またはサービス計画に基づいて制御できます。また、マルチキャスト グループの数を、スイッチ ポート上でユーザが所属できる数に制限することもできます。
IGMP フィルタリング機能を使用すると、IP マルチキャスト プロファイルを設定し、それらを各スイッチ ポートに関連付けて、ポート単位でマルチキャスト加入をフィルタリングできます。IGMP プロファイルにはマルチキャスト グループを 1 つまたは複数格納して、グループへのアクセスを許可するか拒否するかを指定できます。マルチキャスト グループへのアクセスを拒否する IGMP プロファイルがスイッチ ポートに適用されると、IP マルチキャスト トラフィックのストリームを要求する IGMP Join レポートが廃棄され、ポートはそのグループからの IP マルチキャスト トラフィックを受信できなくなります。マルチキャスト グループへのアクセスがフィルタリング アクションで許可されている場合は、ポートからの IGMP レポートが転送されて、通常の処理が行われます。レイヤ 2 インターフェイスが加入できる IGMP グループの最大数も設定できます。
IGMP フィルタリングで制御されるのは、グループ固有のクエリーおよびメンバーシップ レポート(Join および Leave レポートを含む)だけです。一般 IGMP クエリーは制御されません。IGMP フィルタリングは、IP マルチキャスト トラフィックの転送を指示する機能とは無関係です。フィルタリング機能は、マルチキャスト トラフィックの転送に CGMP が使用されているか、または MVR が使用されているかに関係なく、同じように動作します。
IGMP フィルタリングが適用されるのは、IP マルチキャスト グループ アドレスを動的に学習する場合だけです。静的な設定には適用されません。
IGMP スロットリング機能を使用すると、レイヤ 2 インターフェイスが加入できる IGMP グループの最大数を設定できます。IGMP グループの最大数が設定され、IGMP スヌーピング転送テーブルに最大数のエントリが登録されていて、インターフェイスで IGMP Join レポートを受信する場合、インターフェイスを設定することにより、IGMP レポートを廃棄するか、あるいは受信した IGMP レポートでランダムに選択されたマルチキャスト エントリを上書きします。
- ・ IGMP フィルタリングおよび IGMP スロットリングのデフォルト設定
- ・ IGMP プロファイルの設定 (任意)
- ・ IGMP プロファイルの適用 (任意)
- ・ IGMP グループの最大数の設定 (任意)
- ・ IGMP スロットリング アクションの設定 (任意)
IGMP フィルタリングおよび IGMP スロットリングのデフォルト設定
表23-7 に、IGMP フィルタリングのデフォルト設定を示します。
転送テーブルに登録されているグループが最大数に達していると、デフォルトの IGMP スロットリング アクションは IGMP レポートを拒否します。設定時の注意事項については、 IGMP スロットリング アクションの設定 を参照してください。
IGMP プロファイルの設定
IGMP プロファイルを設定するには、 ip igmp profile グローバル コンフィギュレーション コマンドおよびプロファイル番号を使用して、IGMP プロファイルを作成し、IGMP プロファイル コンフィギュレーション モードを開始します。ポートから送信される IGMP Join 要求をフィルタリングするために使用される IGMP プロファイルのパラメータは、このモードから指定できます。IGMP プロファイル コンフィギュレーション モードでは、次のコマンドを使用して、プロファイルを作成できます。
- ・ deny :一致するアドレスを拒否します。デフォルトで設定されています。
- ・ exit :IGMP プロファイル コンフィギュレーション モードを終了します。
- ・ no :コマンドを否定するか、または設定をデフォルトに戻します。
- ・ permit :一致するアドレスを許可します。
- ・ range :プロファイルの IP アドレス範囲を指定します。単一の IP アドレス、または開始アドレスと終了アドレスで指定された IP アドレス範囲を入力できます。
デフォルトでは、スイッチには IGMP プロファイルが設定されていません。プロファイルが設定されており、 permit および deny キーワードがいずれも指定されていない場合、デフォルトでは、IP アドレス範囲へのアクセスが拒否されます。
IGMP プロファイルを作成するには、特権 EXEC モードで次の手順を実行します。
プロファイルを削除するには、 no ip igmp profile profile number グローバル コンフィギュレーション コマンドを使用します。
IP マルチキャスト アドレスまたは IP マルチキャスト アドレス範囲を削除するには、 no range ip multicast address IGMP プロファイル コンフィギュレーション コマンドを使用します。
次に、単一の IP マルチキャスト アドレスへのアクセスを許可する IGMP プロファイル4を作成して、設定を確認する例を示します。アクションが拒否(デフォルト)である場合は、 show ip igmp profile の出力には表示されません。
Switch(config)# ip igmp profile 4
Switch(config-igmp-profile)# permit
Switch(config-igmp-profile)# range 229.9.9.0
Switch(config-igmp-profile)# end
Switch# show ip igmp profile 4
IGMP プロファイルの適用
IGMP プロファイルの定義に従ってアクセスを制御するには、 ip igmp filter インターフェイス コンフィギュレーション コマンドを使用して、プロファイルを該当するインターフェイスに適用します。IGMP プロファイルを適用できるのは、レイヤ 2 アクセス ポートだけです。ルーテッド ポートや SVI には適用できません。EtherChannel ポート グループに所属するポートに、プロファイルを適用することはできません。1 つのプロファイルを複数のインターフェイスに適用できますが、1 つのインターフェイスに適用できるプロファイルは 1 つだけです。
スイッチ ポートに IGMP プロファイルを適用するには、特権 EXECモードで次の手順を実行します。
|
物理インターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。インターフェイスは、EtherChannel ポート グループに所属していないレイヤ 2 ポートでなければなりません。 |
||
|
指定された IGMP プロファイルをインターフェイスに適用します。指定できる範囲は 1 〜 4294967295 です。 |
||
インターフェイスからプロファイルを削除するには、 no ip igmp filter profile number インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートに IGMP プロファイル 4 を適用する例を示します。
Switch(config)# interface gigabitethernet0/2
Switch(config-if)# ip igmp filter 4
IGMP グループの最大数の設定
レイヤ 2 インターフェイスが加入できる IGMP グループの最大数を設定するには、 ip igmp max-groups インターフェイス コンフィギュレーション コマンドを使用します。最大数をデフォルト設定(制限なし)に戻すには、このコマンドの no 形式を使用します。
この制限が適用されるのはレイヤ 2 ポートだけです。ルーテッド ポートや SVI には IGMP グループの最大数を設定できません。また、このコマンドを論理 EtherChannel インターフェイスでも使用することはできますが、EtherChannel ポート グループに属するポート上では、使用できません。
転送テーブルの IGMP グループの最大数を設定するには、特権 EXEC モードで次の手順を実行します。
グループの最大数に関する制限を削除し、デフォルト設定(制限なし)に戻すには、 no ip igmp max-groups インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートが加入できる IGMP グループ数を 25 に制限する例を示します。
Switch(config)# interface gigabitethernet0/2
Switch(config-if)# ip igmp max-groups 25
IGMP スロットリング アクションの設定
レイヤ 2 インターフェイスが加入できる IGMP グループの最大数を設定したあと、 ip igmp max-groups action replace インターフェイス コンフィギュレーション コマンドを使用して受信した IGMP レポートの新しいグループで、既存のグループを上書きします。IGMP Join レポートを廃棄するデフォルトの設定に戻すには、このコマンドの no 形式を使用します。
IGMP スロットリングを設定するときには、次の注意事項に従ってください。
- ・ この制限事項は、レイヤ 2 ポートのみに適用されます。このコマンドは、論理 EtherChannel インターフェイスでは使用できますが、EtherChannel ポート グループに属するポートでは使用できません。
- ・ グループの最大数に関する制限がデフォルト(制限なし)に設定されている場合、 ip igmp max-groups action { deny | replace }コマンドを入力しても効果はありません。
- ・ インターフェイスによりマルチキャスト エントリが転送テーブルに追加されてから、スロットリング アクションを設定し、グループの最大数の制限を設定すると、転送テーブルのエントリは、スロットリング アクションに応じて期限切れになるか削除されます。
スイッチが転送テーブルのエントリを削除しないようにするには、インターフェイスにより転送テーブルにエントリが追加される前に、IGMP スロットリング アクションを設定します。
転送テーブルに最大数のエントリが登録されているときにスロットリング アクションを設定するには、特権 EXEC モードで次の手順を実行します。
レポートの廃棄というデフォルトのアクションに戻すには、 no ip igmp max-groups action インターフェイス コンフィギュレーション コマンドを使用します。
IGMP フィルタリングおよび IGMP スロットリング設定の表示
IGMP プロファイルの特性を表示したり、スイッチ上のすべてのインターフェイスまたは指定されたインターフェイスの IGMP プロファイルや最大グループ設定を表示したりできます。また、スイッチ上のすべてのインターフェイスまたは指定したインターフェイスに関する IGMP スロットリング設定を表示することもできます。
表23-8 の特権 EXEC コマンドを使用して、IGMP フィルタリングおよび IGMP スロットリングの設定を表示します。
|
インターフェイスが所属できる IGMP グループの最大数(設定されている場合)や、インターフェイスに適用される IGMP プロファイルを含む、特定のインターフェイスまたはスイッチ上のすべてのインターフェイスの設定を表示します。 |
