IP : IP マルチキャスト

Catalyst OS が稼働する Catalyst スイッチ上で同じ VLAN 上に送信側と受信側が存在する場合のマルチキャスト トラフィックの制限

2015 年 11 月 26 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2008 年 8 月 26 日) | 英語版 (2015 年 10 月 7 日) | フィードバック


目次


概要

ネットワーク マネージャからは、マルチキャストの送信側と受信側が同じ VLAN 上にある場合に、スイッチ上でマルチキャスト トラフィックを制限できるかどうか、この設定のために必要な条件は何か、ルータが必要かどうかといった問い合わせが頻繁に寄せられます。

それは可能であり、ほとんどの場合はルータが必要になるというのが、この回答です。

注: Catalyst 6500/6000 シリーズ スイッチ上の CatOS 7.1 以降のバージョンでは、Internet Group Management Protocol(IGMP)スヌーピング クエリアと呼ばれる新機能が使用可能になっています。 この機能を使用すると、マルチキャストの送信側と受信側が同じ VLAN にある場合にマルチキャスト トラフィックを制限するのに、ルータを使用する必要がなくなります。 IGMP スヌーピング クエリアでは、マルチキャスト トラフィックのルーティングが不要なので Protocol Independent Multicast(PIM)と IGMP が設定されていない VLAN 上で、IGMP スヌーピングがイネーブルにされます。

前提条件

要件

このドキュメントの読者は次の項目に関する知識が必要です。

  • マルチキャストの送信側とすべての受信側が同じ VLAN にある場合に、スイッチ上でのマルチキャスト トラフィックを制限するために必要になる基本的な要件は、次のとおりです。

    • スイッチでは、Cisco Group Management Protocol(CGMP)または Internet Group Management Protocol(IGMP)スヌーピングが有効にされている必要があります。 レイヤ 2 デバイスでのマルチキャストを制限する別の方式である GARP Multicast Registration Protocol(GMRP)は、ここでは扱いません。

    • ルータの送信側と受信側がある VLAN に接続されているインターフェイスでは、Protocol-Independent Multicast(PIM)が有効になっている必要があります。

    • CGMP を使用している場合は、ルータの送信側と受信側がある VLAN に接続されているインターフェイスで、CGMP が有効になっている必要があります。

    注: 単一の VLAN でマルチキャストを制限するだけで、他のインターフェイスやサブネットにマルチキャスト トラフィックを転送しないのであれば、ルータで(ip multicast-routing グローバル設定コマンドを使用して)マルチキャスト ルーティングをイネーブルにする必要はありません(ルータ インターフェイスで PIM をイネーブルにする際に、ルータからマルチキャスト ルーティングをイネーブルにする必要があるとの警告が表示されますが、このアプリケーションではこの警告を無視しても問題はありません)。

  • このドキュメントでは、CatOS が稼働する Catalyst スイッチでのマルチキャスト トラフィックの制限について説明しています。 Cisco IOS が稼働している Catalyst 4000 および 6000 スイッチのマルチキャストトラフィックを抑制するために次に挙げるドキュメントを参照して下さいか。 システム ソフトウェア(ネイティブモード):

使用するコンポーネント

このドキュメントの例を作成するにあたっては、次のデバイスをラボ環境で使用しました。

  • Cisco IOS 12.0(7)W5(15d) が稼働している Catalyst 4908G-L3 スイッチ ルータ

  • Catalyst OS 5.5(2) が稼働している Catalyst 4003 スイッチ

  • Catalyst OS 5.5(2) が稼働している Catalyst 6009 スイッチ

  • Catalyst OS 5.5(2) が稼働している Catalyst 5509 スイッチ

  • IGMP スヌーピング クエリア機能については 8.1(3) および 7.6(2a) が稼働している Catalyst 6500/6000 シリーズのスイッチ 2 台

  • マルチキャストの受信側(ホスト)として動作する、ルータ 2 台(この場合は Catalyst 2948G-L3 1 台と Cisco 7000 1 台)

  • IP マルチキャスト ストリームを送信できるトラフィック ジェネレータ(SmartBits 2000)

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

関連製品

CGMP と IGMP スヌーピングは、各 Catalyst スイッチで次のようにサポートされています。

  • Catalyst 4000 ファミリ: CGMP のみ

  • Catalyst 6000 ファミリ: IGMP スヌーピングのみ

  • Catalyst 5000 ファミリ: IGMP スヌーピング(スーパーバイザ エンジン III/IIIF(NFFC または NFFC II)、またはスーパーバイザ エンジン IIG/IIIG が必要)と CGMP

特定のハードウェアやソフトウェアに関する要件などを含む詳細については、Catalyst 4000/5000 および Catalyst 6000 のマルチキャストに関するドキュメントを参照してください。

このドキュメントの設定は、外部に接続されていないラボ環境で実装されたものです。 ここでの設定を実践する前に、各設定やコマンドがネットワークにどのように影響するかを理解してください。

表記法

ドキュメントの表記法の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

CGMP を使用した設定

この例では、マルチキャストの送信側と受信側が同じ VLAN 上にある基本的なネットワーク環境を示しています。 目的とする動作は、スイッチ上でのマルチキャストの転送を、そのマルチキャスト ストリームを要求しているポート宛てだけに限定することです。

この例のネットワーク トポロジを図 1 に示します。

図 1: CGMP 例 パート 1

/image/gif/paws/10568/38a.gif

トラフィック ジェネレータは、マルチキャスト UDP パケットの 1 Mbps のストリームを、VLAN 50 のグループ アドレス 239.10.10.10(Catalyst 4003 のポート 3/19)に送信しています。

4908G-L3 ルータは VLAN 50 のポート 3/1 の Catalyst 4003 に接続されます。 次の設定は GigabitEthernet1 インターフェイスでルータがインターフェイスを渡るマルチキャストトラフィックをルーティングしていないので)適用されます(ことに注目して下さいグローバルに設定される ip multicast-routing コマンドがありません:

interface GigabitEthernet1
 ip address 192.168.50.11 255.255.255.0
 ip pim dense-mode
 ip cgmp

Catalyst 4003 スイッチでは CGMP と CGMP fastleave がイネーブルになっています(set cgmp enableset cgmp leave enable)。

Catalyst 4003 に接続される 2 つのホスト(マルチキャストレシーバー)があります。 ホストA は VLAN 50 のポート 3/3 で接続されます。 ホスト B は VLAN 50 のポート 3/12 で接続されます。 これらのホストは実際に端末(すなわち、ルーティングか他の同じような機能は設定されません)で設定されるルータです。 ホストA はホスト B は IP アドレス 192.168.50.75/24 で設定されるインターフェイスを備えているが IP アドレス 192.168.50.13/24 で設定されるインターフェイスを備えています。 この例の以降は ip igmp join-group interface configuration コマンドを使用しているマルチキャスト グループに、ホスト加入されます。

次の出力は、VLAN 50 でグループ アドレス 239.10.10.10 に対してトラフィック ジェネレータが転送していながら、スイッチでは受信側がないという場合に、Catalyst 4908G-L3 で採取したものです。

4908g-l3# show ip pim interface

Address          Interface          Version/Mode    Nbr   Query     DR
                                                    Count Intvl
192.168.50.11    GigabitEthernet1   v2/Dense         0    30     192.168.50.11
4908g-l3#show ip igmp interface gig 1
GigabitEthernet1 is up, line protocol is up
  Internet address is 192.168.50.11/24
  IGMP is enabled on interface
  Current IGMP version is 2
  CGMP is enabled on interface
  IGMP query interval is 60 seconds
  IGMP querier timeout is 120 seconds
  IGMP max query response time is 10 seconds
  Last member query response interval is 1000 ms
  Inbound IGMP access group is not set
  IGMP activity: 2 joins, 1 leaves
  Multicast routing is enabled on interface
  Multicast TTL threshold is 0
  Multicast designated router (DR) is 192.168.50.11 (this system)
  IGMP querying router is 192.168.50.11 (this system)
  Multicast groups joined: 224.0.1.40
queue_counter 2579 periodic_counter 77065 dmvrp_counter 0 timer_couter 77065 ast
ray 0
4908g-l3# show ip mroute
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
       R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
       X - Proxy Join Timer Running
       Outgoing Interface Flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.10.10.10), 00:02:15/00:02:59, RP 0.0.0.0, flags: DJC
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    GigabitEthernet1, Forward/Dense, 00:02:15/00:00:00

(192.168.50.50, 239.10.10.10), 00:02:16/00:00:43, flags: PCT
  Incoming interface: GigabitEthernet1, RPF nbr 0.0.0.0
  Outgoing interface list: Null

4908g-l3#

太字の出力に注意してください。

次の出力は、VLAN 50 でグループ アドレス 239.10.10.10 に対してトラフィック ジェネレータが転送していながら、スイッチでは受信側がないという場合に、Catalyst 4003 スイッチで採取したものです。

4003> (enable) show cgmp leave

CGMP:       enabled
CGMP leave: enabled
4003> (enable) show multicast router
Port       Vlan
---------- ----------------
 3/1       50

Total Number of Entries = 1
'*' - Configured
'+' - RGMP-capable
4003> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             3/1
50    01-00-5e-0a-0a-0a             3/1

Total Number of Entries = 2
4003> (enable)

太字の出力に注意してください。

  • show cgmp leave 出力には、スイッチで CGMP と CGMP fastleave がイネーブルにされていることが示されています。

  • show multicast router コマンドでは、VLAN 50 のポート 3/1 で 1 つのマルチキャスト ルータ(4908G-L3)がスイッチで認識されていることが示されています。

  • show multicast group コマンドでは、マルチキャスト ルータ ポートであるポート 3/1 に対してのみ、VLAN 50 で MAC アドレス 01-00-5e-0a-0a-0a(239.10.10.10 がマッピングされるマルチキャスト MAC アドレス)を宛先とするトラフィックがスイッチで制限されていることが示されています。

ここで、Host A と Host B をグループ アドレス 239.10.10.10 に対するマルチキャスト受信側として設定します。 この設定には、ip igmp join-group インターフェイス設定コマンドを使用します。

Host A(FastEthernet13 インターフェイスに接続されている Catalyst 2948G-L3)

HostA# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
HostA(config)# interface fastethernet13
HostA(config-if)# ip igmp join-group 239.10.10.10
HostA(config-if)# ^Z
HostA# show ip igmp group
IGMP Connected Group Membership
Group Address    Interface            Uptime    Expires   Last Reporter
239.10.10.10     FastEthernet13       00:00:05  never     192.168.50.13
HostA#

Host B(Ethernet1/0 インターフェイスに接続されている Cisco 7000)

HostB# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
HostB(config)# interface ethernet1/0
HostB(config-if)# ip igmp join-group 239.10.10.10
HostB(config-if)# ^Z
HostB# show ip igmp group
IGMP Connected Group Membership
Group Address    Interface            Uptime    Expires   Last Reporter
239.10.10.10     Ethernet1/0          00:00:10  never     192.168.50.75
HostB#

次の出力は、Host A と Host B がマルチキャスト グループ 239.10.10.10 に加入した後で Catalyst 4003 から得られたものです。

4003> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             3/1
50    01-00-5e-0a-0a-0a             3/1,3/3,3/12

Total Number of Entries = 2
4003> (enable)

今回は、スイッチが VLAN 50 のポート 3/3(Host A)およびポート 3/12(Host B)に、トラフィック 01-00-5e-0a-0a-0a(239.10.10.10)へのトラフィックを転送していることが分かります。

ここで、Host A がマルチキャスト グループから脱退します。

HostA# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
HostA(config)# interface fastethernet13
HostA(config-if)# no ip igmp join-group 239.10.10.10
HostA(config-if)# ^Z
HostA#

スイッチによって、ポート 3/3 が 01-00-5e-0a-0a-0a 宛てのマルチキャスト転送テーブルから削除されます。

4003> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             3/1
50    01-00-5e-0a-0a-0a             3/1,3/12

Total Number of Entries = 2
4003> (enable)

ここで、トラフィック ジェネレータが新たに 1 Mbps のマルチキャスト ストリームを 239.85.85.85(MAC アドレス 01-00-5e-55-55-55)宛てに送信し始めます。 図 2 を参照してください。

図 2: CGMP 例 パート 2

/image/gif/paws/10568/38b.gif

次の出力では、Catalyst 4908G-L3 のマルチキャスト ルーティング テーブルを示しています。

4908g-l3# show ip mroute
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
       R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
       X - Proxy Join Timer Running
       Outgoing Interface Flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.85.85.85), 00:01:35/00:02:59, RP 0.0.0.0, flags: DP
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(192.168.50.50, 239.85.85.85), 00:01:36/00:01:23, flags: PT
  Incoming interface: GigabitEthernet1, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(*, 239.10.10.10), 00:01:36/00:02:59, RP 0.0.0.0, flags: DP
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(192.168.50.50, 239.10.10.10), 00:01:36/00:01:23, flags: PT
  Incoming interface: GigabitEthernet1, RPF nbr 0.0.0.0
  Outgoing interface list: Null

4908g-l3#

各マルチキャスト ストリームについて、(S,G) および (*,G) のエントリがあることに注意してください。

Catalyst 4003 の場合、マルチキャスト転送テーブルは次のようになります。

4003> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             3/1
50    01-00-5e-0a-0a-0a             3/1,3/12
50    01-00-5e-55-55-55             3/1

Total Number of Entries = 3
4003> (enable)

このスイッチには、VLAN 50、ポート 3/1 の 01-00-5e-55-55-55 に対するエントリが追加されていることに注意してください。

これで、ip igmp join-group 239.85.85.85 インターフェイス設定コマンドを使用して、Host A と Host B の両方が 239.85.85.85 のグループに加入したことになります。 Host A と Host B がグループに加入した後、このスイッチのマルチキャスト転送テーブルは、次のようになります。

4003> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             3/1
50    01-00-5e-0a-0a-0a             3/1,3/12
50    01-00-5e-55-55-55             3/1,3/3,3/12

Total Number of Entries = 3
4003> (enable)

VLAN 50 の 01-00-5e-55-55-55 に対するエントリに、3/3 と 3/12 が追加されたことに注意してください。

IGMP スヌーピングを使用した設定

この例では、マルチキャストの送信側と受信側がすべて同じ VLAN 上にある、別の基本的なネットワーク環境を示しています。 目的とする動作は、これらのスイッチ上でのマルチキャストの転送を、そのマルチキャスト ストリームを要求しているポート宛てだけに限定することです。

この例のネットワーク トポロジを図 3 に示します。

図 3: IGMP スヌーピング 例 パート 1

38c.gif

トラフィック ジェネレータは、マルチキャスト UDP パケットの 1 Mbps のストリームを、VLAN 50 のグループ アドレス 239.10.10.10(Catalyst 6009 のポート 3/13)に送信しています。

4908G-L3 ルータはポート 1/1 の Catalyst 6009 に接続されます。 リンクは VLANトランクで設定されます。 GigabitEthernet1.50 サブインターフェイスには、次の設定が適用されます(このルータではインターフェイス経由でのマルチキャスト トラフィックのルーティングは行っていないので、グローバルに設定されている ip multicast-routing コマンドはない点に注意してください)。

interface GigabitEthernet1.50
 encapsulation isl 50
 ip address 192.168.50.11 255.255.255.0
 ip pim dense-mode

レイヤ 2 スイッチで IGMP スヌーピングしか使用していない場合は、ip cgmp インターフェイス設定コマンドが不要であることに注意してください。

Catalyst 6009 スイッチと Catalyst 5509 スイッチでは、IGMP スヌーピングと IGMP fastleave がイネーブルにされています(set igmp enableset igmp fastleave enable)。 Catalyst 6009 は、ポート 4/1 のトランク リンクを経由して、Catalyst 5509 のポート 2/1 へ接続されています。

この例には、2 つのホスト(マルチキャスト受信側)があります。 ホストA は VLAN 50 のポート 3/37 の Catalyst 6009 に接続されます。 ホスト B は VLAN 50 のポート 3/9 の Catalyst 5509 に接続されます。 次は CGMP 例、これらのホスト実際に端末(すなわち、ルーティングか他の同じような機能は設定されません)で設定されるルータです。 ホストA はホスト B は IP アドレス 192.168.50.75/24 で設定されるインターフェイスを備えているが IP アドレス 192.168.50.13/24 で設定されるインターフェイスを備えています。 この例の以降は ip igmp join-group interface configuration コマンドを使用しているマルチキャスト グループに、ホスト加入されます。

次の出力は、VLAN 50 でグループ アドレス 239.10.10.10 に対してトラフィック ジェネレータが転送していながら、スイッチでは受信側がないという場合に、Catalyst 4908G-L3 で採取したものです。

4908g-l3# show ip pim interface

Address          Interface          Version/Mode    Nbr   Query     DR
                                                    Count Intvl
192.168.50.11    Gi1.50             v2/Dense         0    30     192.168.50.11
4908g-l3# show ip igmp interface gig1.50
Gi1.50 is up, line protocol is up
  Internet address is 192.168.50.11/24
  IGMP is enabled on interface
  Current IGMP version is 2
  CGMP is disabled on interface
  IGMP query interval is 60 seconds
  IGMP querier timeout is 120 seconds
  IGMP max query response time is 10 seconds
  Last member query response interval is 1000 ms
  Inbound IGMP access group is not set
  IGMP activity: 3 joins, 2 leaves
  Multicast routing is enabled on interface
  Multicast TTL threshold is 0
  Multicast designated router (DR) is 192.168.50.11 (this system)
  IGMP querying router is 192.168.50.11 (this system)
  Multicast groups joined: 224.0.1.40
queue_counter 85 periodic_counter 4777 dmvrp_counter 0 timer_couter 4777 astray
0
4908g-l3# show ip mroute
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
       R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
       X - Proxy Join Timer Running
       Outgoing Interface Flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.10.10.10), 00:02:10/00:02:59, RP 0.0.0.0, flags: DP
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(192.168.50.50, 239.10.10.10), 00:02:11/00:00:48, flags: PT
  Incoming interface: GigabitEthernet1.50, RPF nbr 0.0.0.0
  Outgoing interface list: Null

4908g-l3#

次に、太字の出力の詳細を説明します。

  • show ip pim interface 出力には、IP アドレス 192.168.50.11 の GigabitEthernet1 インターフェイスが PIM dense モード(PIM-DM)で動作していることが示されています。

  • show ip igmp interface gig 1.50 コマンドでは、インターフェイスで IGMP がイネーブルに、CGMP がディセーブルにされていて、PIM が稼働していることが示されています。

  • show ip mroute コマンドでは、ルータには 239.10.10.10 の(ソース、グループ)エントリがあり、発信元が 192.168.50.50(トラフィック ジェネレータ)であることが示されています。 発信インターフェイスのリスト(Outgoing interface list)が空(Null)であることに注意してください。 これは、このルータが、実際にはそのインターフェイス間でマルチキャスト ルーティングを実行していないためです。 実行しているサービスは、VLAN 50 での IGMP の加入と脱退の監視だけです。

次の出力は、VLAN 50 でグループ アドレス 239.10.10.10 に対してトラフィック ジェネレータが転送していながら、スイッチでは受信側がないという場合に、Catalyst 6009 スイッチで採取したものです。

Cat6009> (enable) show multicast protocols status
IGMP enabled
IGMP fastleave enabled
RGMP disabled
GMRP disabled
Cat6009> (enable) show multicast router
Port       Vlan
---------- ----------------
 1/1       50

Total Number of Entries = 1
'*' - Configured
'+' - RGMP-capable
Cat6009> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             1/1
50    01-00-5e-0a-0a-0a             1/1

Total Number of Entries = 2
Cat6009> (enable)

次に、太字の出力の詳細を説明します。

次の出力は、VLAN 50 でグループ アドレス 239.10.10.10 に対してトラフィック ジェネレータが転送していながら、スイッチでは受信側がないという場合に、Catalyst 5509 スイッチで採取したものです。

Cat5509> (enable) show multicast protocols status
CGMP disabled
IGMP enabled
IGMP fastleave enabled
RGMP disabled
GMRP disabled
Cat5509> (enable) show multicast router
Port       Vlan
---------- ----------------
 2/1       50

Total Number of Entries = 1
'*' - Configured
'+' - RGMP-capable
Cat5509> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------

Total Number of Entries = 0
Cat5509> (enable)

次に、太字の出力の詳細を説明します。

  • show multicast protocols status 出力には、スイッチで IGMP と IGMP fastleave が有効にされていることが示されています。

  • show multicast router コマンドでは、VLAN 50 のポート 2/1 で 1 つのマルチキャスト ルータ(6009 スイッチへのトランク)がスイッチで認識されていることが示されています。

  • show multicast group コマンドでは、スイッチで認識されているマルチキャスト ルータはないことが示されています。 これは、6009 がすでにマルチキャスト トラフィックをこのルータのポートだけに制限しているためです。そのため、5509 は VLAN 50 の MAC アドレス 01-00-5e-0a-0a-0a に宛てられたトラフィックを受信しません。

ここで、ip igmp join-group 239.10.10.10 インターフェイス設定コマンドを入力して、Host A(VLAN 50 のポート 3/37 で 6009 に接続)をグループ アドレス 239.10.10.10 のマルチキャスト受信側として設定します。

次の出力は、Host A がマルチキャスト グループ 239.10.10.10 に加入した後で Catalyst 6009 スイッチから得られたものです。

Cat6009> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             1/1
50    01-00-5e-0a-0a-0a             1/1,3/37

Total Number of Entries = 2
Cat6009> (enable)

ポート 3/37 が、このマルチキャスト グループに対するマルチキャスト転送テーブルに追加されたことが分かります。 Catalyst 5509 の転送テーブルは変更されていません(マルチキャストのエントリなし)。これは、Catalyst 6009 では、マルチキャスト トラフィックが 5509 へのトランク リンクを通過することを、まだ阻止しているためです。

ここで、ip igmp join-group 239.10.10.10 インターフェイス設定コマンドを入力して、Host B(VLAN 50 のポート 3/9 で 5509 に接続)をグループ アドレス 239.10.10.10 のマルチキャスト受信側として設定します。

次の出力は、Host B がマルチキャスト グループ 239.10.10.10 に加入した後で Catalyst 6009 スイッチから得られたものです。

Cat6009> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             1/1
50    01-00-5e-0a-0a-0a             1/1,3/37,4/1

Total Number of Entries = 2
Cat6009> (enable)

Catalyst 6009 で、ポート 4/1(Catalyst 5509 へのトランク ポート)が、マルチキャスト グループの転送テーブルに追加されたことが分かります。

次の出力は、Host B がマルチキャスト グループ 239.10.10.10 に加入した後で Catalyst 5509 スイッチから得られたものです。

Cat5509> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-0a-0a-0a             2/1,3/9

Total Number of Entries = 1
Cat5509> (enable)

Catalyst 5509 で、マルチキャスト グループ(MAC 01-00-5e-0a-0a-0a)に対するマルチキャスト転送エントリが追加され、トランク ポート(2/1)と Host B のポート(3/9)が含まれていることが分かります。

ここで、Host A がマルチキャスト グループから脱退します(no ip igmp join-group 239.10.10.10 インターフェイス設定コマンドを使用)。

6009 スイッチで、ポート 3/37 が 01-00-5e-0a-0a-0a に対するマルチキャスト転送テーブルから削除されます。

Cat6009> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             1/1
50    01-00-5e-0a-0a-0a             1/1,4/1

Total Number of Entries = 2
Cat6009> (enable)

5509 のマルチキャスト転送テーブルは変更されていません。

ここで、トラフィック ジェネレータが新たに 1 Mbps のマルチキャスト UDP パケットを、グループ アドレス 239.85.85.85(MAC アドレス 01-00-5e-55-55-55)に送信し始めます。 図 4 を参照してください。

図 4: IGMP スヌーピング 例 パート 2

38d.gif

4908G-L3 では、新しいグループ アドレスに対して、(*,G) および (S,G) というエントリを作成します。

4908g-l3# show ip mroute
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
       R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
       X - Proxy Join Timer Running
       Outgoing Interface Flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.85.85.85), 00:00:37/00:02:59, RP 0.0.0.0, flags: DP
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(192.168.50.50, 239.85.85.85), 00:00:38/00:02:21, flags: PT
  Incoming interface: GigabitEthernet1.50, RPF nbr 0.0.0.0
  Outgoing interface list: Null

(*, 239.10.10.10), 00:13:44/00:02:59, RP 0.0.0.0, flags: DJC
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    GigabitEthernet1.50, Forward/Dense, 00:13:44/00:00:00

(192.168.50.50, 239.10.10.10), 00:00:38/00:02:21, flags: PCT
  Incoming interface: GigabitEthernet1.50, RPF nbr 0.0.0.0
  Outgoing interface list: Null

4908g-l3#

6009 では、新しいマルチキャスト MAC アドレスに対する送信元だけの転送エントリを作成します。これには、VLAN 50 にあるマルチキャスト ルータ ポート(1/1)だけが含まれています。

t6009> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             1/1
50    01-00-5e-0a-0a-0a             1/1,4/1
50    01-00-5e-55-55-55             1/1

Total Number of Entries = 3
Cat6009> (enable)

これで、ip igmp join-group 239.85.85.85 インターフェイス設定コマンドを使用して、Host A と Host B の両方が 239.85.85.85 のグループに加入したことになります。

次の出力は、Host A と Host B がマルチキャスト グループ 239.85.85.85 に加入した後で Catalyst 6009 から得られたものです。

Cat6009> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-00-01-28             1/1
50    01-00-5e-0a-0a-0a             1/1,4/1
50    01-00-5e-55-55-55             1/1,3/37,4/1

Total Number of Entries = 3
Cat6009> (enable)

スイッチで VLAN 50 の 01-00-5e-55-55-55 に対するエントリに、ポート 3/37(Host A)と 4/1(5509 へのトランク)が追加されたことに注意してください。

次の出力は、Host A と Host B がマルチキャスト グループ 239.85.85.85 に加入した後で Catalyst 5509 から得られたものです。

Cat5509> (enable) show multicast group
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type]
----  ------------------    -----  -------------------------------------------
50    01-00-5e-0a-0a-0a             2/1,3/9
50    01-00-5e-55-55-55             2/1,3/9

Total Number of Entries = 2
Cat5509> (enable)

スイッチで VLAN 50 の 01-00-5e-55-55-55 に対するエントリが追加され、ポート 2/1(6009 へのトランク)とポート 3/9(Host B)が追加されたことが分かります。

IGMP スヌーピング クエリア機能を使用した設定

これまでの説明で、送信側と受信側が同じ VLAN 上にあり、マルチキャスト トラフィックをその関連する受信者だけに送られるようにする場合には、その VLAN に対応するルータ インターフェイスで PIM が有効にされており、CGMP または IGMP スヌーピングを使用する必要がありました。

しかし、Catalyst 6500/6000 シリーズ スイッチの CatOS バージョン 7.1 からは、IGMP スヌーピング クエリアという新しい機能が導入されました。 この機能により、他の VLAN へはマルチキャスト トラフィックが送信されないという理由で PIM および IGMP が設定されていない VLAN で、IGMP スヌーピングが使用できるようになります。 送信側と受信側の間で、マルチキャスト トラフィックを送りたい VLAN 上にマルチキャスト ルータがない場合は、IGMP スヌーピング クエリア機能を有効にして、この設定が正しく動作するようにする必要があります。

ある VLAN に対して IGMP クエリア機能が設定されている場合は、スイッチが IGMP の通常のクエリを 125 秒ごとに送信し、また、他のスイッチから送られる通常のクエリを受信します。 ある VLAN に対して IGMP クエリアを有効にしているスイッチが複数ある場合は、どのスイッチにクエリアの役割を続けさせるかを決めるための選択が行われます。 選択されなかったスイッチは、タイマーを起動し、その時間内にクエリーを受信できなかった場合には、新しいクエリアの再選択を行います。

この機能のテストには、2 台の Catalyst 6000 スイッチを使用しています。そのうち、1 台は CatOS ソフトウェア バージョン 8.1(3) を、もう 1 台は CatOS ソフトウェア バージョン 7.6(2a) を実行しています。 トポロジは次のとおりです。

図 5: IGMP クエリア 例

38e.gif

送信側と受信側は、すべて VLAN 9 上にあります。IGMP クエリアは、両方のスイッチで有効にされています。

Didju (enable) set igmp querier enable 9 
IGMP querier is enabled for VLAN(s) 9 

Cust (enable) set igmp querier enable 9 
IGMP querier is enabled for VLAN(s) 9

この機能が動作するには、この設定ですでに十分ですが、いくつか細かい調整をする必要があります。

Cust (enable) set igmp querier 9 ? 
  qi                         Query Interval for the vlan(s) 
  oqi                        Other Querier Interval for the vlan(s)

デフォルトでは 125 秒の Query Interval は、クエリアに選出されたスイッチが一般的 IGMP クエリを送出する頻度を指定します。

デフォルトでは 300 秒の Other Querier Interval は、非クエリア ステートにあるスイッチがクエリア スイッチからの一般的 IGMP クエリを待機する時間数を指定します。 設定した時間間隔内に、選択されたクエリア スイッチから通常のクエリーを受信できなかった場合は、クエリア スイッチの次の候補が、クエリア スイッチになります。 この仕組みは、「デッド タイマー」と同様です。

両方のスイッチでの IGMP クエリアの現在の状態を調べるには、次のようにします。

Cust (enable) show igmp querier information 9 
VLAN Querier State         Query Tx Count QI (seconds) OQI (seconds) 
---- --------------------- -------------- ------------ ------------- 
9    QUERIER               4              125          300 
Cust (enable) 

Didju (enable) show igmp querier information 
VLAN Querier Address Querier State         Query Tx Count QI (sec) OQI (sec) 
---- --------------- --------------------- -------------- -------- -------- 
9    0.0.0.0         NON-QUERIER           0              125      300 
Didju (enable)

上記の出力から、クエリ範囲が非querier の 125 秒および「デッド タイマー」であること「Cust」と呼ばれるスイッチが querier 選ばれたことがわかります、300 秒はあります。

この例では、マルチキャスト発信元がグループ 239.10.10.10 にトラフィックを送信してしますが、これはレイヤ 2 の MAC アドレス 01-00-5E-0A-0A-0A に対応しています。

ここで、IGMP によってマルチキャスト グループに追加されたポートを確認します。

Didju (enable) show multicast group 
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type] 
----  ------------------    -----  ------------------------------------------- 
9     01-00-5e-0a-0a-0a             2/7-8 

Total Number of Entries = 1 
Didju (enable)

!--- Port 2/7 is the port connected to PC 1 and
!--- Port 2/8 connects to Cust, the second 6000.

Cust では、次のように表示されます。

Cust (enable) show multicast group 
VLAN  Dest MAC/Route Des    [CoS]  Destination Ports or VCs / [Protocol Type] 
----  ------------------    -----  ------------------------------------------- 
9     01-00-5e-0a-0a-0a             3/13-14 

Total Number of Entries = 1 
Cust (enable)

!--- Port 3/13 connects to PC 2 and 3/14 to Didju.

show multicast router コマンドでは、IGMP クエリを実行中のルータの場所が表示されます。

Cust では、次のように IGMP クエリアに選出されたスイッチからの出力はありません。

Cust (enable) show multicast router 
Port           Vlan 
-------------- ---------------- 

Total Number of Entries = 0 
'*' - Configured 
'+' - RGMP-capable 
'#' - Channeled Port 
'$' - IGMP-V3 Router 
'@' - IGMP-Querier Router 
Cust (enable)

2 つ目のスイッチ Didju では、次のように表示されます。

Didju (enable) show multicast router 
Port           Vlan 
-------------- ---------------- 
 2/7              @  9 

Total Number of Entries = 1 
'*' - Configured 
'+' - RGMP-capable 
'#' - Channeled Port 
'$' - IGMP-V3 Router 
'@' - IGMP-Querier Router 
Didju (enable)

ここでは、マルチキャスト ルータ ポートはポート 2/7(Cust に接続するポート)で、'@' 記号で示されています。これは、IGMP クエリア機能が使用中であることを示しています。

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 10568