IGMP スヌーピングの概要
レイヤ 2 スイッチは、IGMP スヌーピングを使用してレイヤ 2 インターフェイスをダイナミックに設定することにより、マルチキャスト トラフィックのフラッディングを抑制するため、マルチキャスト トラフィックが IP マルチキャスト デバイスに対応付けられたインターフェイスにだけ転送されます。名前が示すとおり、IGMP スヌーピングでは、LAN スイッチはホストとルータの間で IGMP 伝送をスヌーピングし、マルチキャスト グループとメンバー ポートを追跡する必要があります。スイッチは、特定のマルチキャスト グループのホストから IGMP レポートを受け取ると、転送テーブル エントリにホストのポート番号を追加します。また、ホストから IGMP Leave Group メッセージを受け取ると、テーブル エントリからホスト ポートを削除します。また、マルチキャスト クライアントから IGMP メンバーシップ レポートを受信しない場合、定期的にエントリの削除も行います。
(注) IP マルチキャストおよび IGMP の詳細については、RFC 1112 および RFC 2236 を参照してください。
マルチキャスト ルータ(スタック マスターに IP サービス イメージ [以前の拡張マルチレイヤ イメージ(EMI)] を搭載した Catalyst 3750 スイッチも含む)は、すべての VLAN(仮想 LAN)に定期的に一般クエリーを送信します。このマルチキャスト トラフィックを必要とするすべてのホストは、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 バージョン」
• 「マルチキャスト グループへの加入」
• 「マルチキャスト グループからの脱退」
• 「即時脱退」
• 「IGMP の設定可能な leave タイマー」
• 「IGMP レポート抑制」
• 「IGMP スヌーピングおよびスイッチ スタック」
IGMP バージョン
スイッチは、IGMP バージョン 1、2、および 3 をサポートします。これらのバージョンは、スイッチ上で相互運用できます。たとえば、IGMPv2 スイッチ上で IGMP スヌーピングがイネーブルで、スイッチがホストから IGMPv3 レポートを受信した場合、スイッチは IGMPv3 レポートをマルチキャスト ルータに転送できます。
(注) スイッチは、宛先マルチキャスト MAC アドレスにのみ基づく IGMPv3 スヌーピングをサポートします。送信元 MAC アドレスまたはプロキシ レポートに基づくスヌーピングは、サポートされません。
IGMPv3 スイッチは、IGMPv1 および IGMPv2 スイッチでのスヌーピング機能および IGMPv3 メンバーシップ レポート メッセージのサポートを含む、Basic IGMPv3 Snooping Support(BISS)をサポートします。BISS は、ネットワークに IGMPv3 ホストが含まれる場合、マルチキャスト トラフィックのフラッディングを抑制します。BISS は、IGMPv2 または IGMPv1 ホストの IGMP スヌーピング機能とほぼ同じポート セットに対してトラフィックを制限します。
(注) IGMP フィルタリングまたは MVR を実行しているスイッチは、IGMPv3 Join および Leave メッセージをサポートしません。
IGMPv3 スイッチは、Source Specific Multicast(SSM)機能を実行しているデバイスとのメッセージの送受信を行うことができます。IGMPv3 と IGMP を含む SSM の詳細については、次の URL を参照してください。
http://www.cisco.com/univercd/cc/td/doc/product/software/ios121/121newft/121t/121t5/dtssm5t.htm
マルチキャスト グループへの加入
スイッチに接続されたホストが IP マルチキャスト グループに加入しようとする場合、このホストが IGMP バージョン 2 クライアントであれば、加入したい IGMP マルチキャスト グループを指定して、非請求の IGMP Join メッセージを送信します。また、スイッチはルータから一般クエリーを受信すると、VLAN 内のすべてのポートにそのクエリーを転送します。マルチキャスト グループに加入しようとする IGMP バージョン 1 またはバージョン 2ホストは、スイッチに Join メッセージを送信して応答します。スイッチの CPU は、グループのマルチキャスト転送テーブル エントリがまだ作成されていないと、これを作成します。また、Join メッセージを受信したインターフェイスの転送テーブル エントリへの追加も行います。そのインターフェイスに関連付けられているホストは、マルチキャスト グループのマルチキャスト トラフィックを受信します(図24-1を参照)。
図24-1 最初の IGMP Join メッセージ
ルータ A がスイッチに一般クエリーを送信し、スイッチがそのクエリーを同じ VLAN のすべてのメンバーであるポート 2 ~ 5 に転送します。ホスト 1はマルチキャスト グループ 224.1.2.3 に加入して、このグループに IGMP メンバーシップ レポート(IGMP Join メッセージ)をマルチキャストしようとします。スイッチの CPU は、IGMP レポートの情報を使用し、ホスト 1およびルータに接続しているポート番号を含む転送テーブル エントリを設定します。( 表24-1 を参照)
表24-1 IGMP スヌーピング転送テーブル
|
|
|
224.1.2.3 |
IGMP |
1、2 |
スイッチのハードウェアは、IGMP 情報パケットをマルチキャスト グループの他のパケットと区別できます。テーブル内の情報は、224.1.2.3 マルチキャスト IP アドレス宛の、IGMP パケットではないフレームを、ルータおよびグループに加入しているホストに送信するよう、スイッチング エンジンに指示します。
別のホスト(たとえばホスト 4)が同じグループに非請求の IGMP Join メッセージを送信する場合(図24-2を参照)、CPU はメッセージを受信して、転送テーブルにホスト 4のポート番号を追加します( 表24-2 を参照)。転送テーブルは CPU にだけ向けて IGMP メッセージを送るため、メッセージはスイッチの他のポートにはフラッディングしないことに注意してください。既知のマルチキャスト トラフィックはグループには転送されますが、CPU には転送されません。
図24-2 2 番めのホストのマルチキャスト グループへの加入
表24-2 アップデートされた IGMP スヌーピング転送テーブル
|
|
|
224.1.2.3 |
IGMP |
1、2、5 |
マルチキャスト グループからの脱退
ルータは定期的にマルチキャスト一般クエリーを送信し、スイッチはこのクエリーを VLAN のすべてのポートを通じて転送します。このクエリーを必要とするホストがこれに応答します。VLAN の 1 つまたは複数のホストがマルチキャスト トラフィックを必要とする場合は、ルータは VLAN にマルチキャスト トラフィックを転送し続けます。スイッチがマルチキャスト グループ トラフィックを転送するのは、IGMP スヌーピングによって維持されている、IP マルチキャスト グループの転送テーブルにリストされているホストに限られます。
ホストは、マルチキャスト グループを脱退する場合、メッセージを送信せずに脱退することも、Leave メッセージを送信することもできます。スイッチは、ホストから Leave メッセージを受信すると、グループ固有のクエリーを送信して、そのインターフェイスに接続しているその他のデバイスが、特定のマルチキャスト グループのトラフィックを必要としているかどうかを学習します。次に、その MAC グループの転送テーブルをアップデートして、そのグループのマルチキャスト トラフィックを必要とするホストだけが転送テーブルにリストされるようにします。ルータは、VLAN からのレポートを受信しなかった場合は、IGMP キャッシュからその VLAN のグループを削除します。
即時脱退
即時脱退は、IGMP バージョン 2 のホストについてのみサポートされます。
IGMP スヌーピングの即時脱退(immediate-leave)を使用すると、スイッチは、グループ固有のクエリーをインターフェイスに送信することなく、転送テーブルから Leave メッセージを送信したインターフェイスを削除できます。VLAN インターフェイスは、最初の Leave メッセージで指定されたマルチキャスト グループのマルチキャスト ツリーから削除されます。即時脱退によって、複数のマルチキャスト グループを同時に使用する場合でも、スイッチド ネットワーク上のすべてのホストに対して最適な帯域幅管理を行うことができます。
(注) 即時脱退機能は、ポートに 1 つのホストしか接続されていない VLAN 上でのみ使用してください。ポートに複数のホストが接続されている VLAN 上で即時脱退をイネーブルにすると、一部のホストが誤って廃棄される可能性があります。
設定手順については、「IGMP 即時脱退のイネーブル化」を参照してください。
IGMP の設定可能な leave タイマー
Cisco IOS Release 12.2(25)SEA およびそれ以前のバージョンでは、IGMP スヌーピング脱退時間は 5 秒に固定されていました。クエリーのクエリー応答時間が満了する前にスイッチがメンバーシップ レポートを受信しなかった場合、ポートはマルチキャスト グループ メンバーシップから削除されました。ただし、一部のアプリケーションでは、5 秒未満の脱退遅延を要求される場合があります。
Cisco IOS Release 12.2(25)SEB およびそれ以降のバージョンでは、グループ固有のクエリーを送信し、ホストと特定のマルチキャスト グループとの関連が続いているかどうかを判断するためのスイッチの待機時間を設定することができます。IGMP 脱退応答時間は、100 ~ 5000 ミリ秒で設定できます。このタイマーは、グローバルにも、VLAN ごとにも設定できます。グローバル設定は、脱退時間の VLAN 設定によって上書きされます。
設定手順については、「IGMP leave タイマーの設定」を参照してください。
IGMP レポート抑制
(注) IGMP レポート抑制は、マルチキャスト クエリーに IGMPv1 レポートおよび IGMPv2 レポートが含まれている場合にのみサポートされます。クエリーに IGMPv3 レポートが含まれる場合には、サポートされません。
スイッチは、IGMP レポート抑制を使用して、マルチキャスト デバイスにマルチキャスト ルータ クエリーごとに 1 つの IGMP レポートだけを転送します。IGMP レポート抑制がイネーブル(デフォルト)の場合、スイッチはグループに関するすべてのホストからの最初の IGMP レポートを、すべてのマルチキャスト ルータに送信します。スイッチは、グループに関する残りの IGMP レポートをマルチキャスト ルータに送信しません。この機能は、マルチキャスト デバイスに送信されるレポートの重複を防止します。
マルチキャスト ルータ クエリーに、IGMPv1 レポートおよび IGMPv2 レポートのみに関する要求が含まれている場合、スイッチはグループに関するすべてのホストからの最初の IGMPv1 レポートまたは IGMPv2 レポートだけを、マルチキャスト ルータに転送します。
マルチキャスト ルータ クエリーに IGMPv3 レポートに関する要求も含まれる場合は、スイッチはグループに関する IGMPv1、IGMPv2、および IGMPv3 レポートすべてをマルチキャスト デバイスに転送します。
IGMP レポート抑制がディセーブルの場合は、すべての IGMP レポートがマルチキャスト ルータに転送されます。設定手順については、「IGMP レポート抑制のディセーブル化」を参照してください。
IGMP スヌーピングおよびスイッチ スタック
IGMP スヌーピングはスイッチ スタックに対して機能します。つまり、1 つのスイッチから取得された IGMP 制御情報は、スタック内のすべてのスイッチに配信されます(スイッチ スタックの詳細については、 第 5 章「スイッチ スタックの管理」 を参照)。IGMP マルチキャスト データがスタックに入るときに経由するスタック メンバーに関係なく、データはそのグループに登録されたホストに到達します。
スタック内のスイッチに障害が発生したか、またはスイッチがスタックから削除された場合は、そのスイッチ上のマルチキャスト グループのメンバーのみがマルチキャスト データを受信しなくなります。スタック内の他のスイッチ上のその他のマルチキャスト グループ メンバーはすべて、マルチキャスト データ ストリームを引き続き受信します。ただし、スタック マスターが削除された場合は、レイヤ 2 およびレイヤ 3(IP マルチキャスト ルーティング)の両方に共通するマルチキャスト グループの収束時間が長くなることがあります。
IGMP スヌーピングの設定
IGMP スヌーピングを使用すると、スイッチは、IGMP パケットを調べたり、その内容に基づいて転送を判断できるようになります。ここでは、次の設定について説明します。
• 「IGMP スヌーピングのデフォルト設定」
• 「IGMP スヌーピングのイネーブル化またはディセーブル化」
• 「スヌーピング方式の設定」
• 「マルチキャスト ルータ ポートの設定」
• 「グループに加入するホストのスタティックな設定」
• 「IGMP 即時脱退のイネーブル化」
• 「IGMP leave タイマーの設定」
• 「TCN 関連コマンドの設定」
• 「IGMP スヌーピング クエリアの設定」
• 「IGMP レポート抑制のディセーブル化」
IGMP スヌーピングのデフォルト設定
表24-3 に、IGMP スヌーピングのデフォルト設定を示します。
表24-3 IGMP スヌーピングのデフォルト設定
|
|
IGMP スヌーピング |
グローバルおよび VLAN 単位でイネーブル |
マルチキャスト ルータ |
設定なし |
マルチキャスト ルータの学習(スヌーピング)方式 |
PIM-DVMRP |
IGMP スヌーピング即時脱退 |
ディセーブル |
スタティック グループ |
設定なし |
TCN フラッディング クエリー カウント |
2 |
TCN クエリー送信請求 |
ディセーブル |
IGMP スヌーピング クエリア |
ディセーブル |
IGMP レポート抑制 |
イネーブル |
IGMP スヌーピングのイネーブル化またはディセーブル化
デフォルトでは、IGMP スヌーピングはスイッチ上でグローバルにイネーブルです。グローバルにイネーブルまたはディセーブルに設定されていると、既存のすべての VLAN インターフェイスでもイネーブルまたはディセーブルになっています。IGMP スヌーピングは、デフォルトですべての VLAN でイネーブルになっていますが、VLAN 単位でイネーブルおよびディセーブルに設定することもできます。
グローバル IGMP スヌーピングは、VLAN IGMP スヌーピングより優先されます。グローバル スヌーピングがディセーブルになっている場合は、VLAN スヌーピングをイネーブルにできません。グローバル スヌーピングがイネーブルの場合、VLAN スヌーピングはイネーブルまたはディセーブルのどちらにも設定できます。
スイッチ上で IGMP スヌーピングをグローバルにイネーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping |
既存のすべての VLAN インターフェイスで IGMP スヌーピングをグローバルにイネーブルにします。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
すべての VLAN インターフェイスで IGMP スヌーピングをグローバルにディセーブルにするには、 no ip igmp snooping グローバル コンフィギュレーション コマンドを使用します。
VLAN インターフェイスで IGMP スヌーピングをイネーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping vlan vlan-id |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
VLAN インターフェイスで IGMP スヌーピングをディセーブルにするには、指定された VLAN 番号について no ip igmp snooping vlan vlan-id グローバル コンフィギュレーション コマンドを使用します。
スヌーピング方式の設定
マルチキャスト対応ルータ ポートは、すべてのレイヤ 2 マルチキャスト エントリの転送テーブルに追加されます。スイッチは、次のいずれか 1 つの方式でそれらのポートを学習します。
• 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 または proxy-join パケットのみを待ち受け、その他の CGMP パケットは待ち受けません。PIM/DVMRP パケットからのみマルチキャスト ルータ ポートを学習させるには、 ip igmp snooping vlan vlan-id mrouter learn pim-dvmrp グローバル コンフィギュレーション コマンドを使用します。
(注) 学習方式として CGMP を使用し、VLAN 内のマルチキャスト ルータを CGMP プロキシ対応にしない場合、ダイナミックにルータにアクセスするにはip cgmp router-onlyコマンドを実行する必要があります。詳細については、第 40 章「IP マルチキャスト ルーティングの設定」を参照してください。
VLAN インターフェイスがダイナミックにマルチキャストルータにアクセスする方法を変更するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping vlan vlan-id mrouter learn { cgmp | pim-dvmrp } |
VLAN 上で IGMP スヌーピングをイネーブルにします。指定できる VLAN ID の範囲は 1 ~ 1001 および 1006 ~ 4094 です。 マルチキャスト ルータの学習方式を指定します。 • cgmp ― CGMP パケットを待ち受けます。この方式は制御トラフィックの削減に便利です。 • pim-dvmrp ― IGMP クエリーおよび PIM-DVMRP パケットをスヌーピングします。これはデフォルト設定です。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping |
設定を確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
デフォルトの学習方式に戻すには、 no ip igmp snooping vlan vlan-id mrouter learn cgmp グローバル コンフィギュレーション コマンドを使用します。
次に、学習方式として CGMP パケットを使用するように IGMP スヌーピングを設定する例を示します。
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 1 mrouter learn cgmp
マルチキャスト ルータ ポートの設定
マルチキャスト ルータ ポートを追加する(マルチキャスト ルータにスタティック接続を追加する)には、スイッチ上で ip igmp snooping vlan mrouter グローバル コンフィギュレーション コマンドを使用します。
(注) マルチキャスト ルータへのスタティック接続は、スイッチ ポートに限りサポートされます。
マルチキャスト ルータへのスタティック接続をイネーブルに設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping vlan vlan-id mrouter interface interface-id |
マルチキャスト ルータの VLAN ID およびそのマルチキャスト ルータに対するインターフェイスを指定します。 • 指定できる VLAN ID の範囲は 1 ~ 1001 および 1006 ~ 4094 です。 • インターフェイスは物理インターフェイスまたはポート チャネルに設定できます。指定できるポート チャネルの範囲は 1 ~48です。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping mrouter [ vlan vlan-id ] |
VLAN インターフェイスで IGMP スヌーピングがイネーブルになっていることを確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
VLAN からマルチキャスト ルータ ポートを削除するには、 no ip igmp snooping vlan vlan-id mrouter interface interface-id グローバル コンフィギュレーション コマンドを使用します。
次に、マルチキャスト ルータへのスタティック接続をイネーブルに設定する例を示します。
Switch# configure terminal
Switch(config)#
ip igmp snooping vlan 200 mrouter interface gigabitethernet1/0/2
グループに加入するホストのスタティックな設定
ホストまたはレイヤ 2 ポートは、通常はマルチキャスト グループにダイナミックに加入しますが、インターフェイスでホストをスタティックに設定することもできます。
マルチキャスト グループのメンバーとしてレイヤ 2 ポートを追加するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping vlan vlan-id static ip_address interface interface-id |
マルチキャスト グループのメンバーとしてレイヤ 2 ポートをスタティックに設定します。 • vlan-id は、マルチキャスト グループ VLAN ID です。指定できる範囲は、1 ~ 1001 および 1006 ~ 4094 です。 • ip-address は、グループ IP アドレスです。 • interface-id は、メンバー ポートです。物理インターフェイスまたはポート チャネル(1 ~48)に設定できます。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping groups |
メンバー ポートおよび IP アドレスを確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
マルチキャスト グループからレイヤ 2 ポートを削除するには、 no ip igmp snooping vlan vlan-id static mac-address interface interface-id グローバル コンフィギュレーション コマンドを使用します。
次に、ポートでホストをスタティックに設定する例を示します。
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 105 static 224.2.4.12 interface gigabitethernet1/0/1
IGMP 即時脱退のイネーブル化
IGMP 即時脱退をイネーブルにすると、スイッチは、ポートで IGMP バージョン 2 Leave メッセージを検出してそのポートを即座に削除します。VLAN の各ポートにレシーバーが 1 つ存在する場合のみ、即時脱退機能を使用してください。
(注) 即時脱退は、IGMP バージョン 2 のホストについてのみサポートされます。
IGMP 即時脱退をイネーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping vlan vlan-id immediate-leave |
VLAN インターフェイス上で IGMP 即時脱退をイネーブルにします。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping vlan vlan-id |
VLAN インターフェイス上で IGMP 即時脱退がイネーブルになっていることを確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
VLAN 上で IGMP 即時脱退をディセーブルにするには、 no ip igmp snooping vlan vlan-id immediate-leave グローバル コンフィギュレーション コマンドを使用します。
次に、VLAN 130 で IGMP 即時脱退をイネーブルにする例を示します。
Switch# configure terminal
Switch(config)# ip igmp snooping vlan 130 immediate-leave
IGMP leave タイマーの設定
IGMP leave タイマーを設定する際は、次の注意事項に従ってください。
• 脱退時間は、グローバルにも、VLAN ごとにも設定できます。
• VLAN で脱退時間を設定すると、グローバル設定は上書きされます。
• デフォルトの脱退時間は 1000 ミリ秒です。
• IGMP の設定可能な脱退時間は、IGMP バージョン 2 を実行しているホストのみでサポートされます。
• ネットワークの実際の脱退遅延は通常、設定した脱退時間になります。ただし、リアルタイムの CPU 負荷条件、ネットワーク遅延、インターフェイスによって送信されたトラフィック量により、脱退時間は設定した時間付近でばらつくことがあります。
IGMP の設定可能な leave タイマーをイネーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping last-member-query-interval time |
IGMP leave タイマーをグローバルに設定します。範囲は 100 ~ 5000 ミリ秒です。デフォルト値は 1000 秒です。 |
ステップ 3 |
ip igmp snooping vlan vlan-id last-member-query-interval time |
ステップ 4 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 5 |
show ip igmp snooping |
(任意)設定した IGMP 脱退時間を表示します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
IGMP 脱退タイマーをグローバルにデフォルトへリセットするには、 no ip igmp snooping last-member-query-interval グローバル コンフィギュレーション コマンドを使用します。
設定した IGMP 脱退時間設定を特定の VLAN から削除するには、 no ip igmp snooping vlan vlan-id last-member-query-interval グローバル コンフィギュレーション コマンドを使用します。
TCN イベント後のマルチキャスト フラッディング時間の制御
ip igmp snooping tcn flood query count グローバル コンフィギュレーション コマンドを使用すると、TCN イベント後にマルチキャスト トラフィックがフラッディングされる時間を制御できます。このコマンドは、TCN イベント後の、マルチキャスト データ トラフィックのフラッディングに対する一般クエリーの数を設定します。TCN イベントの例として、クライアントの場所が変わり、ブロックが解除されて現在は転送を行なっているポートと同じポートに受信者がいる場合、およびポートが Leave メッセージを送信せずにダウンした場合があります。
ip igmp snooping tcn flood query count コマンドを使用して TCN フラッディング クエリー カウントを 1 に設定すると、フラッディングは 1 つの一般クエリーを受信したあとに停止します。カウントを 7 に設定すると、フラッディングは 7 つの一般クエリーを受信するまで続きます。グループは、TCN イベント時に受信された一般クエリーに基づいて再学習されます。
TCN フラッディング クエリー カウントを設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping tcn flood query count count |
マルチキャスト トラフィックのフラッディングに対する、IGMP の一般クエリーの数を指定します。範囲は 1 ~ 10 です。デフォルトのフラッディング クエリー カウントは 2 です。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping |
TCN 設定を確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
デフォルトのフラッディング クエリー カウントに戻すには、 no ip igmp snooping tcn flood query count グローバル コンフィギュレーション コマンドを使用します。
フラッディング モードからの回復
トポロジー変更が発生すると、スパニングツリー ルートは、グループ マルチキャスト アドレスが 0.0.0.0 の特別な IGMP Leave メッセージ(グローバル Leave としても知られています)を送信します。ただし、 ip igmp snooping tcn query solicit グローバル コンフィギュレーション コマンドをイネーブルにすると、スイッチはスパニングツリー ルートであるかどうかにかかわらずグローバル Leave メッセージを送信します。ルータは特別な Leave を受信すると、TCN イベント時のフラッディング モードからの回復プロセスを促進する一般クエリーを即座に送信します。このコンフィギュレーション コマンドに関係なく、スイッチがスパニングツリー ルートの場合は、常に Leave が送信されます。デフォルトでは、クエリー送信はディセーブルにされています。
スイッチがスパニングツリー ルートであるかどうかにかかわらず、グローバル Leave メッセージを送信するようにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping tcn query solicit |
TCN イベント時に、フラッディング モードからの回復プロセスを促進するために IGMP Leave メッセージ(グローバル Leave)を送信します。デフォルトでは、クエリー送信はディセーブルにされています。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping |
TCN 設定を確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
デフォルトの クエリー送信に戻すには、 no ip igmp snooping tcn query solicit グローバル コンフィギュレーション コマンドを使用します。
TCN イベント時のマルチキャスト フラッディングのディセーブル化
スイッチが TCN を受信すると、2 つの一般クエリーを受信するまでマルチキャスト トラフィックはすべてのポートにフラッディングされます。スイッチに多数のポートがあり、異なるマルチキャスト グループに属する複数のホストが接続されている場合、このフラッディングはリンクの容量を超過し、パケットの喪失を生じさせる場合があります。この動作を制御するには、 ip igmp snooping tcn flood インターフェイス コンフィギュレーション コマンドを使用します。
インターフェイスでマルチキャスト フラッディングをディセーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
no ip igmp snooping tcn flood |
スパニングツリー TCN イベント時のマルチキャスト トラフィックのフラッディングをディセーブルにします。 デフォルトでは、マルチキャスト フラッディングはインターフェイスでイネーブルにされています。 |
ステップ 4 |
exit |
イネーブル EXEC モードに戻ります。 |
ステップ 5 |
show ip igmp snooping |
TCN 設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
インターフェイスでマルチキャスト フラッディングを再度イネーブルにするには、 ip igmp snooping tcn flood インターフェイス コンフィギュレーション コマンドを使用します。
IGMP スヌーピング クエリアの設定
IGMP スヌーピング クエリアを設定する際は、次の注意事項に従ってください。
• グローバル コンフィギュレーション モードで VLAN を設定します。
• VLAN インターフェイス上に IP アドレスを設定します。イネーブルの場合、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 スヌーピング クエリアは以下の条件下にあるときは操作上のディセーブル ステートに移行します。
–IGMP スヌーピングが VLAN でディセーブルに設定されている。
–PIM が、対応する VLAN の SVI でイネーブルに設定されている。
VLAN で IGMP スヌーピング クエリア機能をイネーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp snooping querier |
IGMP スヌーピング クエリアをイネーブルにします。 |
ステップ 3 |
ip igmp snooping querier address ip_address |
ステップ 4 |
ip igmp snooping querier query-interval interval-count |
(任意)IGPM クエリアの間隔を設定します。指定できる範囲は 1 ~ 18000 秒です。 |
ステップ 5 |
ip igmp snooping querier tcn query [ count count | interval interval ] |
(任意)Topology Change Notification(TCN; トポロジー変更通知)クエリアの間隔を設定します。指定できる回数は 1 ~ 10 で間隔は 1 ~ 255 秒です。 |
ステップ 6 |
ip igmp snooping querier timer expiry timeout |
(任意)IGMP クエリアの期限が切れるまでの時間を設定します。指定できる範囲は 60 ~ 300 秒です。 |
ステップ 7 |
ip igmp snooping querier version version |
(任意)クエリア機能が使用する IGMP バージョン番号を選択します。1 か 2 を選択します。 |
ステップ 8 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 9 |
show ip igmp snooping vlan vlan-id |
(任意)VLAN インターフェイスで IGMP スヌーピング クエリアがイネーブルになっていることを確認します。VLAN ID の範囲は 1 ~ 1001 および 1006 ~ 4094 です。 |
ステップ 10 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
次の例は、IGMP スヌーピング クエリアの送信元アドレスを 10.0.0.64 に設定する方法を示しています。
Switch# configure terminal
Switch(config)# ip igmp snooping querier 10.0.0.64
次の例は、IGMP スヌーピング クエリアの最大応答時間を 25 秒に設定する方法を示しています。
Switch# configure terminal
Switch(config)# ip igmp snooping querier query-interval 25
次の例は、IGMP スヌーピング クエリアのタイムアウトを 60 秒に設定する方法を示しています。
Switch# configure terminal
Switch(config)# ip igmp snooping querier timeout expiry 60
次の例は、IGMP スヌーピング クエリア機能をバージョン 2 に設定する方法を示しています。
Switch# configure terminal
Switch(config)# no ip igmp snooping querier version 2
IGMP レポート抑制のディセーブル化
(注) IGMP レポート抑制は、マルチキャスト クエリーに IGMPv1 レポートおよび IGMPv2 レポートが含まれている場合にのみサポートされます。クエリーに IGMPv3 レポートが含まれる場合には、サポートされません。
IGMP レポート抑制は、デフォルトでイネーブルに設定されています。この機能がイネーブルになると、スイッチはマルチキャスト ルータ クエリーごとに 1 つの IGMP レポートのみを転送します。レポート抑制がディセーブルの場合は、すべての IGMP レポートがマルチキャスト ルータに転送されます。
IGMP レポート抑制をディセーブルにするには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
no ip igmp snooping report-suppression |
IGMP レポート抑制をディセーブルにします。 |
ステップ 3 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 4 |
show ip igmp snooping |
IGMP レポート抑制がディセーブルであることを確認します。 |
ステップ 5 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
IGMP レポート抑制を再びイネーブルにするには、 ip igmp snooping report-suppression グローバル コンフィギュレーション コマンドを使用します。
MVR の概要
MVR は、イーサネット リングベースのサービス プロバイダー ネットワークで、マルチキャスト トラフィックを広範囲に配信するアプリケーション(サービス プロバイダー ネットワークでの複数の TV チャネルのブロードキャストなど)用に設計された機能です。MVR により、ポート上の加入者は、ネットワーク全般のマルチキャスト VLAN のマルチキャスト ストリームに対して、加入または非加入を設定できます。ネットワーク上で 1 つのマルチキャスト 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 データ ポートに転送されます。マルチキャスト データは、IGMP レポートまたは MVR スタティック設定を使用して、MVR ホストが明示的に加入した受信ポートにのみ転送されます。また、MVR ホストから受信された IGMP レポートは、スイッチに設定された MVP データ ポートからは転送されません。
• ダイナミック モードの場合、スイッチ上の MVR ホストで受信されたマルチキャスト データは、IGMP レポートまたは MVR スタティック設定を使用して、MVR ホストが加入した MVR データ ポートおよびクライアント ポートからのみ転送されます。MVR ホストから着信した IGMP レポートは、スイッチ内のすべての MVR データ ポートからも転送されます。これにより、スイッチが互換モードで動作している場合のように MVR データ ポート リンクで不要な帯域幅が使用されることがなくなります。
MVR に参加するのは、レイヤ 2 ポートのみです。ポートは MVR 受信ポートして設定する必要があります。各スイッチ スタックでサポートされる MVR マルチキャスト VLAN は、1 つのみです。
受信ポートおよび送信元ポートは、スイッチ スタック内のそれぞれ別のスイッチに設定できます。マルチキャスト VLAN で送信されるマルチキャスト データはスタック内のすべての MVR 受信ポートに転送されます。スタックに新規に追加されたスイッチには、デフォルトで受信ポートが設定されていません。
スイッチに障害が発生するか、スタックから削除されると、このスイッチに属する受信ポートのみがマルチキャスト データを受信しなくなります。その他のスイッチのその他のすべての受信ポートは、引き続きマルチキャスト データを受信します。
マルチキャスト TV アプリケーションでの MVR の使用方法
マルチキャスト TV アプリケーションでは、PC またはセットトップ ボックスを装備した TV で、マルチキャスト ストリームを受信できます。複数のセットトップ ボックスまたは複数の PC は、MVR の受信ポートとして設定されたスイッチ ポートである、1 つの加入者ポートに接続できます。図24-3に設定例を示します。セットトップ ボックスまたは PC には、DHCP によって IP アドレスが割り当てられます。加入者がチャネルを選択すると、対応するマルチキャストに加入するために、セットトップ ボックスまたは PC からスイッチ A に対して IGMP レポートが送信されます。IGMP レポートが、設定済みの IP マルチキャスト グループ アドレスの 1 つと一致すると、スイッチの CPU は、ハードウェアのアドレス テーブルを変更し、指定されたマルチキャスト ストリームをマルチキャスト VLAN から受信した場合にそのマルチキャスト ストリームを転送する宛先として、この受信ポートと VLAN をアドレス テーブルに追加します。マルチキャスト VLAN との間でマルチキャスト データを送受信するアップリンク ポートを、MVR 送信元ポートと呼びます。
図24-3 MVR の例
加入者がチャネルを変更するか、TV をオフにすると、セットトップ ボックスからマルチキャスト ストリームの IGMP Leave メッセージが送信されます。スイッチの CPU は、受信ポートの VLAN を介して、MAC ベースの一般クエリーを送信します。VLAN 内に、このグループに加入している他のセットトップ ボックスがある場合には、そのセットトップ ボックスはクエリーで指定された最大応答時間内に応答しなければなりません。応答を受信しない場合、CPU はこのグループの転送宛先から受信ポートを除外します。
即時脱退機能がイネーブルになっていない場合、スイッチは受信ポートの加入者から IGMP Leave メッセージを受信すると、そのポートに IGMP クエリーを送信して IGMP グループ メンバーシップ レポートを待ちます。設定された時間内にレポートを受信しなかった場合は、マルチキャスト グループ メンバーシップから受信ポートが削除されます。即時脱退機能を使用する場合、IGMP クエリーは、IGMP Leave メッセージを受信した受信ポートから送信されません。Leave メッセージを受信するとただちに、受信ポートがマルチキャスト グループ メンバーシップから削除されるため、脱退遅延時間が短縮されます。即時脱退機能は、1 つの受信デバイスを接続した受信ポートでだけイネーブルにしてください。
MVR では、各 VLAN の複数の加入者に対して TV チャネルのマルチキャスト トラフィックを重複して送信する必要がありません。すべてのチャネルに対するマルチキャスト トラフィックが、VLAN トランクで 1 回だけ送信されます(マルチキャスト VLAN 上のみ)。IGMP Leave および Join メッセージは、加入者ポートが割り当てられている VLAN 内で送信されます。これらのメッセージによって、レイヤ 3 デバイス(スイッチ B)上でマルチキャスト VLAN のマルチキャスト トラフィック ストリームが、ダイナミックに登録されます。アクセス レイヤ スイッチ(スイッチ A)は、マルチキャスト VLAN から別の VLAN 上の加入者ポートにトラフィックが転送されるように転送動作を変更し、2 つの VLAN 間で伝送されるトラフィックを選択的に許可します。
IGMP レポートは、マルチキャスト データと同じ IP マルチキャスト グループ アドレスに送信されます。スイッチ A の CPU は、受信ポートからのすべての IGMP Join および Leave メッセージを取り込み、MVR モードに基づいて、送信元(アップリンク)ポートのマルチキャスト VLAN に転送する必要があります。
MVR の設定
ここでは、次の設定について説明します。
• 「MVR のデフォルト設定」
• 「MVR 設定時の注意事項および制限事項」
• 「MVR グローバル パラメータの設定」
• 「MVR インターフェイスの設定」
MVR のデフォルト設定
表24-5 に、MVR のデフォルト設定を示します。
表24-5 MVR のデフォルト設定
|
|
MVR |
グローバルおよびインターフェイス単位でディセーブル |
マルチキャスト アドレス |
設定なし |
クエリー応答時間 |
0.5 秒 |
マルチキャスト VLAN |
VLAN 1 |
モード |
互換 |
インターフェイス(ポート単位)のデフォルト |
受信および送信元のどちらのポートでもない |
即時脱退 |
すべてのポートでディセーブル |
MVR 設定時の注意事項および制限事項
MVR の設定時は、次の注意事項に従ってください。
• 受信ポートにすることができるのは、アクセス ポートのみです。トランク ポートは受信ポートに設定できません。スイッチの受信ポートは別の VLAN に属していてもかまいませんが、マルチキャスト VLAN に属することはできません。
• スイッチ上に設定できるマルチキャスト エントリ(MVR グループ アドレス)の最大数(受信できる TV チャネルの最大数)は 256 です。
• 送信元 VLAN で受信され受信ポートから送信される MVR マルチキャスト データの Time To Live(TTL)は、スイッチを通過するたびに値が 1 ずつ小さくなります。
• スイッチの MVR では、MAC マルチキャスト アドレスでなく IP マルチキャスト アドレスが使用されるため、エイリアスが設定された IP マルチキャスト アドレスを使用できます。ただし、スイッチが Catalyst 3550 または Catalyst 3500 XL スイッチと相互作用している場合は、IP アドレス間で、または予約済みの 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 モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
mvr |
スイッチ上で MVR をイネーブルに設定します。 |
ステップ 3 |
mvr group ip-address [ count ] |
スイッチ上に IP マルチキャスト アドレスを設定します。または、 count パラメータを使用して、連続する MVR グループ アドレスを設定します( count の範囲は 1 ~ 256 で、デフォルトは 1 です)。このアドレス宛のマルチキャスト データは、スイッチ上のすべての送信元ポート、およびこのマルチキャスト アドレス上のデータを受信するように設定されているすべての受信ポートに送信されます。各マルチキャスト アドレスは、1 つの TV チャネルに対応付けられます。 |
ステップ 4 |
mvr querytime value |
(任意)マルチキャスト グループ メンバーシップから受信ポートを削除するまでに、受信ポートで IGMP レポート メンバーシップを待機する最大待機時間を指定します。値は、1/10 秒単位で指定します。指定できる範囲は 1 ~ 100 で、デフォルトは 5/10、つまり 0.5 秒です。 |
ステップ 5 |
mvr vlan vlan-id |
(任意)マルチキャスト データを受信する VLAN を指定します。すべての送信元ポートはこの VLAN に属する必要があります。指定できる VLAN の範囲は、1 ~ 1001 および 1006 ~ 4094 です。デフォルトは、VLAN 1 です。 |
ステップ 6 |
mvr mode { dynamic | compatible } |
(任意)MVR 動作モードを指定します。 • dynamic ― 送信元ポートでのダイナミック MVR メンバーシップを可能にします。 • compatible ― Catalyst 3500 XL および Catalyst 2900 XL スイッチと互換性があり、送信元ポートでのダイナミックな IGMP Join をサポートしません。 デフォルト設定は、 compatible モードです。 |
ステップ 7 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 8 |
show mvr または show mvr members |
設定を確認します。 |
ステップ 9 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
スイッチをデフォルト設定に戻すには、 no mvr [ mode | group ip-address | querytime | vlan ] グローバル コンフィギュレーション コマンドを使用します。
次に、MVR をイネーブルにして、グループ アドレスを設定し、クエリー時間を 1 秒(10 × 1/10)に設定し、MVR マルチキャスト VLAN を VLAN 22 として指定し、MVR モードをダイナミックに設定する方法を示します。
Switch(config)# mvr group 228.1.23.4
Switch(config)# mvr querytime 10
Switch(config)# mvr vlan 22
Switch(config)# mvr mode dynamic
show mvr members イネーブル EXEC コマンドを使用すると、スイッチ上の MVR マルチキャスト グループ アドレスを確認できます。
MVR インターフェイスの設定
レイヤ 2 MVR インターフェイスを設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
mvr |
スイッチ上で MVR をイネーブルに設定します。 |
ステップ 3 |
interface interface-id |
設定するレイヤ 2 ポートを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 4 |
mvr typ e { source | receiver } |
MVR ポートを次のいずれかに設定します。 • source ― マルチキャスト データを送受信するアップリンク ポートを送信元ポートとして設定します。加入者は、直接送信元ポートに接続できません。スイッチ上の送信元ポートは、すべて 1 つのマルチキャスト VLAN に属します。 • receiver ― ポートが加入者ポートで、マルチキャスト データの受信だけを行う場合には、受信ポートとして設定します。受信ポートは、スタティックな設定、または IGMP Join および Leave メッセージによって、マルチキャスト グループのメンバーになるまでは、データを受信しません。受信ポートは、マルチキャスト VLAN に属することはできません。 デフォルト設定は非 MVR ポートです。MVR 特性で非 MVR ポートを設定しようとすると、操作は無効になります。 |
ステップ 5 |
mvr vlan vlan-id group [ ip-address ] |
(任意)マルチキャスト VLAN および IP マルチキャスト アドレスに送信されたマルチキャスト トラフィックを受信するように、ポートをスタティックに設定します。グループのメンバーとしてスタティックに設定されたポートは、スタティックに削除されるまではグループ メンバーのままです。
(注) 互換モードでは、このコマンドは受信ポートのみに対して適用されます。ダイナミック モードでは、受信ポートおよび送信元ポートに適用されます。
受信ポートは、IGMP Join および Leave メッセージによって、マルチキャスト グループにダイナミックに加入することもできます。 |
ステップ 6 |
mvr immediate |
ステップ 7 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 8 |
show mvr show mvr interface または show mvr members |
設定を確認します。 |
ステップ 9 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
インターフェイスをデフォルト設定に戻すには、 no mvr [ type | immediate | vlan vlan-id | group ] インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートを受信ポートとして設定し、マルチキャスト グループ アドレスに送信されたマルチキャスト トラフィックを受信するようにポートをスタティックに設定し、ポートに即時脱退機能を設定して、結果を確認する方法を示します。
Switch(config)# interface gigabitethernet1/0/2
Switch(config-if)# mvr type receiver
Switch(config-if)# mvr vlan 22 group 228.1.23.4
Switch(config-if)# mvr immediate
Switch# show mvr interface
Port Type Status Immediate Leave
---- ---- ------- ---------------
Gi1/0/2 RECEIVER ACTIVE/DOWN ENABLED
IGMP フィルタリングおよび IGMP スロットリングの設定
一部の環境(たとえば、メトロポリタンまたは Multiple-Dwelling Unit[MDU; 集合住宅]インストレーション)では、スイッチ ポート上のユーザが所属する複数のマルチキャスト グループを管理する必要があります。この機能により、契約やサービス計画のタイプに基づいて IP/TV などのマルチキャスト サービスの配信を制御できます。また、スイッチ ポート上のユーザが所属できるマルチキャスト グループ数を制限する必要もあります。
IGMP フィルタリング機能を使用すると、IP マルチキャスト プロファイルを設定して個々のスイッチ ポートに対応付けることにより、ポート単位でマルチキャスト加入をフィルタリングできます。IGMP プロファイルには 1 つまたは複数のマルチキャスト グループを格納できます。また、IGMP プロファイルによって、このグループへのアクセスを許可するか拒否するかを指定できます。マルチキャスト グループへのアクセスを拒否する 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 フィルタリングを実行しているスイッチでは、IGMPv3 Join および Leave メッセージはサポートされません。
ここでは、次の設定について説明します。
• 「IGMP フィルタリングおよび IGMP スロットリングのデフォルト設定」
• 「IGMP プロファイルの設定」(任意)
• 「IGMP プロファイルの適用」(任意)
• 「IGMP グループの最大数の設定」(任意)
• 「IGMP スロットリング アクションの設定」(任意)
IGMP フィルタリングおよび IGMP スロットリングのデフォルト設定
表24-7 に、IGMP フィルタリングのデフォルト設定を示します。
表24-7 IGMP フィルタリングのデフォルト設定
|
|
IGMP フィルタリング |
適用なし |
IGMP グループの IGMP 最大数 |
最大値は設定なし |
IGMP プロファイル |
定義なし |
IGMP プロファイル アクション |
範囲アドレスを拒否 |
転送テーブルにグループの最大数がある場合、IGMP スロットリング アクションは、デフォルトで IGMP レポートを拒否します。設定時の注意事項については、 「IGMP スロットリング アクションの設定」を参照してください。
IGMP プロファイルの設定
IGMP プロファイルを設定するには、プロファイル番号を指定して ip igmp profile グローバル コンフィギュレーション コマンドを使用し、IGMP プロファイル コンフィギュレーション モードを開始して、IGMP プロファイルを作成します。このモードでは、ポートからの IGMP Join 要求をフィルタリングするのに使用する、IGMP プロファイルのパラメータを指定できます。IGMP プロファイル コンフィギュレーション モードの場合は、次のコマンドでプロファイルを作成できます。
• deny :一致アドレスを拒否するように指定します。これがデフォルトです。
• exit :IGMP プロファイル コンフィギュレーション モードを終了します。
• no :コマンドを無効にするか、デフォルトに戻します。
• permit :一致アドレスを許可するよう指定します。
• range :そのプロファイルの IP アドレスの範囲を指定します。1 つの IP アドレスまたは、開始アドレスおよび終了アドレスで指定した範囲を設定することもできます。
デフォルトでは、IGMP プロファイルが未設定です。プロファイルの設定時に、 permit または deny のどちらのキーワードも指定されていない場合は、デフォルトで IP アドレスの範囲へのアクセスが拒否されます。
IGMP プロファイルを作成するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
ip igmp profile profile number |
設定するプロファイルに番号を割り当て、IGMP プロファイル コンフィギュレーション モードを開始します。プロファイル番号の範囲は、1 ~ 4294967295です。 |
ステップ 3 |
permit | deny |
(任意)IP マルチキャスト アドレスへのアクセスを許可または拒否するアクションを設定します。アクションが設定されていない場合は、プロファイルのデフォルト設定によってアクセスが拒否されます。 |
ステップ 4 |
range ip multicast address |
アクセスが制御される IP マルチキャスト アドレスまたは IP マルチキャスト アドレスの範囲を入力します。範囲を入力する場合は、最小値の IP マルチキャスト アドレス、スペース、最大値の IP マルチキャスト アドレスの順で入力します。 range コマンドを複数回使用すると、複数のアドレスまたはアドレス範囲を入力できます。 |
ステップ 5 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 6 |
show ip igmp profile profile number |
プロファイル設定を確認します。 |
ステップ 7 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
プロファイルを削除するには、 no ip igmp profile profile number グローバル コンフィギュレーション コマンドを使用します。
IP マルチキャスト アドレスまたは IP マルチキャスト アドレス範囲を削除するには、 no range ip multicast address IGMP プロファイル コンフィギュレーション コマンドを使用します。
次に、1 つの 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
range 229.9.9.0 229.9.9.0
IGMP プロファイルの適用
IGMP プロファイルの定義に従ってアクセスを制御するには、 ip igmp filter インターフェイス コンフィギュレーション コマンドを使用して該当するインターフェイスにプロファイルを適用します。IGMP プロファイルを適用できるのは、レイヤ 2 アクセス ポートだけです。ルーテッド ポートや SVI には適用できません。また、EtherChannel ポート グループに属するポートにはプロファイルを適用できません。1 つのプロファイルを複数のインターフェイスに適用できますが、各インターフェイスに適用できるプロファイルは 1 つだけです。
スイッチ ポートに IGMP プロファイルを適用するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
物理インターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。このインターフェイスには、EtherChannel ポート グループに属していないレイヤ 2 ポートを指定しなければなりません。 |
ステップ 3 |
ip igmp filter profile number |
指定した IGMP プロファイルをこのインターフェイスに適用します。指定できる範囲は 1 ~ 4294967295 です。 |
ステップ 4 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 5 |
show running-config interface interface-id |
設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
インターフェイスからプロファイルを削除するには、 no ip igmp filter profile number インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートに IGMP プロファイル 4 を適用する例を示します。
Switch(config)# interface gigabitethernet1/0/2
Switch(config-if)# ip igmp filter 4
IGMP グループの最大数の設定
ip igmp max-groups インターフェイス コンフィギュレーション コマンドを使用すると、レイヤ 2 インターフェイスが加入できる IGMP グループの最大数を設定できます。最大数をデフォルト(制限なし)に戻す場合は、このコマンドの no 形式を使用します。
この制限が適用されるのはレイヤ 2 ポートだけです。ルーテッド ポートや SVI には IGMP グループの最大数を設定できません。また、このコマンドを論理 EtherChannel インターフェイスでも使用することはできますが、EtherChannel ポート グループに属するポート上では、使用できません。
転送テーブルの IGMP グループの最大数を設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。このインターフェイスには、EtherChannel グループまたは EtherChannel インターフェイスに属していないレイヤ 2 ポートを指定できます。 |
ステップ 3 |
ip igmp max-groups number |
インターフェイスが加入できる IGMP グループの最大数を設定します。指定できる範囲は 0 ~ 4294967294 で、デフォルトは最大値の設定なしです。 |
ステップ 4 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 5 |
show running-config interface interface-id |
設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
最大グループ数の制限を削除して、最大値なしのデフォルトに戻すには、 no ip igmp max-groups インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートが加入できる IGMP グループ数を 25 に制限する例を示します。
Switch(config)# interface gigabitethernet1/0/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 }コマンドを入力しても、影響しません。
• インターフェイスが転送テーブルにマルチキャスト エントリを追加したあとで、スロットリング アクションおよび最大グループ制限を設定すると、スロットリング アクションに応じて、転送テーブルのエントリは無効になるかまたは削除されます。
–スロットリング アクションを deny に設定する場合は、すでに転送テーブルにあったエントリは、削除されず無効になります。これらのエントリが無効になり、エントリの最大数が転送テーブルある場合、スイッチはインターフェイスで次に受信した IGMP レポートを廃棄します。
–スロットリング アクションを replace に設定する場合は、すでに転送テーブルにあったエントリは、削除されます。転送テーブル内に最大数のエントリがある場合、スイッチはランダムに選択されたエントリを、受信した IGMP レポートで置き換えます。
スイッチが転送テーブルのエントリを削除しないようにするには、インターフェイスがエントリを転送テーブルに追加する前に、IGMP スロットリング アクションを設定します。
転送テーブルに最大数のエントリがあるときに、スロットリング アクションを設定するには、イネーブル EXEC モードで次の手順を実行します。
|
|
ステップ 1 |
configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
interface interface-id |
設定する物理インターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。このインターフェイスには、EtherChannel グループまたは EtherChannel インターフェイスに属していないレイヤ 2 ポートを指定できます。このインターフェイスには、トランク ポートは指定できません。 |
ステップ 3 |
ip igmp max-groups action { deny | replace } |
インターフェイスが IGMP レポートを受信して、最大数のエントリが転送テーブルにある場合に、インターフェイスが実行するアクションを指定します。 • deny ― レポートを廃棄します。 • replace ― IGMP レポートを受信した新しいグループで、既存グループを置き換えます。 |
ステップ 4 |
end |
イネーブル EXEC モードに戻ります。 |
ステップ 5 |
show running-config interface interface-id |
設定を確認します。 |
ステップ 6 |
copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
レポートを廃棄するというデフォルトのアクションに戻るには、 no ip igmp max-groups action インターフェイス コンフィギュレーション コマンドを使用します。