この章では、ローカルInternet Group Management Protocol(IGMP)スヌーピングのアプリケーションであるMulticast VLAN Registration(MVR)など、Catalyst 3550スイッチにIGMPスヌーピングを設定する方法について説明します。また、IGMPフィルタリングを使用してマルチキャスト グループ メンバーシップを制御する手順およびIGMPスロットリング動作の設定手順についても説明します。
- IGMPスヌーピングの概要
- IGMPスヌーピングの設定
- IGMPスヌーピング情報の表示
- MVRの概要
- MVRの設定
- MVR情報の表示
- IGMPフィルタリングおよびスロットリングの設定
- IGMPフィルタリングおよびスロットリング設定の表示
IGMPスヌーピングの概要
レイヤ2スイッチは、IGMPスヌーピングを使用してレイヤ2インターフェイスを動的に設定することにより、マルチキャスト トラフィックのフラッディングを抑制するため、マルチキャスト トラフィックがIPマルチキャスト デバイスに対応付けられたインターフェイスにだけ転送されます。名前が示すとおり、IGMPスヌーピングでは、LANスイッチはホストとルータの間でIGMP伝送をスヌーピングし、マルチキャスト グループとメンバー ポートを追跡する必要があります。スイッチは、特定のマルチキャスト グループのホストからIGMPレポートを受け取ると、転送テーブル エントリにホストのポート番号を追加します。また、ホストからIGMP Leave Groupメッセージを受け取ると、テーブル エントリからホスト ポートを削除します。また、マルチキャスト クライアントからIGMPメンバーシップ レポートを受信しない場合、定期的にエントリの削除も行います。
マルチキャスト ルータ(Enhanced Multilayer Software Image[EMI;拡張マルチレイヤ ソフトウェア イメージ]搭載のCatalyst 3550スイッチも含む)は、すべてのVLAN(仮想LAN)に定期的に一般クエリを送出します。このマルチキャスト トラフィックを必要とするすべてのホストは、Join要求を送信し、これによって転送テーブルのエントリに追加されます。スイッチは、マルチキャスト ルータに対し、IPマルチキャスト グループごとに1つだけJoin要求を転送します。IGMP Join要求の送信元である各MACグループについて、レイヤ2転送テーブルのVLANごとに1つのエントリを作成します。
IGMPスヌーピングを通じて学習するレイヤ2マルチキャスト グループは、ダイナミックです。ただし、 ip igmp snooping vlan static グローバル コンフィギュレーション コマンドを使用すると、MACマルチキャスト グループをスタティックに設定できます。マルチキャスト グループ アドレスのグループ メンバーシップをスタティックに設定すると、その設定はIGMPスヌーピングによるどの自動操作よりも優先されます。マルチキャスト グループ メンバーシップのリストは、ユーザ側の定義した設定とIGMPスヌーピングにより学習された設定の両方で構成されます。
マルチキャスト トラフィックはルーティングする必要がないので、マルチキャスト インターフェイスのないサブネットでIGMPスヌーピングをサポートするようIGMPスヌーピング クエリアを設定できます。IGMPスヌーピング クエリアの詳細については、 IGMPスヌーピング クエリアの設定 を参照してください。
ポート スパニングツリー、ポート グループ、またはVLAN IDが変更された場合、VLAN上のこのポートからIGMP スヌーピングで学習されたマルチキャスト グループは削除されます。
ここでは、スイッチのIGMPスヌーピングの特性について説明します。
- IGMPバージョン
- マルチキャスト グループへの加入
- マルチキャスト グループからの脱退
- 即時脱退処理
- IGMP設定変更可能なleaveタイマー
- IGMPレポート抑制
- IGMPスヌーピング クエリア設定時の注意事項および制約事項
- 送信元専用ネットワーク
IGMPバージョン
スイッチは、 IGMPバージョン1、IGMPバージョン2、IGMPバージョン3をサポートします。これらのバージョンは、スイッチではインターオペラビリティがあります。たとえば、IGMPv2スイッチでIGMPスヌーピングがイネーブルで、スイッチがIGMPv3レポートをホストから受信する場合、スイッチはIGMPv3レポートをマルチキャスト ルータへ転送できます。
IGMPv3スイッチは、Basic IGMPv3 Snooping Support(BISS)をサポートします。BISSには、IGMPv1およびIGMPv2スイッチのスヌーピング機能のサポートと、IGMPv3メンバーシップ レポート メッセージのサポートが含まれます。ネットワークにIGMPv3ホストが含まれる場合、BISSはマルチキャスト トラフィックのフラッディングを抑制します。BISSは、IGMPv2またはIGMPv1ホストのIGMPスヌーピング機能とほぼ同じ一連のポートにまで、トラフィックを抑制します。
IGMPv3スイッチは、Source Specific Multicast(SSM)機能を実行するデバイスとの間でメッセージを受信したり、メッセージを転送したりします。詳細については、『 Catalyst 4500 Series Switch Cisco IOS Software Configuration Guide 』 Cisco IOS Release 12.1(12c)EW の「Configuring IP Multicast Layer 3 Switching」の章を参照してください。URLは次のとおりです。
http://www.cisco.com/univercd/cc/td/doc/product/lan/cat4000/12_1_12/config/mcastmls.htm
マルチキャスト グループへの加入
スイッチに接続されたホストがIPマルチキャスト グループに加入しようとする場合、加入したいIGMPマルチキャスト グループを指定して非送信請求のIGMP Joinメッセージを送信します。また、スイッチはルータから一般クエリを受信すると、VLAN内のすべてのポートにそのクエリを転送します。マルチキャスト グループに加入しようとするホストは、スイッチにJoinメッセージを送信して応答します。スイッチのCPUは、グループのマルチキャスト転送テーブル エントリがまだ作成されていないと、これを作成します。また、Joinメッセージを受信したインターフェイスの転送テーブル エントリへの追加も行います。そのインターフェイスに関連付けられているホストは、マルチキャスト グループのマルチキャスト トラフィックを受信します( 図20-1 を参照)。
図20-1 最初のIGMP Joinメッセージ
ルータAがスイッチに一般クエリを送信し、スイッチがそのクエリを同じVLANのすべてのメンバーであるポート2〜5に転送します。ホスト1はマルチキャスト グループ224.1.2.3に加入を希望し、相当するMAC宛先アドレス0x0100.5E01.0203を持つグループにIGMPメンバーシップ レポート(IGMP Joinメッセージ)をマルチキャストします。CPUはホスト1によるIGMPレポート マルチキャストを受け取ると、IGMPレポート内の情報を使用して転送テーブルのエントリを設定します( 表20-1 を参照)。このエントリには、ホスト1のポート番号、ルータ、およびスイッチ内蔵CPUが含まれます。
スイッチのハードウェアがIGMP情報パケットをマルチキャスト グループのその他のパケットと区別できることに注意してください。
- テーブルの最初のエントリでは、スイッチCPUだけにIGMPパケットを送信するように、スイッチング エンジンに指示します。これにより、CPUがマルチキャスト フレームによって過負荷になることはありません。
- 2番めのエントリは、0x0100.5E01.0203マルチキャストMACアドレス宛の、IGMPパケットではない(!IGMP)フレームを、ルータおよびグループに加入しているホストに送信するように、スイッチング エンジンに指示します。
別のホスト(たとえば、ホスト4)が同じグループに非送信請求のIGMP Joinメッセージを送信する場合( 図20-2 を参照)、CPUはメッセージを受信して、転送テーブルにホスト4のポート番号を追加します( 表20-2 を参照)。転送テーブルはCPUにだけ向けてIGMPメッセージを送るため、メッセージはスイッチのその他のポートにはフラッディングしないことに注意してください。既知のマルチキャスト トラフィックはグループには転送されますが、CPUには転送されません。
図20-2 2番めのホストのマルチキャスト グループへの加入
マルチキャスト グループからの脱退
ルータは定期的にマルチキャスト一般クエリを送信し、スイッチはこのクエリをVLANのすべてのポートを通じて転送します。このクエリを必要とするホストがこれに応答します。VLANの1つ以上のホストがマルチキャスト トラフィックを必要とする場合は、ルータはVLANにマルチキャスト トラフィックを転送し続けます。スイッチがマルチキャスト グループ トラフィックを転送するのは、そのレイヤ2マルチキャスト グループの転送テーブルにリストされているホストに限られます。
ホストは、マルチキャスト グループを脱退する場合、メッセージを送信せずに脱退することも、Leaveメッセージを送信することもできます。スイッチは、ホストからLeaveメッセージを受信すると、MACベースの一般クエリを送出して、そのインターフェイスに接続しているその他のデバイスが、特定のマルチキャスト グループのトラフィックを必要としているかどうかを調べます。次に、そのMACグループの転送テーブルをアップデートして、そのグループのマルチキャスト トラフィックを必要とするホストだけが転送テーブルにリストされるようにします。ルータは、VLANからのレポートを受信しなかった場合は、IGMPキャッシュからそのVLANのグループを削除します。
即時脱退処理
即時脱退は、IGMPバージョン2のホストについてのみサポートされます。
IGMPスヌーピングの即時脱退(immediate-leave)処理を使用すると、スイッチは、MACベースの一般クエリをインターフェイスに送信することなく、転送テーブルからLeaveメッセージを送信したインターフェイスを削除できます。VLANインターフェイスは、最初のLeaveメッセージで指定されたマルチキャスト グループのマルチキャスト ツリーから削除されます。即時脱退処理によって、複数のマルチキャスト グループを同時に使用する場合でも、スイッチド ネットワーク上のすべてのホストに対して最適な帯域幅管理を行うことができます。
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 leaveタイマーの設定時は、次の注意事項に従ってください。
- 脱退時間はグローバルに、またはVLAN単位で設定できます。
- VLANに脱退時間を設定すると、グローバル設定より優先されます。
- デフォルトの脱退時間は1000ミリ秒です。
- IGMP設定変更可能な脱退時間はIGMPバージョン2が稼働しているホストでのみサポートされます。
- ネットワークの実際の脱退遅延時間は通常、設定された脱退時間です。ただし、脱退時間はリアルタイムCPUロード条件、ネットワーク遅延、インターフェイスを介して送信されるトラフィック量に依存するので、設定時間から外れる 場合があります。
IGMPレポート抑制
スイッチは、IGMPレポート抑制を使用して、マルチキャスト ルータ クエリ単位で1つのIGMPレポートのみをマルチキャスト デバイスに転送します。IGMPルータ抑制がイネーブルの場合(デフォルト)、スイッチは最初のIGMPレポートをグループのすべてのホストからすべてのマルチキャスト ルータに送信します。スイッチは、グループの残りのIGMPレポートはマルチキャスト ルータに送信しません。この機能は、レポートが重複してマルチキャスト デバイスに送信されるのを防止します。
マルチキャスト ルータ クエリにIGMPv1およびIGMPv2レポート専用の要求が含まれている場合、スイッチは最初にIGMPv1またはIGMPv2レポートのみをグループのすべてのホストからすべてのマルチキャスト ルータに転送します。
マルチキャスト ルータ クエリにIGMPv3レポートの要求も含まれている場合、スイッチはグループのIGMPv1、IGMPv2、およびIGMPv3レポートすべてをマルチキャスト デバイスに転送します。
IGMPレポート抑制をディセーブルにする場合、すべてのIGMPレポートがマルチキャスト ルータに転送されます。
IGMPスヌーピング クエリア設定時の注意事項および制約事項
Catalyst 2955スイッチにIGMPスヌーピング クエリアを設定する場合には、次の注意事項および制約事項に従ってください。
- デフォルトでは、IGMPスヌーピング クエリアはディセーブルです。
- グローバル コンフィギュレーション モードでVLANを設定します。
- VLANインターフェイスにIPアドレスを設定します。イネーブルの場合、IGMPスヌーピング クエリアはIPアドレスをクエリ送信元アドレスとして使用します。
- VLANインターフェイスでIPアドレスが設定されない場合、IGMPスヌーピング クエリアはIGMPクエリア用に設定されたグローバルIPアドレスを使用しようとします。グローバルIPアドレスが指定されていない場合、IGMPクエリアはVLAN Switch Virtual Intertface(SVI;スイッチ仮想インターフェイス)のIPアドレスを使用しようとします(アドレスが存在する場合)。SVI IPアドレスがない場合、スイッチはスイッチ上で設定された利用可能な最初のIPアドレスを使用します。利用可能な最初のIPアドレスは show ip interface イネーブルEXECコマンドの出力に表示されます。スイッチ上で利用可能なIPアドレスを見つけられない場合、IGMPスヌーピング クエリアはIGMP一般クエリを生成しません。
- IGMPスヌーピング クエリアはIGMPバージョン1および2をサポートします。
- 管理上イネーブルの場合、IGMPスヌーピング クエリアはネットワーク内にマルチキャスト ルータの存在を検出すると非クエリア ステートに移行します。
- 管理上イネーブルの場合、IGMPスヌーピング クエリアは次の条件が発生したときに、動作上ディセーブル ステートに移行します。
- − IGMPスヌーピングがVLANでディセーブル。
- − PIMが対応するVLANのSVIでイネーブル。
送信元専用ネットワーク
送信元専用ネットワークでは、スイッチ ポートがマルチキャスト送信元ポートおよびマルチキャスト ルータ ポートに接続しています。スイッチ ポートは、IGMP JoinまたはLeaveメッセージを送信するホストには接続していません。
スイッチは、送信元専用学習方式を使用して、IPマルチキャスト データ ストリームからの予約済み、宛先、マルチキャストIPアドレス(224.0.0.x)によりエイリアスになるIPマルチキャスト グループについて学習します。スイッチは、これらのマルチキャスト アドレスでエイリアスになるトラフィックをマルチキャスト ルータ ポートにのみ転送します。
トラフィック(エイリアスが予約済み、宛先、マルチキャストIPアドレス)に対するデフォルトの学習方式は、IPマルチキャスト送信元専用学習方式です。これらのマルチキャスト アドレスでエイリアスにならないトラフィックは、マルチキャスト送信元ポートおよびマルチキャスト ルータ ポートの両方に転送されます。予約済み、宛先、マルチキャストIPアドレスによるトラフィックのIPマルチキャスト送信元専用学習をディセーブルにすることはできません。
デフォルトでは、送信元専用学習方式により学習されて、現在は使用されていない転送テーブル エントリでのスイッチの有効期限は切れています。エージング タイムが長すぎる、またはディセーブルの場合、スイッチが送信元専用学習またはIGMP Joinメッセージで学習した未使用のエントリで転送テーブルがいっぱいになります。スイッチが新しいIPマルチキャスト グループのトラフィックを受信すると、同じVLAN内のすべてのポートにパケットをフラッディングさせます。この不必要なフラッディングによって、スイッチのパフォーマンスに影響を与える可能性があります。
エージングがディセーブルで、スイッチが送信元専用学習を使用して学習したマルチキャスト アドレスを削除する場合は、転送テーブル エントリのエージングを再度イネーブルにします。これによりスイッチは送信元専用学習方式により学習されて、現在は使用されていないマルチキャスト アドレスを期限切れにします。
IGMPスヌーピングの設定
IGMPスヌーピングを使用すると、スイッチは、IGMPパケットを調べたり、その内容に基づいて転送を判断できるようになります。スイッチでIGMPスヌーピングをイネーブルにして、外部マルチキャスト ルータを検出するには、VLAN内のルータのレイヤ3インターフェイスがマルチキャスト ルーティング用に設定されている必要があります。詳細については、 第34章 「IPマルチキャスト ルーティングの設定」 を参照してください。
ここでは、IGMPスヌーピングを設定する方法について説明します。
- IGMPスヌーピングのデフォルト設定
- IGMPスヌーピングのイネーブル化またはディセーブル化
- スヌーピング方式の設定
- マルチキャスト ルータ ポートの設定
- グループに加入するホストのスタティックな設定
- IGMP即時脱退処理のイネーブル化
- IGMP leaveタイマーの設定
- IGMPレポート抑制のディセーブル化
- エージング タイムの設定
- IGMPスヌーピング クエリアの設定
IGMPスヌーピングのデフォルト設定
表20-3 に、IGMPスヌーピングのデフォルト設定を示します。
IGMPスヌーピングのイネーブル化またはディセーブル化
デフォルトでは、IGMPスヌーピングはスイッチでグローバルにイネーブルです。グローバルにイネーブルまたはディセーブルに設定されていると、既存のすべてのVLANインターフェイスでもイネーブルまたはディセーブルになっています。IGMPスヌーピングは、デフォルトですべてのVLANでイネーブルになっていますが、VLAN単位でイネーブルおよびディセーブルに設定することもできます。マルチキャスト ルーティング用にVLANインターフェイスを設定しておくと、スイッチがIGMPスヌーピングを使用して、外部マルチキャスト ルータにダイナミックにアクセスするための設定は必要ありません。
グローバルIGMPスヌーピングは、VLAN IGMPスヌーピングに優先します。グローバルスヌーピングがディセーブルになっている場合は、VLANスヌーピングをイネーブルにできません。グローバル スヌーピングがイネーブルの場合、VLANスヌーピングはイネーブルまたはディセーブルのどちらにも設定できます。
スイッチでIGMPスヌーピングをグローバルにイネーブルにするには、イネーブルEXECモードで次の手順を実行します。
すべてのVLANインターフェイスでIGMPスヌーピングをグローバルにディセーブルにするには、 no ip igmp snooping グローバル コンフィギュレーション コマンドを使用します。
VLANインターフェイスでIGMPスヌーピングをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。
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 グローバル コンフィギュレーション コマンドを使用します。
VLANインターフェイスがマルチキャスト ルータにダイナミックにアクセスする方法を変更するには、イネーブルEXECモードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id mrouter learn { cgmp | pim-dvmrp } |
||
次に、学習方式としてCGMPパケットを使用するようにIGMPスヌーピングを設定する例を示します。
Switch(config)# ip igmp snooping vlan 1 mrouter learn cgmp
デフォルトの学習方式に戻すには、 no ip igmp snooping vlan vlan-id mrouter learn cgmp グローバル コンフィギュレーション コマンドを使用します。
マルチキャスト ルータ ポートの設定
マルチキャスト ルータ ポートを追加する(マルチキャスト ルータにスタティック接続を追加する)には、スイッチで ip igmp snooping vlan mrouter グローバル コンフィギュレーション コマンドを使用します。
マルチキャスト ルータへのスタティック接続をイネーブルに設定するには、イネーブルEXECモードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id mrouter interface interface-id |
マルチキャスト ルータのVLAN IDを指定し、マルチキャスト ルータへのインターフェイスを指定します。指定できるVLAN IDの範囲は1〜4094です。 |
|
VLANからマルチキャスト ルータ ポートを削除するには、 no ip igmp snooping vlan vlan-id mrouter interface interface-id グローバル コンフィギュレーション コマンドを使用します。
次に、マルチキャスト ルータへのスタティック接続をイネーブルに設定し、その設定を確認する例を示します。
Switch (config)# ip igmp snooping vlan 200 mrouter interface gigabitethernet0/1
グループに加入するホストのスタティックな設定
ホストまたはレイヤ2ポートは、通常はマルチキャスト グループにダイナミックに加入しますが、インターフェイスでホストをスタティックに設定することもできます。
マルチキャスト グループのメンバーとしてレイヤ2ポートを追加するには、イネーブルEXECモードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id static mac-address interface interface-id |
||
マルチキャスト グループからレイヤ2ポートを削除するには、 no ip igmp snooping vlan vlan-id static mac-address interface interface-id グローバル コンフィギュレーション コマンドを使用します。
次に、インターフェイスにスタティックにホストを設定し、その設定を確認する例を示します。
Switch(config)# ip igmp snooping vlan 1 static 0100.5e00.0203 interface gigabitethernet0/1
IGMP即時脱退処理のイネーブル化
IGMP即時脱退処理をイネーブルにすると、スイッチは、ポートでIGMPv2 Leaveメッセージを検出してそのポートを削除します。即時脱退処理機能を使用するのは、VLANの各ポートごとにレシーバーが1つ存在する場合だけにしてください。
即時脱退は、IGMPv2のホストについてのみサポートされます。
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 leaveタイマーの設定
IGMP設定変更可能なleaveタイマーをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。
|
ip igmp snooping vlan vlan-id last-member-query-interval time |
(任意)VLANインターフェイスにIGMP脱退時間を設定します。指定できる範囲は100〜5000ミリ秒です。
|
|
IGMP leaveタイマーをグローバルにデフォルト設定(1000ミリ秒)にリセットするには、 no ip igmp snooping last-member-query-interval グローバル コンフィギュレーション コマンドを使用します。
設定したIGMP脱退時間設定を指定のVLANから削除するには、 no ip igmp snooping vlan vlan-id last-member-query-intervalグローバル コンフィギュレーション コマンドを使用します。
IGMPレポート抑制のディセーブル化
デフォルトでは、IGMPレポート抑制はディセーブルです。IGMPレポート抑制をイネーブルにすると、スイッチはマルチキャスト ルータ クエリ単位で1つのIGMPレポートのみを転送します。レポート抑制をディセーブルにすると、すべてのIGMPレポートがマルチキャスト ルータに転送されます。
IGMPレポート抑制をディセーブルにするには、イネーブルEXECモードで次の手順を実行します。
IGMPレポート抑制を再度イネーブルにするには、 ip igmp snooping report-suppression グローバル コンフィギュレーション コマンドを使用します。
エージング タイムの設定
スイッチが、マルチキャスト送信元専用学習方式を使用して学習する転送テーブル エントリのエージング タイムを設定できます。
エージング タイムを設定するには、イネーブルEXECモードで次の手順を実行します。
転送テーブル エントリのエージングをディセーブルにするには、 ip igmp snooping source-only-learning age-timer 0 グローバル コンフィギュレーション コマンドを入力します。
IGMPスヌーピング クエリアの設定
VLANでIGMPスヌーピング クエリア機能をイネーブルにするには、次の手順を実行します。
次に、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スヌーピング情報の表示
ダイナミックに学習された、あるいはスタティックに設定されたルータ ポートおよびVLANインターフェイスのIGMPスヌーピング情報を表示できます。IGMPスヌーピング用に設定したVLANのMACアドレス マルチキャスト エントリの表示もできます。
IGMPスヌーピング情報を表示するには、 表20-4 に示す1つまたは複数のイネーブルEXECコマンドを使用します。
コマンドのキーワードおよびオプションの詳細については、このリリースのコマンド リファレンスを参照してください。
表20-4 のコマンドからの出力例については、このリリースのコマンド リファレンスを参照してください。
MVRの概要
MVRは、イーサネット リングベースのサービス プロバイダー ネットワークで、マルチキャスト トラフィックを広範囲に配信するアプリケーション(サービス プロバイダー ネットワークでの複数のTVチャネルのブロードキャストなど)用に設計された機能です。MVRにより、ポート上の加入者は、ネットワーク全般のマルチキャストVLANのマルチキャスト ストリームに対して、加入または非加入を設定できます。ネットワーク上で1つのマルチキャストVLANを共有しながら、加入者は異なるVLANに存続できます。 MVRを使用すると、マルチキャストVLAN内でマルチキャスト ストリームを継続的に送信しながら、帯域幅およびセキュリティを確保するために、加入者VLANからストリームを隔離できます。
MVRでは、加入者ポートが、IGMP JoinまたはLeaveメッセージを送信することによって、マルチキャスト ストリームへの加入または非加入(JoinまたはLeave)を実行することを前提にしています。このメッセージは、イーサネット接続のIGMPv2互換ホストから発信できます。MVRはIGMPスヌーピングの基本メカニズムで動作しますが、2つの機能は相互に独立して動作します。それぞれ、もう一方の動作に影響を与えることなくイネーブルまたはディセーブルにできます。ただし、IGMPスヌーピングとMVRがともにイネーブルの場合は、MVRは、MVR上で設定されたマルチキャスト グループからのJoinおよびLeaveメッセージに対してのみ反応します。残りすべてのマルチキャスト グループからのJoinおよびLeaveメッセージは、IGMPスヌーピングによって管理されます。
スイッチのCPUは、MVR IPマルチキャスト ストリームおよびスイッチ転送テーブル上の関連MACアドレスを識別し、IGMPメッセージを代行受信します。また、レシーバーが送信元とは別のVLANにいる場合でも、マルチキャスト ストリームのレシーバーとして加入者をテーブルに追加したりテーブルから削除したりするように転送テーブルを書き換えます。この転送動作は、さまざまなVLAN間で通信されるトラフィックを選択的に許可します。
スイッチには、ダイナミック モードと互換モードという2つのMVR動作モードがあります。
- MVRダイナミック モードで動作するときは、スイッチは標準IGMPスヌーピングを実行します。IGMP情報パケットはスイッチCPUに送信されますが、マルチキャスト データ パケットはCPUに送信されません。ダイナミック モードでは、マルチキャスト ルータは正常に実行できます。これは、スイッチがIGMP Joinメッセージをルータに送信し、ルータが、特定グループのインターフェイスからJoinメッセージを受信した場合に限って、そのグループへのマルチキャスト ストリームをインターフェイスに転送するためです。受信ポートは、MVRマルチキャスト制御およびデータ トラフィックのマルチキャストVLANからのメンバーとして扱われます。MVRグループのIGMPレポートはマルチキャストVLANの送信元ポートから送出されます。
- MVR互換モードでは、Catalyst 3550スイッチのMVRは、Catalyst 3500 XLおよびCatalyst 2900 XLスイッチのMVRと連動します。すべてのマルチキャスト データ パケット、およびIGMPクエリと脱退パケットについて、ダイナミック モードと同じ動作をします。ただし、受信されたMVRグループのIGMPレポート パケットは、マルチキャストVLANの送信元ポートから送出されません。ダイナミック モードとは対照的に、スイッチはルータにJoinメッセージを送信しません。ルータは、インターフェイスに対してマルチキャスト ストリームを受信するようスタティックに設定する必要があります。したがって、このモードでは、MVRは送信元ポートでのダイナミック メンバーシップ加入をサポートしません。
マルチキャストTVアプリケーションでのMVRの使用方法
マルチキャストTVアプリケーションでは、PCまたはセットトップ ボックスを装備したTVで、マルチキャスト ストリームを受信できます。複数のセットトップ ボックスまたは複数のPCは、MVRのレシーバー ポートとして設定されたスイッチ ポートである、1つの加入者ポートに接続できます。 図20-3 に、設定例を示します。セットトップ ボックスまたはPCには、DHCPによってIPアドレスが割り当てられます。加入者がチャネルを選択すると、対応するマルチキャストに加入するために、セットトップ ボックスまたはPCからスイッチAに対してIGMPレポートが送信されます。IGMPレポートが、設定済みのマルチキャストMACアドレスの1つと一致すると、スイッチのCPUは、ハードウェアのアドレス テーブルを変更し、指定されたマルチキャスト ストリームをマルチキャストVLANから受信した場合にそのマルチキャスト ストリームを転送する宛先として、このレシーバー ポートとVLANをアドレス テーブルに追加します。マルチキャストVLANとの間でマルチキャスト データを送受信するアップリンク ポートを、MVR送信元ポートと呼びます。
加入者がチャネルを変更するか、TVをオフにすると、セットトップ ボックスからマルチキャスト ストリームのIGMP Leaveメッセージが送信されます。スイッチのCPUは、レシーバー ポートのVLANを介して、IGMPグループ別クエリを送信します。VLAN内に、このグループに加入しているほかのセットトップ ボックスがある場合には、そのセットトップ ボックスは最大応答時間の範囲内に応答しなければなりません。応答を受信しない場合、CPUは、このグループの転送宛先からレシーバー ポートを除外します。
即時脱退機能がレシーバー ポートでイネーブルになっている場合は、ポートはより迅速にマルチキャスト グループを脱退します。即時脱退機能がイネーブルになっていない場合、スイッチはレシーバー ポートの加入者からIGMP Leaveメッセージを受信すると、そのポートにIGMPクエリを送信してIGMPグループ メンバーシップ レポートを待ちます。設定された時間内にレポートを受信しなかった場合は、マルチキャスト グループ メンバーシップからレシーバー ポートが削除されます。即時脱退機能を使用する場合、IGMPクエリは、IGMP Leaveメッセージを受信したレシーバー ポートから送信されません。Leaveメッセージを受信するとただちに、レシーバー ポートがマルチキャスト グループ メンバーシップから削除されるため、脱退遅延時間が短縮されます。即時脱退機能は、1つのレシーバー デバイスを接続したレシーバー ポートでだけイネーブルにしてください。
図20-3 MVRの例
MVRでは、各VLANの複数の加入者に対してTVチャネルのマルチキャスト トラフィックを重複して送信する必要がありません。すべてのチャネルに対するマルチキャスト トラフィックが、VLANトランクで1回だけ送信されます(マルチキャストVLAN上のみ)。IGMP LeaveおよびJoinメッセージは、加入者ポートが割り当てられているVLAN内で送信されます。これらのメッセージによって、レイヤ3デバイス上でマルチキャストVLANのマルチキャスト トラフィック ストリームが、ダイナミックに登録されます。アクセス レイヤ スイッチ(スイッチA)は、マルチキャストVLANから別のVLAN上の加入者ポートにトラフィックが転送されるように転送動作を変更し、2つのVLAN間で伝送されるトラフィックを選択的に許可します。
IGMPレポートは、マルチキャスト データと同じMACアドレス宛に送信されます。スイッチAのCPUは、レシーバー ポートからのすべてのIGMP JoinおよびLeaveメッセージを取り込み、送信元(アップリンク)ポートのマルチキャストVLANに転送する必要があります。
MVRの設定
MVRのデフォルト設定
表20-5 に、MVRのデフォルト設定を示します。
MVR設定時の注意事項および制限事項
- レシーバー ポートをトランクポートにすることはできません。スイッチのレシーバー ポートは別のVLANに属していてもかまいませんが、マルチキャストVLANに属することはできません。
- スイッチに設定できるマルチキャスト エントリの最大数(受信できるTVチャネルの最大数)は256です。
- 各チャネルは、一意のIPマルチキャスト アドレスに宛てられた1つのマルチキャスト ストリームになります。これらのIPアドレスは、IPアドレス間でも、または予約済みIPマルチキャスト アドレス(224.0.0.xxxの範囲)でもエイリアス割り当てできません。
- マルチキャスト ルーティングおよびMVRは、スイッチでは共存できません。MVRがイネーブルの場合に、マルチキャスト ルーティングおよびマルチキャスト ルーティング プロトコルをイネーブルにすると、MVRがディセーブルになり、警告メッセージが表示されます。マルチキャスト ルーティングおよびマルチキャスト ルーティング プロトコルがイネーブルの場合に、MVRをイネーブルにしようとすると、MVRをイネーブルにする操作が取り消され、エラー メッセージが表示されます。
- MVRは、IGMPv3メッセージをサポートしません。
MVRグローバル パラメータの設定
デフォルト設定を使用する場合には、オプションのMVRパラメータを設定する必要はありません。デフォルトのパラメータ値を変更する場合(MVR VLANを除く)には、先にMVRをイネーブルにする必要があります。
MVRパラメータを設定するには、イネーブルEXECモードで次の手順を実行します。
スイッチをデフォルト設定に戻すには、 no mvr [ mode | group ip-address | querytime | vlan ]グローバル コンフィギュレーション コマンドを使用します。
次に、MVRをイネーブルにして、MVRグループ アドレスを設定し、クエリ時間を1秒(10×1/10)に設定し、MVRマルチキャストVLANをVLAN 22として指定し、MVRモードをdynamicに設定して、結果を確認する方法を示します。
Switch(config)# mvr group 228.1.23.4
Switch(config)# mvr querytime 10
Switch(config)# mvr mode dynamic
MVR Current multicast groups: 1
MVR Global query response time: 10 (tenths of sec)
show mvr members イネーブルEXECコマンドを使用すると、スイッチのMVRマルチキャスト グループ アドレスを確認できます。
MVRインターフェイスの設定
レイヤ2 MVRインターフェイスを設定するには、イネーブルEXECモードで次の手順を実行します。
インターフェイスをデフォルト設定に戻すには、 no mvr [ type | immediate | vlan vlan-id | group ]インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートをレシーバー ポートとして設定し、マルチキャスト グループ アドレスに送信されたマルチキャスト トラフィックを受信するようにポートをスタティックに設定し、インターフェイスに即時脱退機能を設定して、結果を確認する方法を示します。
Switch(config)# interface gigabitethernet0/1
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 gigabitethernet0/1
Type: RECEIVER Status: ACTIVE Immediate Leave: ENABLED
MVR情報の表示
スイッチまたは指定されたインターフェイスのMVR情報を表示できます。
MVR情報を表示するには、イネーブルEXECモードで 表20-6 のコマンドを実行します。
IGMPフィルタリングおよびスロットリングの設定
一部の環境(たとえば、メトロポリタンまたはMultiple-Dwelling Unit [MDU]インストレーション)では、スイッチ ポート上のユーザが所属するマルチキャスト グループを管理する必要があります。契約やサービス計画のタイプに基づいてIP/TVなどのマルチキャスト サービスの配信を制御できます。また、スイッチ ポート上のユーザが属するマルチキャスト グループの数も制限できます。
IGMPフィルタリング機能を使用すると、IPマルチキャスト プロファイルを設定して個々のスイッチ ポートに対応付けることにより、ポート単位でマルチキャスト加入をフィルタリングできます。IGMPプロファイルには1つまたは複数のマルチキャスト グループを格納できます。また、IGMPプロファイルによって、このグループへのアクセスを許可するか拒否するかを指定できます。マルチキャスト グループへのアクセスを拒否するIGMPプロファイルがスイッチ ポートに適用された場合、IPマルチキャスト トラフィックのストリームを要求するIGMP加入レポートは廃棄され、ポートはそのグループからIPマルチキャスト トラフィックを受信できません。フィルタリング アクションによってマルチキャスト グループへのアクセスが許可された場合、ポートからのIGMPレポートが転送され、通常の処理が行われます。
IGMPフィルタリングが制御するのは、JoinおよびLeaveレポートなど、グループ固有のクエリやメンバーシップ レポートだけです。一般的なIGMPクエリは制御しません。IGMPフィルタリングは、IPマルチキャスト トラフィックの転送指示機能には関係しません。フィルタリング機能は、マルチキャスト トラフィックの転送に、CGMPまたはMVRのどちらを使用しても同様に動作します。
レイヤ2インターフェイスが加入できるIGMPグループの最大数を設定することもできます。
IGMPスロットリング機能を使用すると、レイヤ2インターフェイスが加入できるIGMPグループの最大数を設定することもできます。IGMPグループの最大数を設定し、IGMPスヌーピング転送テーブルにエントリの最大数が含まれ、インターフェイスがIGMP Joinレポートを受信する場合、IGMPレポートを廃棄、または転送テーブルでランダムに選択されたマルチキャスト エントリを削除し、それからレポートのIGMPグループをテーブルに追加するようインターフェイスを設定できます。
ここでは、IGMPフィルタリングおよびスロットリングを設定する方法について説明します。
- IGMPフィルタリングおよびスロットリングのデフォルト設定
- IGMPプロファイルの設定 (任意)
- IGMPプロファイルの適用 (任意)
- IGMPグループの最大数の設定 (任意)
- IGMPスロットリング動作の設定 (任意)
IGMPフィルタリングおよびスロットリングのデフォルト設定
表20-7 に、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モードで次の手順を実行します。
プロファイルを削除するには、 no ip igmp profile profile number グローバル コンフィギュレーション コマンドを使用します。
IPマルチキャスト アドレスまたはIPマルチキャスト アドレス範囲を削除するには、 no range ip multicast address IGMPプロファイル コンフィギュレーション コマンドを使用します。
次に、1つのIPマルチキャスト アドレスへのアクセスを許可するIGMPプロファイル4を作成して、その設定を確認する例を示します。動作がdeny(デフォルト)である場合は、 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つだけです。
スイッチ ポートにIGMPプロファイルを適用するには、イネーブルEXECモードで次の手順を実行します。
|
設定する物理インターフェイスを入力して、インターフェイス コンフィギュレーション モードを開始します。このインターフェイスは、EtherChannelポート グループに属していないレイヤ2ポートである必要があります。 |
||
|
指定したIGMPプロファイルをこのインターフェイスに適用します。指定できるプロファイル番号の範囲は1〜4294967295です。 |
||
インターフェイスからプロファイルを削除するには、 no ip igmp filter profile number インターフェイス コンフィギュレーション コマンドを使用します。
次に、ポートにIGMPプロファイル4を適用し、設定を確認する例を示します。
Switch(config)# interface fastethernet0/2
Switch(config-if)# ip igmp filter 4
Switch# show running-config interface fastethernet0/2
Current configuration : 123 bytes
IGMPグループの最大数の設定
ip igmp max-groups インターフェイス コンフィギュレーション コマンドを使用すると、レイヤ2インターフェイスが加入できるIGMPグループの最大数を設定できます。最大数をデフォルト(制限なし)に戻す場合は、このコマンドの no 形式を使用します。
この制限が適用されるのはレイヤ2ポートだけです。ルーテッド ポートやSVIにはIGMPグループの最大数を設定できません。このコマンドを論理EtherChannelインターフェイス上で使用することもできますが、EtherChannelポート グループに属するポート上では使用できません。
IGMPグループの最大数を転送テーブルに設定するには、イネーブルEXECモードで次の手順を実行します。
|
設定する物理インターフェイスを入力して、インターフェイス コンフィギュレーション モードを開始します。このインターフェイスには、EtherChannelグループまたはEtherChannelインターフェイスに属していないレイヤ2ポートを指定できます。 |
||
|
インターフェイスが加入できるIGMPグループの最大数を設定します。指定できる範囲は0〜4294967294で、デフォルトは最大値の設定なしです。 |
||
最大グループ数の制限を削除して、最大値なしのデフォルトに戻すには、 no ip igmp max-groups インターフェイス コンフィギュレーション コマンドを使用します。
次に、インターフェイスが加入できるIGMPグループ数を25に制限する例を示します。
Switch(config)# interface fastethernet0/2
Switch(config-if)# ip igmp max-groups 25
IGMPスロットリング動作の設定
レイヤ2インターフェイスが加入できるIGMPグループの最大数を設定したあと、 ip igmp max-groups action replace インターフェイス コンフィギュレーション コマンドを使用して、転送テーブルでランダムに選択されたマルチキャスト エントリを削除し、次のIGMPグループをテーブルに追加するようインターフェイスを設定できます。デフォルトに戻すには、このコマンドの no 形式を使用します。デフォルトではIGMP Joinレポートを廃棄します。
IGMPスロットリング動作の設定時は、次の注意事項に従ってください。
- この制限が適用されるのはレイヤ2ポートだけです。このコマンドを論理EtherChannelインターフェイス上で使用することもできますが、EtherChannelポート グループに属するポート上では使用できません。
- 最大グループ数の制限をデフォルト(最大値の設定なし)に設定するとき、 ip igmp max-groups action { deny | replace }コマンドは機能しません。
- インターフェイスがマルチキャスト エントリを転送テーブルに追加したあとに、スロットリング動作を設定し、最大グループ数の制限を設定した場合、転送テーブル エントリはスロットリング動作によって、期限切れになるかまたは削除されます。
- − スロットリング動作を deny として設定した場合、転送テーブル内の以前のエントリは削除されませんが、期限切れになります。これらのエントリが期限切れになり、エントリの最大数が転送テーブルに存在する場合、スイッチはインターフェイスで受信した次のIGMPレポートを廃棄します。
- − スロットリング動作を replace として設定した場合、転送テーブル内の以前のエントリは削除されます。エントリの最大数が転送テーブルに存在すると、スイッチはランダムに選択されたエントリを削除し、インターフェイスで受信した次のIGMPレポートのエントリを追加します。
スイッチが転送テーブル エントリを削除しないようにするには、インターフェイスが転送テーブルにエントリを追加する前に、IGMPスロットリング動作を設定できます。
エントリの最大数が転送テーブルに存在するときにスロットリング動作を設定するには、イネーブルEXECモードで次の手順を実行します。
レポート廃棄のデフォルト動作に戻すには、 no ip igmp max-groups action インターフェイス コンフィギュレーション コマンドを使用します。
次に、エントリの最大数がテーブルに存在する場合に、転送テーブルでランダムに選択されたマルチキャスト エントリを削除し、転送テーブルにIGMPグループを追加するようインターフェイスを設定する例を示します。
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# ip igmp max-groups action replace
IGMPフィルタリングおよびスロットリング設定の表示
IGMPプロファイルの特性を表示できます。また、スイッチのすべてのインターフェイスまたは指定したインターフェイスのIGMPプロファイルと最大グループ数の設定を表示できます。スイッチのすべてのインターフェイス、または特定のインターフェイスのIGMPスロットリング設定を表示することもできます。
IGMPフィルタリングおよびスロットリング設定を表示するには、 表20-8 に記載されたイネーブルEXECコマンドを使用します。
|
指定されたインターフェイスまたはすべてのインターフェイスの設定を表示します。インターフェイスが加入できるIGMPグループの最大数(設定されている場合)やインターフェイスに適用されているIGMPプロファイルなどがこれに含まれます。 |
