Netzwerkmanager fragen häufig, ob Multicast-Datenverkehr auf einem Switch eingeschränkt werden kann, wenn sich die Multicast-Quelle und die Multicast-Empfänger alle im selben VLAN befinden, und welche Anforderungen bestehen, um dieses Ziel zu erreichen - insbesondere, ob ein Router erforderlich ist.
Die Antwort lautet: Ja, es ist möglich, und in den meisten Fällen ist ein Router erforderlich.
Hinweis: Ab Catalyst Switches der Serien 6500 und 6000 ab CatOS 7.1 und höher ist eine neue Funktion verfügbar, die als IGMP-Snooping-Abfrager (Internet Group Management Protocol) bezeichnet wird. Bei dieser Funktion ist ein Router nicht mehr erforderlich, um Multicast-Datenverkehr einzuschränken, wenn sich die Multicast-Quelle und alle Empfänger im selben VLAN befinden. Der IGMP-Snooping-Querier aktiviert IGMP-Snooping in einem VLAN, in dem Protocol Independent Multicast (PIM) und IGMP nicht konfiguriert sind, da der Multicast-Datenverkehr nicht geroutet werden muss.
Die Leser dieses Dokuments sollten über folgende Punkte Bescheid wissen:
Die grundlegenden Anforderungen für die Einschränkung des Multicast-Datenverkehrs auf einem Switch, wenn sich die Multicast-Quelle und alle Empfänger im selben VLAN befinden, sind:
Der Switch muss über Cisco Group Management Protocol (CGMP)- oder Internet Group Management Protocol (IGMP)-Snooping verfügen. GARP Multicast Registration Protocol (GMRP), ein weiterer Mechanismus zur Einschränkung von Multicast auf Layer-2-Geräten, wird hier nicht berücksichtigt.
Auf dem Router muss Protocol-Independent Multicast (PIM) für die Schnittstelle aktiviert sein, die im VLAN verbunden ist, in dem sich die Quelle und die Empfänger befinden.
Wenn Sie CGMP verwenden, muss CGMP auf der Schnittstelle aktiviert sein, die im VLAN mit dem Quell- und Empfänger-Standort verbunden ist.
Hinweis: Sie müssen Multicast-Routing (mithilfe des globalen Konfigurationsbefehls ip Multicast-Routing) nicht auf dem Router aktivieren, wenn Sie Multicast-Datenverkehr auf ein einzelnes VLAN beschränken möchten und nicht an andere Schnittstellen oder Subnetze weitergeleitet werden sollen (der Router beschwert sich, dass Sie Multicast-Routing aktivieren müssen, wenn Sie PIM an der Router-Schnittstelle aktivieren. Dies kann jedoch sein. in dieser Anwendung ignoriert).
In diesem Dokument wird die Einschränkung des Multicast-Datenverkehrs auf Catalyst Switches mit CatOS erläutert. In den folgenden Dokumenten wird der Multicast-Datenverkehr auf Catalyst Switches der Serien 4000 und 6000 mit Cisco IOS®-Systemsoftware (Nativer Modus) eingeschränkt:
Verständnis und Konfiguration von IGMP Snooping auf Catalyst 4000
Konfigurieren von IGMP Snooping auf Catalyst 6500/6000
Um die Beispiele in diesem Dokument zu erstellen, wurden die folgenden Geräte in einer Laborumgebung verwendet:
Catalyst 4908G-L3 Switch-Router mit Cisco IOS 12.0(7)W5(15d)
Catalyst 4003-Switch mit Catalyst OS 5.5(2)
Catalyst 6009-Switch mit Catalyst OS 5.5(2)
Catalyst 5509-Switch mit Catalyst OS 5.5(2)
Für die IGMP Snooping Querier-Funktion werden zwei Catalyst Switches der Serien 6500 und 6000 mit 8.1(3) und 7.6(2a) verwendet.
Zwei zusätzliche Router (in diesem Fall ein Catalyst 2948G-L3 und ein Cisco 7000) fungieren als Multicast-Empfänger (Hosts)
Ein Datenverkehrsgenerator (SmartBits 2000), der IP-Multicast-Streams übertragen kann
Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.
CGMP- und IGMP-Snooping werden auf den Catalyst Switches wie folgt unterstützt:
Catalyst 4000-Familie: Nur CGMP
Catalyst 6000-Familie: Nur IGMP-Snooping
Catalyst 5000-Familie: IGMP-Snooping (mit Supervisor Engine III/IIIF mit NFFC oder NFFC II oder mit Supervisor Engine IIG/IIIG) und CGMP
Weitere Informationen, einschließlich spezifischer Hardware- und Softwareanforderungen, finden Sie in der Multicast-Dokumentation für die Catalyst Switches der Serien 4000/5000 und 6000.
Die Konfigurationen in diesem Dokument wurden in einer isolierten Laborumgebung implementiert. Stellen Sie sicher, dass Sie die potenziellen Auswirkungen einer Konfiguration oder eines Befehls auf Ihr Netzwerk verstehen, bevor Sie es verwenden.
Weitere Informationen zu Dokumentkonventionen finden Sie in den Cisco Technical Tips Conventions.
Dieses Beispiel zeigt eine grundlegende Netzwerkumgebung, in der sich Multicast-Quelle(n) und Multicast-Empfänger im selben VLAN befinden. Das gewünschte Verhalten besteht darin, dass der Switch die Multicast-Weiterleitung auf die Ports beschränkt, die den Multicast-Stream anfordern.
Die Netzwerktopologie für dieses Beispiel ist in Abbildung 1 dargestellt.
Abbildung 1: CGMP - Beispiel Teil 1
Der Datenverkehrsgenerator sendet einen 1-Mbit/s-Stream von Multicast-UDP-Paketen an die Gruppenadresse 239.10.10.10 im VLAN 50 (Port 3/19 des Catalyst 4003).
Der 4908G-L3-Router ist über Port 3/1 im VLAN 50 mit dem Catalyst 4003 verbunden. Die folgende Konfiguration wird auf die GigabitEthernet1-Schnittstelle angewendet (beachten Sie, dass global kein ip-Multicast-Routing-Befehl konfiguriert ist, da der Router keinen Multicast-Datenverkehr über seine Schnittstellen weiterleitet):
interface GigabitEthernet1 ip address 192.168.50.11 255.255.255.0 ip pim dense-mode ip cgmp
Auf dem Catalyst 4003-Switch ist CGMP und CGMP fastleave aktiviert (set cgmp enable and set cgmp leave enable).
Es sind zwei Hosts (Multicast-Empfänger) mit dem Catalyst 4003 verbunden. Host A ist an Port 3/3 in VLAN 50 angeschlossen. Host B ist an Port 3/12 des VLAN 50 angeschlossen. Diese Hosts sind tatsächlich als Endstationen konfigurierte Router (d. h. es werden keine Routing- oder andere ähnliche Funktionen konfiguriert). Host A verfügt über eine Schnittstelle, die mit der IP-Adresse 192.168.50.13/24 konfiguriert ist, während Host B über eine Schnittstelle verfügt, die mit der IP-Adresse 192.168.50.75/24 konfiguriert ist. Später in diesem Beispiel werden die Hosts mit dem Schnittstellenkonfigurationsbefehl ip igmp join-group der Multicast-Gruppe hinzugefügt.
Die folgende Ausgabe stammt aus dem Catalyst 4908G-L3, wenn der Datenverkehrsgenerator in VLAN 50 an die Gruppenadresse 239.10.10.10 überträgt, jedoch keine Empfänger auf dem Switch vorhanden sind:
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#
Beachten Sie die Ausgabe in Fettschrift:
Der Befehl show ip mroute zeigt, dass der Router einen (Quell-, Gruppen-)Eintrag für 239.10.10.10 hat, der von 192.168.50.50 (dem Datenverkehrsgenerator) stammt. Beachten Sie, dass die Liste der ausgehenden Schnittstellen Null ist. Der Grund hierfür ist, dass der Router kein Multicast-Routing über seine Schnittstellen durchführt. Sie dient lediglich zur Überwachung von IGMP-Joins und -Blättern im VLAN 50 und zum Senden von CGMP-Nachrichten an den Switch.
Die folgende Ausgabe stammt vom Catalyst Switch der Serie 4003, wo der Datenverkehrsgenerator in VLAN 50 an die Gruppenadresse 239.10.10.10 überträgt, jedoch keine Empfänger auf dem Switch vorhanden sind:
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)
Beachten Sie die Ausgabe in Fettschrift:
Die Ausgabe für show cgmp Leave (CGMP-Urlaub anzeigen) zeigt, dass der CGMP- und CGMP-Schnellurlaub auf dem Switch aktiviert sind.
Der Befehl show multicast router gibt an, dass der Switch einen Multicast-Router an Port 3/1 in VLAN 50 (dem 4908G-L3) erkennt.
Der Befehl show multicast group (Multicast-Gruppe anzeigen) zeigt, dass der Switch den Datenverkehr für die MAC-Adresse 01-00-5e-0a-0a-0a (die Multicast-MAC-Adresse, der 239.10.10 zugeordnet ist) in VLAN 50 auf Port 3/1 beschränkt.
Konfigurieren Sie Host A und Host B jetzt als Multicast-Empfänger für die Gruppenadresse 239.10.10.10. Dies wird mithilfe des Schnittstellenkonfigurationsbefehls ip igmp join-group erreicht.
Host A (ein an die FastEthernet13-Schnittstelle angeschlossener 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 (ein Cisco 7000, das an der Ethernet1/0-Schnittstelle angeschlossen ist):
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#
Die folgende Ausgabe stammt vom Catalyst 4003-Switch, nachdem Host A und Host B der Multicast-Gruppe 239.10.10.10 beigetreten sind:
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)
Beachten Sie, dass der Switch jetzt Datenverkehr für die Ports 3/3 (Host A) und 3/12 (Host B) in VLAN 50 für die Ports 01-00-5e-0a-0a-0a (239.10.10.10) weiterleitet.
Host A verlässt die Multicast-Gruppe jetzt:
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#
Der Switch entfernt Port 3/3 aus der Multicast-Weiterleitungstabelle für 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)
Der Datenverkehrsgenerator beginnt jetzt, einen zusätzlichen Multicast-Stream mit 1 Mbit/s zu senden, der für 239.85.85.85 bestimmt ist (MAC-Adresse 01-00-5e-55-55-55). Siehe Abbildung 2.
Abbildung 2: CGMP - Beispiel Teil 2
Die folgende Ausgabe zeigt die Multicast-Routing-Tabelle auf dem 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#
Beachten Sie, dass für jeden Multicast-Stream ein (S,G)- und ein (*,G)-Eintrag vorhanden ist.
Auf dem Catalyst 4003 sieht die Multicast-Weiterleitungstabelle wie folgt aus:
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)
Beachten Sie, dass der Switch einen Eintrag für 01-00-5e-55-55-55 auf Port 3/1 (dem Router-Port) in VLAN 50 hinzugefügt hat.
Host A und Host B treten nun beide der Gruppe 239.85.85.85 mit dem Schnittstellenkonfigurationsbefehl ip igmp der Join-Gruppe 239.85.85.85 bei. Nachfolgend finden Sie die Tabelle für die Multicast-Weiterleitung des Switches, nachdem Host A und Host B der Gruppe beitreten:
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)
Beachten Sie, dass der Switch die Ports 3/3 und 3/12 im Eintrag für 01-00-5e-55-55-55 in VLAN 50 hinzugefügt hat.
Dieses Beispiel zeigt eine andere grundlegende Netzwerkumgebung, in der sich Multicast-Quelle(n) und Multicast-Empfänger alle im selben VLAN befinden. Das gewünschte Verhalten besteht darin, dass die Switches die Multicast-Weiterleitung auf die Ports beschränken, die den Multicast-Stream anfordern.
Die Netzwerktopologie für dieses Beispiel ist in Abbildung 3 dargestellt.
Abbildung 3: IGMP-Snooping - Beispiel Teil 1
Der Datenverkehrsgenerator sendet einen 1-Mbit/s-Stream von Multicast-UDP-Paketen an die Gruppenadresse 239.10.10.10 im VLAN 50 (Port 3/13 des Catalyst 6009).
Der 4908G-L3-Router ist an Port 1/1 mit dem Catalyst 6009 verbunden. Die Verbindung wird als VLAN-Trunk konfiguriert. Die folgende Konfiguration wird auf die GigabitEthernet1.50-Subschnittstelle angewendet (beachten Sie, dass kein global konfigurierter ip-Multicast-Routing-Befehl vorhanden ist, da der Router keinen Multicast-Datenverkehr über seine Schnittstellen weiterleitet):
interface GigabitEthernet1.50 encapsulation isl 50 ip address 192.168.50.11 255.255.255.0 ip pim dense-mode
Beachten Sie, dass der Befehl ip cgmp interface configuration nicht erforderlich ist, wenn Sie nur IGMP-Snooping auf den Layer-2-Switches verwenden.
Bei den Catalyst Switches der Serien 6009 und 5509 ist IGMP-Snooping und IGMP-Fast-Leave aktiviert (set igmp enable und set igmp fastleave enable). Der Catalyst 6009 verbindet sich über eine Trunk-Verbindung an Port 4/1 mit dem Catalyst 5509 an Port 2/1.
In diesem Beispiel gibt es zwei Hosts (Multicast-Empfänger). Host A ist an Port 3/37 in VLAN 50 mit dem Catalyst 6009 verbunden. Host B ist an Port 3/9 des VLAN 50 mit dem Catalyst 5509 verbunden. Wie im CGMP-Beispiel handelt es sich bei diesen Hosts tatsächlich um Router, die als Endstationen konfiguriert sind (d. h. es werden keine Routing- oder ähnliche Funktionen konfiguriert). Host A verfügt über eine Schnittstelle, die mit der IP-Adresse 192.168.50.13/24 konfiguriert ist, während Host B über eine Schnittstelle verfügt, die mit der IP-Adresse 192.168.50.75/24 konfiguriert ist. Später in diesem Beispiel werden die Hosts mit dem Schnittstellenkonfigurationsbefehl ip igmp join-group der Multicast-Gruppe hinzugefügt.
Die folgende Ausgabe stammt aus dem Catalyst 4908G-L3, wenn der Datenverkehrsgenerator in VLAN 50 an die Gruppenadresse 239.10.10.10 überträgt, jedoch keine Empfänger auf dem Switch vorhanden sind:
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#
Die fett formatierte Ausgabe wird im Folgenden genauer erläutert.
Die Ausgabe der show ip pim-Schnittstelle zeigt, dass die GigabitEthernet1-Schnittstelle mit der IP-Adresse 192.168.50.11 den PIM-DenseMode (PIM-DM) ausführt.
Der Befehl show ip igmp interface gig 1,50 zeigt, dass IGMP auf der Schnittstelle aktiviert und CGMP deaktiviert ist und dass PIM auf der Schnittstelle ausgeführt wird.
Der Befehl show ip mroute zeigt, dass der Router einen (Quell-, Gruppen-)Eintrag für 239.10.10.10 hat, der von 192.168.50.50 (dem Datenverkehrsgenerator) stammt. Beachten Sie, dass die Liste der ausgehenden Schnittstellen Null ist. Der Grund hierfür ist, dass der Router kein Multicast-Routing über seine Schnittstellen durchführt. Sie dient lediglich zur Überwachung von IGMP-Joins und -Blättern im VLAN 50.
Die folgende Ausgabe stammt vom Catalyst 6009-Switch, wo der Datenverkehrsgenerator in VLAN 50 an die Gruppenadresse 239.10.10.10 überträgt, jedoch keine Empfänger auf dem Switch vorhanden sind:
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)
Die fett formatierte Ausgabe wird im Folgenden genauer erläutert.
Der Befehl show multicast router (Multicast-Router anzeigen) zeigt, dass der Switch einen Multicast-Router an Port 1/1 in VLAN 50 (das 4908G-L3) erkennt.
Der Befehl show multicast group (Multicast-Gruppe anzeigen) zeigt, dass der Switch den Datenverkehr für die MAC-Adresse 01-00-5e-0a-0a-0a (die Multicast-MAC-Adresse, der 239.10.10.10 zugeordnet ist) in VLAN 50 auf Port 1/1 beschränkt.
Die folgende Ausgabe stammt vom Catalyst 5509-Switch, wo der Datenverkehrsgenerator in VLAN 50 an die Gruppenadresse 239.10.10.10 überträgt, jedoch keine Empfänger auf dem Switch vorhanden sind:
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)
Die fett formatierte Ausgabe wird im Folgenden genauer erläutert.
Die Ausgabe des Multicast-Protokollstatus anzeigen zeigt, dass IGMP und IGMP Fast-Leave auf dem Switch aktiviert sind.
Der Befehl show multicast router gibt an, dass der Switch einen Multicast-Router an Port 2/1 in VLAN 50 erkennt (dies ist der Trunk zum 6009-Switch).
Der Befehl show multicast group (Multicast-Gruppe anzeigen) zeigt, dass der Switch keine Multicast-Gruppen kennt. Der Grund hierfür ist, dass der 6009 den Multicast-Datenverkehr bereits auf den Router-Port beschränkt. Der 5509 empfängt also keinen Datenverkehr, der an die MAC-Adresse 01-00-5e-0a-0a in VLAN 50 gerichtet ist.
Konfigurieren Sie jetzt Host A (verbunden mit dem 6009 in VLAN 50 an Port 3/37) als Multicast-Empfänger für die Gruppenadresse 239.10.10.10, indem Sie den Schnittstellenkonfigurationsbefehl ip igmp-Join-Gruppe 239.10.10 eingeben.
Die folgende Ausgabe stammt vom Catalyst 6009-Switch, nachdem Host A der Multicast-Gruppe 239.10.10.10 hinzugefügt wurde:
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)
Beachten Sie, dass Port 3/37 der Multicast-Weiterleitungstabelle für die Multicast-Gruppe hinzugefügt wurde. Die Weiterleitungstabelle auf dem Catalyst 5509 hat sich nicht geändert (keine Multicast-Einträge), da der Catalyst 6009 immer noch verhindert, dass der Multicast-Datenverkehr die Trunk-Verbindung mit dem 5509 überquert.
Konfigurieren Sie Host B (verbunden mit dem 5509 in VLAN 50 an Port 3/9) jetzt als Multicast-Empfänger für die Gruppenadresse 239.10.10.10, indem Sie den Schnittstellenkonfigurationsbefehl ip igmp join-group 239.10.10.10 eingeben.
Die folgende Ausgabe stammt vom Catalyst 6009-Switch, nachdem Host B der Multicast-Gruppe 239.10.10.10 hinzugefügt wurde:
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)
Beachten Sie, dass der Catalyst 6009 der Weiterleitungstabelle für die Multicast-Gruppe Port 4/1 (der Trunk-Port für den Catalyst 5509) hinzugefügt hat.
Die folgende Ausgabe stammt vom Catalyst 5509-Switch, nachdem Host B der Multicast-Gruppe 239.10.10.10 hinzugefügt wurde:
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)
Beachten Sie, dass der Catalyst 5509 einen Multicast Forwarding-Eintrag für die Multicast-Gruppe (MAC 01-00-5e-0a-0a-0a) hinzugefügt hat und den Trunk-Port (2/1) und den Host-B-Port (3/9) umfasst.
Host A verlässt nun die Multicast-Gruppe (mit dem Schnittstellenkonfigurationsbefehl no ip igmp join-group 239.10.10.10).
Der 6009 entfernt Port 3/37 von der Multicast-Weiterleitungstabelle für 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)
Die 5509-Multicast-Weiterleitungstabelle bleibt unverändert.
Der Datenverkehrsgenerator beginnt jetzt, einen zweiten 1-Mbit/s-Stream von Multicast-UDP-Paketen an die Gruppenadresse 239.85.85.85 (MAC-Adresse 01-00-5e-55-55-55) zu übertragen. Siehe Abbildung 4.
Abbildung 4: IGMP-Snooping - Beispiel Teil 2
Der 4908G-L3 erstellt einen (*,G)- und einen (S,G)-Eintrag für die neue Gruppenadresse:
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#
Der 6009 erstellt einen Weiterleitungseintrag für die neue Multicast-MAC-Adresse, der nur den Multicast-Router-Port (1/1) in VLAN 50 umfasst:
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)
Host A und Host B treten nun der Gruppe 239.85.85.85 mit dem Schnittstellenkonfigurationsbefehl ip igmp der Join-Gruppe 239.85.85.85 bei.
Die folgende Ausgabe stammt vom Catalyst 6009-Switch, nachdem Host A und Host B der Multicast-Gruppe 239.85.85.85 beigetreten sind:
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)
Beachten Sie, dass der Switch die Ports 3/37 (Host A) und 4/1 (den Trunk zum 5509) im Eintrag für 01-00-5e-55-55-55 in VLAN 50 hinzugefügt hat.
Die folgende Ausgabe stammt vom Catalyst 5509-Switch, nachdem Host A und Host B der Multicast-Gruppe 239.85.85.85 beigetreten sind:
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)
Beachten Sie, dass der Switch einen Eintrag für 01-00-5e-55-55-55 in VLAN 50 hinzugefügt und Port 2/1 (der Trunk zum 6009) und Port 3/9 (Host B) hinzugefügt hat.
Früher, als sich die Quelle und die Empfänger im selben VLAN befanden und Sie sicherstellen wollten, dass der Multicast-Datenverkehr nur an die Empfänger gesendet wird, die an dem Datenverkehr interessiert sind, musste PIM auf der Router-Schnittstelle aktiviert werden, die dem VLAN entspricht, und es musste CGMP- oder IGMP-Snooping verwendet werden.
Ab CatOS 7.1 für Catalyst Switches der Serien 6500 und 6000 gibt es eine neue Funktion namens IGMP Snooping Querier. Diese Funktion ermöglicht IGMP-Snooping in einem VLAN, in dem PIM und IGMP nicht konfiguriert sind, da der Multicast-Datenverkehr nicht an ein anderes VLAN gesendet werden muss. Wenn im VLAN kein Multicast-Router vorhanden ist, an den der Multicast-Datenverkehr zwischen Quelle und Empfänger fließen soll, müssen Sie die IGMP Snooping Querier-Funktion aktivieren, damit dies ordnungsgemäß funktioniert.
Wenn die IGMP Querier-Funktion für ein bestimmtes VLAN konfiguriert ist, sendet der Switch alle 125 Sekunden allgemeine IGMP-Abfragen und überwacht andere allgemeine Abfragen von anderen Switches. Wenn bei mehreren Switches IGMP Querier für ein bestimmtes VLAN aktiviert ist, wird anhand eines Auswahlverfahrens ermittelt, welche der Switches weiterhin als Querier fungieren. Die anderen Switches, die die Wahl verloren haben, starten einen Timer, und wenn während dieser Zeit keine Abfragen mehr zu hören sind, wird für einen neuen Querier eine erneute Auswahl getroffen.
Zum Testen dieser Funktion werden zwei Catalyst 6000-Switches eingesetzt, einer mit CatOS-Software, Version 8.1(3), und der andere mit CatOS-Software, Version 7.6(2a). Die Topologie ist unten dargestellt.
Abbildung 5: IGMP Querier-Beispiel
Quelle und Empfänger befinden sich alle in VLAN 9. IGMP Querier ist auf beiden Switches aktiviert.
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
Diese Konfiguration ist bereits ausreichend, um diese Funktion zu aktivieren. Eine Feinabstimmung ist jedoch noch nicht möglich.
Cust (enable) set igmp querier 9 ? qi Query Interval for the vlan(s) oqi Other Querier Interval for the vlan(s)
Das Abfrageintervall, das standardmäßig 125 Sekunden beträgt, legt die Häufigkeit fest, mit der der ausgewählte Querier IGMP-allgemeine Abfragen sendet.
Das Andere Querier-Intervall, das standardmäßig 300 Sekunden beträgt, gibt die Zeitdauer an, die ein Switch im Zustand "Nicht-Abfrager" auf eine allgemeine Abfrage vom Querier-Switch wartet. Wenn die allgemeine Abfrage nicht im konfigurierten Zeitintervall vom ausgewählten Querier-Switch empfangen wird, wird der Kandidat Querier-Switch zum Querier-Switch. Diese Funktionalität ähnelt einem Dead-Timer.
So prüfen Sie den aktuellen Status des IGMP Querier auf beiden Switches:
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)
Aus den obigen Ausgängen können Sie sehen, dass der Switch "Cust" als Querier ausgewählt wurde, dass das Abfragenintervall 125 Sekunden und der "Dead Timer" für den Nicht-Querier 300 Sekunden beträgt.
In diesem Beispiel sendet die Multicast-Quelle Datenverkehr an die Gruppe 239.10.10.10, die auf Layer 2 zur MAC-Adresse 01-00-5E-0A-0A-0A entspricht.
Überprüfen Sie nun die Ports, die von IGMP der Multicast-Gruppe hinzugefügt werden.
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.
Bei Kunde sehen Sie Folgendes:
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.
Im Befehl show multicast router (Multicast-Router anzeigen) erhalten Sie einen Hinweis, wo sich der Router befindet, der die IGMP-Abfrage durchführt.
Beim Kunden zeigt der als IGMP Querier ausgewählte Switch keine Ausgabe an (siehe unten).
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)
Auf dem zweiten Switch Didju ist Folgendes zu sehen:
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)
Hier ist der Multicast-Router-Port Port Port 2/7 (der Port, der mit Cust verbunden ist), und über das '@'-Zeichen wird angegeben, dass die IGMP Querier-Funktion verwendet wird.