IGMP の設定

この章では、IPv4 ネットワーク用に Cisco NX-OS スイッチでインターネット グループ管理プロトコル(IGMP)を構成する方法について説明します。

この章は、次の項で構成されています。

IGMP に関する情報

IGMP は、ホストが特定のグループにマルチキャスト データを要求するために使用する IPv4 プロトコルです。ソフトウェアは、IGMP を介して取得した情報を使用し、マルチキャスト グループまたはチャネル メンバーシップのリストをインターフェイス単位で保持します。これらの IGMP パケットを受信したシステムは、既知の受信者が含まれるネットワーク セグメントに、要求されたグループまたはチャネルに関する受信データをマルチキャスト送信します。

IGMP プロセスはデフォルトで実行されています。インターフェイスでは IGMP を手動でイネーブルにできません。IGMP は、インターフェイスで次のいずれかの設定作業を行うと、自動的にイネーブルになります。

  • Protocol-Independent Multicast(PIM)のイネーブル化

  • ローカル マルチキャスト グループの静的なバインディング

  • リンクローカル グループ レポートのイネーブル化

IGMP のバージョン

スイッチでは、IGMPv1 の他に、IGMPv2 と IGMPv3 のレポート受信もサポートされています。

デフォルトでは、ソフトウェアが IGMP プロセスを起動する際に、IGMPv2 がイネーブルになります。必要に応じて、各インターフェイスでは IGMPv3 をイネーブルにできます。

IGMPv3 には、次に示す IGMPv2 からの重要な変更点があります。

  • 次の機能を提供し、各受信者から送信元までの最短パス ツリーを構築可能な Source-Specific Multicast(SSM)をサポートします。

グループおよび送信元を両方指定できるホスト メッセージ

IGMPv2 ではグループについてのみ保持できたマルチキャスト ステートを、グループおよび送信元についても保持可能

  • ホストによるレポート抑制が行われなくなり、IGMP クエリー メッセージを受信するたびに IGMP メンバーシップ レポートが送信されるようになりました。

IGMPv2 の詳細については、RFC 2236 を参照してください。

IGMPv3 の詳細については、RFC 3376 を参照してください。

IGMP の基礎

図 1 に、ルータが IGMP を使用し、マルチキャスト ホストを検出する基本的なプロセスを示します。ホスト 1、2、および 3 は要求外の IGMP メンバーシップ レポート メッセージを送信して、グループまたはチャネルに関するマルチキャスト データの受信を開始します。

図 1. IGMPv1 および IGMPv2 クエリ応答プロセス

図 1 のルータ A(サブネットの代表 IGMP クエリア)は、すべてのホストが含まれる 224.0.0.1 ホスト マルチキャスト グループに定期的にクエリ メッセージを送信して、マルチキャスト データを要求しているホストを検出します。グループ メンバーシップ タイムアウト値を設定できます。指定したタイムアウト値が経過すると、ルータはサブネット上にグループのメンバーまたは送信元が存在しないと見なします。IGMP パラメータの構成方法については、「IGMP インターフェイス パラメータの構成」セクションを参照してください。

IP アドレスが最小のルータが、サブネットの IGMP クエリアとして選出されます。ルータは、自身よりも下位の IP アドレスを持つルータからクエリー メッセージを継続的に受信している間、クエリア タイムアウト値をカウントするタイマーをリセットします。ルータのクエリア タイマーが期限切れになると、そのルータは代表クエリアになります。そのあとで、このルータが、自身よりも下位の IP アドレスを持つルータからのホスト クエリー メッセージを受信すると、ルータは代表クエリアとしての役割をドロップしてクエリア タイマーを再度設定します。

図 1 では、ホスト 1 からのメンバーシップ レポートの送出が止められており、最初にホスト 2 からグループ 224.1.1.1 に関するメンバーシップ レポートが送信されます。ホスト 1 はホスト 2 からレポートを受信します。ルータに送信する必要があるメンバーシップ レポートは、グループにつき 1 つだけであるため、その他のホストではレポートの送出が止められ、ネットワーク トラフィックが軽減されます。レポートの同時送信を防ぐため、各ホストではランダムな時間だけレポート送信が保留されます。クエリの最大応答時間パラメータを設定すると、ホストが応答をランダム化する間隔を制御できます。


(注)  


IGMPv1 および IGMPv2 メンバーシップ レポートが抑制されるのは、同じポートに複数のホストが接続されている場合だけです。


図 2 のルータ A は、IGMPv3 グループ/ソース固有のクエリを LAN に送信します。ホスト 2 および 3 は、アドバタイズされたグループおよび送信元からデータを受信することを示すメンバーシップ レポートを送信して、そのクエリーに応答します。この IGMPv3 機能では、SSM がサポートされます。IGMPv1 ホストおよび IGMPv2 ホストが SSM をサポートするよう、SSM を変換する方法については、「IGMP SSM 変換の構成」セクションを参照してください。

図 2. IGMPv3 グループ/ソース固有のクエリ

(注)  


IGMPv3 ホストでは、IGMP メンバーシップ レポートの抑制が行われません。


代表クエリアから送信されるメッセージの存続可能時間(TTL)値は 1 です。つまり、サブネット上の直接接続されたルータからメッセージが転送されることはありません。IGMP の起動時に送信されるクエリ メッセージの頻度および回数を個別に設定したり、スタートアップ クエリ インターバルを短く設定したりすることで、グループ ステートの確立時間を最小限に抑えることができます。通常は不要ですが、起動後のクエリー インターバルをチューニングすることで、ホスト グループ メンバーシップ メッセージへの応答性と、ネットワーク上のトラフィック量のバランスを調整できます。


注意    


クエリー インターバルを変更すると、マルチキャスト転送能力が著しく低下することがあります。


マルチキャスト ホストがグループを脱退する場合、IGMPv2 以上を実行するホストでは、IGMP Leave メッセージを送信します。このホストがグループを脱退する最後のホストであるかどうかを確認するために、IGMP クエリ メッセージが送信されます。そして、最終メンバーのクエリ応答インターバルと呼ばれる、ユーザーが設定可能なタイマーが起動されます。タイマーが切れる前にレポートが受信されない場合は、ソフトウェアによってグループ ステートが解除されます。ルータはグループ ステートが解除されないかぎり、このグループにマルチキャスト トラフィックを送信し続けます。

輻輳ネットワークでのパケット損失を補正するには、ロバストネス値を設定します。ロバストネス値は、IGMP ソフトウェアがメッセージ送信回数を確認するために使用されます。

224.0.0.0/24 内に含まれるリンク ローカル アドレスは、インターネット割り当て番号局(IANA)によって予約されています。ローカル ネットワーク セグメント上のネットワーク プロトコルでは、これらのアドレスが使用されます。これらのアドレスは TTL が 1 であるため、ルータからは転送されません。IGMP プロセスを実行すると、デフォルトでは、非リンク ローカル アドレスにだけメンバーシップ レポートが送信されます。ただし、リンク ローカル アドレスにレポートが送信されるよう、ソフトウェアの設定を変更することができます。

IGMP パラメータの構成方法については、「IGMP インターフェイス パラメータの構成」セクションを参照してください。

仮想化のサポート

Cisco NX-OS は仮想ルーティングおよびフォーワーディング(VRF)をサポートします。また、複数の VRF インスタンスを定義できます。IGMP を使用して設定された VRF は、次の IGMP 機能をサポートします。

  • IGMP の、インターフェイスごとのイネーブル化またはディセーブル化

  • IGMPv1、IGMPv2、および IGMPv3 によりルータ側のサポートを提供

  • IGMPv2 および IGMPv3 によりホスト側のサポートを提供

  • IGMP クエリア パラメータの設定をサポート

  • リンク ローカル マルチキャスト グループに対する IGMP レポートのサポート

  • IGMP SSM 変換により IGMPv2 グループをソースのセットにマッピング

  • Multicast Trace-route(Mtrace)リクエストを処理する Mtrace サーバ機能のサポート

VRF の構成に関する詳細は、『Cisco Nexus 3548 スイッチ NX-OS ユニキャスト ルーティング構成ガイド』を参照してください。

制限事項

Cisco NX-OS Release 6.0(2)A1(1) よりも古い Cisco NX-OS リリースでは、ip igmp join-group コマンドを使用して Nexus 3548 スイッチをマルチキャスト グループにバインドできます。スイッチは、指定されたグループに対して Internet Group Management Protocol(IGMP)結合を生成し、このグループに送信されるマルチキャスト パケットはすべて CPU に送信されます。Nexus 3548 スイッチに接続された、グループに対して要求するレシーバがある場合、パケットのコピーもレシーバに送信されます。

Cisco NX-OS Release 6.0(2)A1(1) 以降のリリースでは、ip igmp join-group コマンドを使用して Outgoing Interface Lists(OILs)をプログラムすることはできません。ストリームに対して要求するレシーバがある場合でも、パケットは送信されません。Nexus 3548 スイッチをマルチキャスト グループにバインドするには、ip igmp join-group の代わりに ip igmp static-oif コマンドを使用します。

VRF を使用した IGMP

複数の仮想ルーティングおよびフォワーディング(VRF)インスタンスを定義することができます。IGMP プロセスはすべての VRF をサポートします。

show コマンドに VRF 引数を指定して実行すると、表示される情報のコンテキストを確認できます。VRF 引数を指定しない場合は、デフォルト VRF が使用されます。

VRF の構成に関する詳細は、『Cisco Nexus 3548 スイッチ NX-OS ユニキャスト ルーティング構成ガイド』を参照してください。

IGMP のデフォルト設定

表 1 では、IGMP パラメータのデフォルト設定をリスト化しています。

表 1. IGMP パラメータのデフォルト設定

パラメータ

デフォルト

IGMP のバージョン

2

スタートアップ クエリー インターバル

30 秒

スタートアップ クエリーの回数

2

ロバストネス値

2

クエリア タイムアウト

255 秒

クエリー タイムアウト

255 秒

クエリーの最大応答時間

10 秒

クエリー インターバル

125 秒

最終メンバーのクエリー応答インターバル

1 秒

最終メンバーのクエリー回数

2

グループ メンバーシップ タイムアウト

260 秒

リンク ローカル マルチキャスト グループのレポート

無効

ルータ アラートの実施

無効

即時離脱

無効化

IGMP パラメータの設定

IGMP グローバル パラメータおよびインターフェイス パラメータを設定すると、IGMP プロセスの動作を変更できます。


(注)  


Cisco IOS の CLI に慣れている場合、この機能に対応する Cisco NX-OS コマンドは通常使用する Cisco IOS コマンドと異なる場合があるので注意してください。


IGMP インターフェイス パラメータの設定

次の表に、設定可能なオプションの IGMP インターフェイス パラメータを示します。

表 2. IGMP インターフェイス パラメータ

パラメータ

説明

IGMP のバージョン

インターフェイスでイネーブルにする IGMP のバージョン。有効な IGMP バージョンは 2 または 3 です。デフォルトは 2 です。

スタティック マルチキャスト グループ

インターフェイスに静的にバインドされるマルチキャスト グループ。(*, G) というステートでインターフェイスの加入先グループを設定するか、グループに加入する送信元 IP を、(S, G) というステートで指定します。match ip multicast コマンドで、使用するグループ プレフィックス、グループ範囲、および送信元プレフィックスを示すルートマップ ポリシー名を指定できます。

(注)  

 

(S, G) ステートで設定しても、送信元ツリーが構築されるのは IGMPv3 がイネーブルな場合だけです。SSM の変換に関する詳細は、「IGMP SSM 変換の構成」セクションを参照してください。

ネットワーク上の全マルチキャスト対応ルータを含むマルチキャスト グループを設定すると、このグループに ping 要求を送信することで、すべてのルータから応答を受け取ることができます。

発信インターフェイス(OIF)上のスタティック マルチキャスト グループ

発信インターフェイスに静的にバインドされるマルチキャスト グループ。(*, G) というステートで発信インターフェイスの加入先グループを設定するか、グループに加入する送信元 IP を、(S, G) というステートで指定します。match ip multicast コマンドで、使用するグループ プレフィックス、グループ範囲、および送信元プレフィックスを示すルートマップ ポリシー名を指定できます。

(注)  

 

(S, G) ステートで設定しても、送信元ツリーが構築されるのは IGMPv3 がイネーブルな場合だけです。SSM の変換に関する詳細は、「IGMP SSM 変換の構成」セクションを参照してください。

スタートアップ クエリー インターバル

スタートアップ クエリー インターバル。デフォルトでは、ソフトウェアができるだけ迅速にグループ ステートを確立できるように、このインターバルはクエリー インターバルより短く設定されています。有効範囲は 1 ~ 18,000 秒です。デフォルト値は 31 秒です。

スタートアップ クエリーの回数

スタートアップ クエリー インターバル中に送信される起動時のクエリー数。有効範囲は 1 ~ 10 です。デフォルトは 2 です。

ロバストネス値

輻輳ネットワークでのパケット損失を許容範囲内に抑えるために使用される、調整可能なロバストネス変数。ロバストネス変数を大きくすれば、パケットの再送信回数を増やすことができます。有効範囲は 1 ~ 7 です。デフォルトは 2 です。

クエリア タイムアウト

前クエリアがクエリーを停止してから、自身がクエリアとして処理を引き継ぐまで、ソフトウェアが待機する秒数。有効範囲は 1 ~ 65,535 秒です。デフォルト値は 255 秒です。

クエリーの最大応答時間

IGMP クエリーでアドバタイズされる最大応答時間。大きな値を設定すると、ホストの応答時間が延長されるため、ネットワークの IGMP メッセージを調整できます。この値は、クエリー インターバルよりも短く設定する必要があります。有効範囲は 1 ~ 25 秒です。デフォルトは 10 秒です。

クエリー インターバル

IGMP ホスト クエリー メッセージの送信頻度。大きな値を設定すると、ソフトウェアによる IGMP クエリーの送信頻度が低くなるため、ネットワーク上の IGMP メッセージ数を調整できます。有効範囲は 1 ~ 18,000 秒です。デフォルト値は 125 秒です。

最終メンバーのクエリー応答インターバル

サブネット上の既知のアクティブ ホストから最後にホスト Leave メッセージを受信したあと、ソフトウェアが IGMP クエリーへの応答を送信するインターバル。このインターバル中に応答が受信されない場合、グループ ステートは解除されます。この値を使用すると、サブネット上でソフトウェアがトラフィックの送信を停止するタイミングを調整できます。この値を小さく設定すると、グループの最終メンバーまたは送信元が脱退したことを、より短時間で検出できます。有効範囲は 1 ~ 25 秒です。デフォルト値は 1 秒です。

最終メンバーのクエリー回数

サブネット上の既知のアクティブ ホストから最後にホスト Leave メッセージを受信したあと、最終メンバーのクエリー応答インターバル中に、ソフトウェアが IGMP クエリーを送信する回数。有効範囲は 1 ~ 5 です。デフォルトは 2 です。

この値を 1 に設定すると、いずれかの方向でパケットが検出されなくなると、クエリー対象のグループまたはチャネルのマルチキャスト ステートが解除されます。次のクエリー インターバルが開始されるまでは、グループを再度関連付けることができます。

グループ メンバーシップ タイムアウト

ルータによって、ネットワーク上にグループのメンバーまたは送信元が存在しないと見なされるまでのグループ メンバーシップ インターバル。有効範囲は 3 ~ 65,535 秒です。デフォルト値は 260 秒です。

リンク ローカル マルチキャスト グループのレポート

224.0.0.0/24 内のグループにレポートを送信できるようにするためのオプション。リンク ローカル アドレスは、ローカル ネットワーク プロトコルだけで使用されます。非リンク ローカル グループには、常にレポートが送信されます。デフォルトではディセーブルになっています。

レポート ポリシー

ルートマップ ポリシーに基づく、IGMP レポートのアクセス ポリシー。

ヒント

 

ルートマップ ポリシーを構成するには、『Cisco Nexus 3548 NX-OS ユニキャスト ルーティング構成ガイド』を参照してください。

アクセス グループ

インターフェイスが接続されたサブネット上のホストについて、加入可能なマルチキャスト グループを制御するためのルートマップ ポリシーを設定するオプション。

即時離脱

デバイスからグループ固有のクエリーが送信されないため、所定の IGMP インターフェイスで IGMPv2 グループ メンバーシップの脱退のための待ち時間を最小限にできるオプション。即時脱退をイネーブルにすると、デバイスではグループに関する Leave メッセージの受信後、ただちにマルチキャスト ルーティング テーブルからグループ エントリが削除されます。デフォルトではディセーブルになっています。

(注)  

 

このコマンドは、所定のグループに対するインターフェイスの背後に 1 つの受信者しか存在しない場合に使用します。

マルチキャスト ルート マップの構成に関する詳細は、「RP 情報配信を制御するためのルート マップの構成」セクションを参照してください。

手順の概要

  1. configure terminal
  2. interface interface
  3. no switchport
  4. ip igmp version value
  5. ip igmp join-group {group [source source] | route-map policy-name}
  6. ip igmp static-oif {group [source source] | route-map policy-name}
  7. ip igmp startup-query-interval seconds
  8. ip igmp startup-query-count count
  9. ip igmp robustness-variable value
  10. ip igmp querier-timeout seconds
  11. ip igmp query-timeout seconds
  12. ip igmp query-max-response-time seconds
  13. ip igmp query-interval interval
  14. ip igmp last-member-query-response-time seconds
  15. ip igmp last-member-query-count count
  16. ip igmp group-timeout seconds
  17. ip igmp report-link-local-groups
  18. ip igmp report-policy ポリシー
  19. ip igmp access-group ポリシー
  20. ip igmp immediate-leave
  21. (任意) show ip igmp interface [interface] [vrf vrf-name | all] [brief]
  22. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

interface interface

例:

switch(config)# interface ethernet 2/1
switch(config-if)#

ethernet slot/port などのインターフェイス タイプおよび番号を入力して、インターフェイス モードを開始します。。

ステップ 3

no switchport

例:

switch(config-if)# no switchport
switch(config-if)#

ステップ 4

ip igmp version value

例:

switch(config-if)# ip igmp version 3

IGMP バージョンを指定値に設定します。有効な値は 2 または 3 です。デフォルトは 2 です。

このコマンドの no 形式を使用すると、バージョンは 2 に設定されます。

ステップ 5

ip igmp join-group {group [source source] | route-map policy-name}

例:

switch(config-if)# ip igmp join-group 230.0.0.0

指定したグループまたはチャネルに参加するようにデバイス上のインターフェイスを設定します。デバイスは CPU 消費用のマルチキャスト パケットのみを受け入れます。

注意    

 

このコマンドを使用して生成されたトラフィックは、デバイス CPU で処理可能である必要があります。CPU の負荷制約のため、このコマンドを使用することは(特に形式を問わずスケーリングで使用することは)推奨されません。代わりに ip igmp static-oif コマンドの使用を検討してください。

ステップ 6

ip igmp static-oif {group [source source] | route-map policy-name}

例:

switch(config-if)# ip igmp static-oif 230.0.0.0

マルチキャスト グループを発信インターフェイスに静的にバインドし、デバイス ハードウェアで処理します。グループ アドレスのみを指定した場合は、(*, G)ステートが作成されます。送信元アドレスを指定した場合は、(S, G)ステートが作成されます。match ip multicast コマンドで、使用するグループ プレフィックス、グループ範囲、および送信元プレフィックスを示すルートマップ ポリシー名を指定できます。

(注)  

 

IGMPv3 をイネーブルにした場合にのみ、(S, G)ステートに対して送信元ツリーが作成されます。

ステップ 7

ip igmp startup-query-interval seconds

例:

switch(config-if)# ip igmp startup-query-interval 25

ソフトウェアの起動時に使用されるクエリー インターバルを設定します。有効範囲は 1 ~ 18,000 秒です。デフォルト値は 31 秒です。

ステップ 8

ip igmp startup-query-count count

例:

switch(config-if)# ip igmp startup-query-count 3

ソフトウェアの起動時に使用されるクエリー数を設定します。有効範囲は 1 ~ 10 です。デフォルトは 2 です。

ステップ 9

ip igmp robustness-variable value

例:

switch(config-if)# ip igmp robustness-variable 3

ロバストネス変数を設定します。有効値の範囲は、1 ~ 7 です。デフォルトは 2 です。

ステップ 10

ip igmp querier-timeout seconds

例:

switch(config-if)# ip igmp querier-timeout 300

クエリアとして処理を引き継ぐかどうかをソフトウェアが判断するための、クエリア タイムアウト値を設定します。有効範囲は 1 ~ 65,535 秒です。デフォルト値は 255 秒です。

ステップ 11

ip igmp query-timeout seconds

例:

switch(config-if)# ip igmp query-timeout 300

クエリアとして処理を引き継ぐかどうかをソフトウェアが判断するための、クエリー タイムアウト値を設定します。有効範囲は 1 ~ 65,535 秒です。デフォルト値は 255 秒です。

(注)  

 

このコマンドの機能は、ip igmp querier-timeout コマンドと同じです。

ステップ 12

ip igmp query-max-response-time seconds

例:

switch(config-if)# ip igmp query-max-response-time 15

IGMP クエリーでアドバタイズされる応答時間を設定します。有効範囲は 1 ~ 25 秒です。デフォルトは 10 秒です。

ステップ 13

ip igmp query-interval interval

例:

switch(config-if)# ip igmp query-interval 100

IGMP ホスト クエリー メッセージの送信頻度を設定します。有効範囲は 1 ~ 18,000 秒です。デフォルト値は 125 秒です。

ステップ 14

ip igmp last-member-query-response-time seconds

例:

switch(config-if)# ip igmp last-member-query-response-time 3

メンバーシップ レポートを送信してから、ソフトウェアがグループ ステートを解除するまでのクエリー インターバルを設定します。有効範囲は 1 ~ 25 秒です。デフォルト値は 1 秒です。

ステップ 15

ip igmp last-member-query-count count

例:

switch(config-if)# ip igmp last-member-query-count 3

ホストの Leave メッセージを受信してから、IGMP クエリーが送信される回数を設定します。有効範囲は 1 ~ 5 です。デフォルトは 2 です。

ステップ 16

ip igmp group-timeout seconds

例:

switch(config-if)# ip igmp group-timeout 300

IGMPv2 のグループ メンバーシップ タイムアウトを設定します。有効範囲は 3 ~ 65,535 秒です。デフォルト値は 260 秒です。

ステップ 17

ip igmp report-link-local-groups

例:

switch(config-if)# ip igmp report-link-local-groups

224.0.0.0/24 に含まれるグループに対して、レポート送信をイネーブルにします。非リンク ローカル グループには、常にレポートが送信されます。デフォルトでは、リンク ローカル グループにレポートは送信されません。

ステップ 18

ip igmp report-policy ポリシー

例:

switch(config-if)# ip igmp report-policy my_report_policy

ルートマップ ポリシーに基づく、IGMP レポートのアクセス ポリシーを設定します。

ステップ 19

ip igmp access-group ポリシー

例:

switch(config-if)# ip igmp access-group my_access_policy

インターフェイスが接続されたサブネット上のホストについて、加入可能なマルチキャスト グループを制御するためのルートマップ ポリシーを設定します。

(注)  

 

match ip multicast group コマンドだけがこのルート マップ ポリシーでサポートされます。ACL を照合するための match ip address コマンドはサポートされていません。

ステップ 20

ip igmp immediate-leave

例:

switch(config-if)# ip igmp immediate-leave

デバイスが、グループに関する Leave メッセージの受信後、ただちにマルチキャスト ルーティング テーブルからグループ エントリを削除できるようにします。このコマンドを使用すると、デバイスからグループ固有のクエリが送信されないため、所定の IGMP インターフェイスで IGMPv2 グループ メンバーシップの脱退のための待ち時間が最小限になります。デフォルトではディセーブルになっています。

(注)  

 

このコマンドは、所定のグループに対するインターフェイスの背後に 1 つの受信者しか存在しない場合に使用します。

ステップ 21

(任意) show ip igmp interface [interface] [vrf vrf-name | all] [brief]

例:

switch(config)# show ip igmp interface
(任意)

インターフェイスに関する IGMP 情報を表示します。

ステップ 22

(任意) copy running-config startup-config

例:


switch(config)# copy running-config startup-config
(任意)

実行コンフィギュレーションを、スタートアップ コンフィギュレーションにコピーします。構成の変更を保存します

IGMP SSM 変換の設定

SSM 変換を設定すると、IGMPv1 または IGMPv2 によるメンバーシップ レポートを受信したルータで、SSM がサポートされるようになります。メンバーシップ レポートでグループおよび送信元アドレスを指定する機能を備えているのは、IGMPv3 だけです。グループ プレフィックスのデフォルト範囲は、232.0.0.0/8 です。PIM SSM 範囲を変更するには、「SSM(PIM)の構成」セクションを参照してください。

テーブル 3 に、SSM 変換の例を示します。22-10-2022 11:47

表 3. SSM 変換の例

グループ プレフィックス

送信元アドレス

232.0.0.0/8

10.1.1.1

232.0.0.0/8

10.2.2.2

232.1.0.0/16

10.3.3.3

232.1.1.0/24

10.4.4.4

テーブル 4 に、IGMP メンバーシップ レポートに SSM 変換を適用した場合に、IGMP プロセスによって構築される MRIB ルートを示します。複数の変換を行う場合は、各変換内容に対して (S, G) ステートが作成されます。

表 4. SSM 変換適用後の例

IGMPv2 メンバーシップ レポート

作成される MRIB ルート

232.1.1.1

(10.4.4.4, 232.1.1.1)

232.2.2.2

(10.1.1.1、232.2.2.2) (10.2.2.2、232.2.2.2)


(注)  


これは、一部の Cisco IOS ソフトウェアに組み込まれている SSM マッピングと類似した機能です。


手順の概要

  1. configure terminal
  2. ip igmp ssm-translate group-prefix source-addr
  3. (任意) show running-configuration igmp
  4. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

グローバル コンフィギュレーション モードを開始します。

ステップ 2

ip igmp ssm-translate group-prefix source-addr

例:

switch(config)# ip igmp ssm-translate 232.0.0.0/8 10.1.1.1

ルータが IGMPv3 メンバーシップ レポートを受信したときと同様に、(S,G) ステートが作成されるよう、IGMP プロセスによる IGMPv1 または IGMPv2 メンバーシップ レポートの変換を設定します。

ステップ 3

(任意) show running-configuration igmp

例:

switch(config)# show running-configuration igmp
(任意)

ssm-translate コマンド ラインを含む、実行コンフィギュレーション情報を表示します。

ステップ 4

(任意) copy running-config startup-config

例:

switch(config)# copy running-config startup-config
(任意)

設定変更を保存します。

ルータ アラートの適用オプション チェックの設定

IGMPv2 パケットと IGMPv3 パケットに対するルータ アラートの適用オプション チェックを設定できます。

手順の概要

  1. configure terminal
  2. (任意) [no] ip igmp enforce-router-alert
  3. (任意) show running-configuration igmp
  4. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

グローバル設定モードを開始します。

ステップ 2

(任意) [no] ip igmp enforce-router-alert

例:

switch(config-if)# ip igmp enforce-router-alert
(任意)

IGMPv2 パケットと IGMPv3 パケットに対するルータ アラートの適用オプション チェックを有効または無効にします。デフォルトでは、ルータ アラートの適用オプション チェックはイネーブルです。

ステップ 3

(任意) show running-configuration igmp

例:

switch(config)# show running-configuration igmp
(任意)

enforce-router-alert コマンド ラインを含む、実行コンフィギュレーション情報を表示します。

ステップ 4

(任意) copy running-config startup-config

例:

switch(config)# copy running-config startup-config
(任意)

設定変更を保存します。

IGMP ホスト プロキシの設定

ここでは、次の内容について説明します。

機能の概要

IGMP ホスト プロキシ機能は、PIM 対応のマルチキャスト ネットワーク ドメインを、PIM を認識しないドメインに接続するのに役立ちます。この機能は、インターフェイスをプロキシ インターフェイスとして設定し、内部 PIM ネットワークで受信した PIM の加入/プルーニングを、IGMP の加入/脱退に置き換えます。

IGMP の加入処理

ホストがマルチキャスト グループに加入するとき、ホストは、加入するマルチキャスト グループに 1 つ以上の送信要求されていないメンバーシップ レポートを送信します。

IGMP の脱退処理

IGMPv2 Leave は、マルチキャスト ネットワークの最後のホストが脱退するときに送信されます。したがって、最後のホストから PIM プルーニングを受信すると、IGMPv2 Leaveがアップストリームに送信され、これ以上関心がないことを示します。

IGMP マルチキャスト アドレス

IP マルチキャスト トラフィックには、グループ アドレス(クラス D IP アドレス)が使用されます。クラス D アドレスの上位 4 ビットは 1110 です。したがって、ホスト グループ アドレスの範囲は 224.0.0.0 ~ 239.255.255.255 であると考えられます。

224.0.0.0 ~ 224.0.0.255 のマルチキャスト アドレスは、ルーティング プロトコルおよびその他のネットワーク制御トラフィックが使用するために予約されています。アドレス 224.0.0.0 は、どのグループにも割り当てられません。

IGMP パケットは IP マルチキャスト グループ アドレスを使用して次のように送信されます。

  • IGMP 汎用クエリーは、アドレス 224.0.0.1(サブネット上のすべてのシステム)を宛先とします。

  • IGMP グループ固有のクエリは、クエリ対象ルータのグループ IP アドレスを宛先とします。

  • IGMP グループ メンバーシップ レポートは、レポート対象のルータのグループ IP アドレスを宛先とします。

  • IGMPv2 グループ脱退メッセージは、アドレス 224.0.0.2(サブネット上のすべてのルータ)を宛先とします。

注意事項と制約事項

IGMP ホスト プロキシの構成については、次の注意事項と制限事項を参照してください。

  • IGMPv3(RFC 3376)に従って送信元のリストを除外またはブロックすることはサポートされていません。

  • IGMP ホスト プロキシ プロキシは、プロキシ インターフェイス上の IGMP 参加/プルーニングに対して受信した PIM 参加/プルーニングです。

  • プロキシ インターフェイスが VLAN の場合は、スヌーピングを無効にします。

  • IGMP のみを認識するネットワークに接続するために使用できます。

  • ホスト プロキシ インターフェイスはレイヤ 3 インターフェイスです。

  • (S、G)エントリには、IGMP ホスト プロキシ インターフェイスとして RPF があります。

  • 理想的な構成ポイントは RP です。

  • IGMP ホスト プロキシは、クエリ モードまたは非送信請求モードにすることができます。

  • クエリアが存在しない状態でレポートを送信する必要がある場合は、IGMP ホスト プロキシを非送信請求モードで構成します。

  • レイヤ 3 物理ポートで IGMP ホスト プロキシ非送信請求モードを構成します。

  • IGMP ホスト プロキシ インターフェイスでは、IP が有効になっている必要があります。

  • PIM は、ホスト プロキシ インターフェイスで有効にしないでください。

  • IGMP スタティック/結合グループは、IGMP ホスト プロキシ インターフェイスで構成しないでください。

IGMP ホスト プロキシの設定方法

IGMP ホスト プロキシを構成するには、次の手順を実行します。

表 5. IGMP ホスト プロキシの設定

ステップ

コマンド

目的

ステップ 1

configure terminal

例:

switch# configure terminal switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

interface vlan interface

VLAN インターフェイス モードを開始します。

ステップ 3

no shutdown

インターフェイスを no shutdown モードに設定します。

ステップ 4

ip address ip address

IP アドレスを設定します。

ステップ 5

[no] ip igmp host-proxy [unsolicited [time] | route-map route-map-name [unsolicited [time]] | prefix-list prefix-list-name [unsolicited [time]]]

ルート マップの IGMP ホスト プロキシを設定します。

ステップ 6

show ip igmp groups

ホスト プロキシのため、H タイプの VRF の IGMP 接続グループ メンバーシップを表示します。

ステップ 7

show ip igmp int vlan interface

VRF の IGMP インターフェイスを表示します。

ステップ 8

show ip igmp local-groups vlan interface

VRF のための、IGMP ローカル ジョイン グループ メンバーシップを表示します。

ステップ 9

show ip pim host-proxy

PIM ホスト プロキシ インターフェイスを表示します。

IGMP 構成の確認

IGMP の設定情報を表示するには、次の作業のいずれかを行います。

コマンド

目的

show ip igmp interface [interface] [vrf ] vrf-name| all] [brief]

すべてのインターフェイスまたは選択されたインターフェイス、デフォルト VRF、選択された VRF、またはすべての VRF について、IGMP 情報を表示します。

show ip igmp groups group|interface] [vrf vrf-name | all]

グループまたはインターフェイス、デフォルト VRF、選択された VRF、またはすべての VRF について、IGMP で接続されたグループのメンバーシップを表示します。

show ip igmp routegroup | interface vrf vrf-name | all

グループまたはインターフェイス、デフォルト VRF、選択された VRF、またはすべての VRF について、IGMP で接続されたグループのメンバーシップを表示します。

show ip igmp local-groups

IGMP ローカル グループ メンバーシップを表示します。

show running-configuration igmp

IGMP 実行コンフィギュレーション情報を表示します。

show startup-configuration igmp

IGMP スタートアップ コンフィギュレーション情報を表示します。

これらのコマンドからの出力のフィールドに関する詳細は、『Cisco Nexus 3000 シリーズ マルチキャスト ルーティング コマンド リファレンス』を参照してください。

IGMP の設定例

次に、IGMP パラメータの設定例を示します。

switch# configure terminal
switch(config)# ip igmp ssm-translate 232.0.0.0/8 10.1.1.1
switch(config)# interface ethernet 2/1
switch(config-if)# no switchport
switch(config-if)# ip igmp version 3
switch(config-if)# ip igmp join-group 230.0.0.0
switch(config-if)# ip igmp startup-query-interval 25
switch(config-if)# ip igmp startup-query-count 3
switch(config-if)# ip igmp robustness-variable 3
switch(config-if)# ip igmp querier-timeout 300
switch(config-if)# ip igmp query-timeout 300
switch(config-if)# ip igmp query-max-response-time 15
switch(config-if)# ip igmp query-interval 100
switch(config-if)# ip igmp last-member-query-response-time 3
switch(config-if)# ip igmp last-member-query-count 3
switch(config-if)# ip igmp group-timeout 300
switch(config-if)# ip igmp report-link-local-groups
switch(config-if)# ip igmp report-policy my_report_policy
switch(config-if)# ip igmp access-group my_access_policy
switch(config-if)# ip igmp immediate-leave

次に、すべてのマルチキャスト レポート(加入)を受け付けるルート マップを設定する例を示します。

switch(config)# route-map foo
switch(config-route-map)# exit
switch(config)# interface vlan 10
switch(config-if)# no switchport
switch(config-if)# ip pim sparse-mode
switch(config-if)# ip igmp report-policy foo

次に、すべてのマルチキャスト レポート(加入)を拒否するルート マップを設定する例を示します。

switch(config)# route-map foo deny 10
switch(config-route-map)# exit
switch(config)# interface vlan 5
switch(config-if)# ip pim sparse-mode
switch(config-if)# ip igmp report-policy foo