Einleitung
In diesem Dokument werden die verschiedenen Konfigurationsmöglichkeiten zum Blockieren oder Filtern von bestimmtem Multicast-Verkehr auf Nexus 7000-/9000-Switches beschrieben. Ein gängiges Beispiel ist die Implementierung von Universal Plug-and-Play, bei der SSDP für die Kommunikation zwischen den Servern verwendet wird.
Voraussetzungen
Anforderungen
Cisco empfiehlt, dass Sie wissen, wie Any-Source Multicast (ASM) bei Verwendung des PIM Sparse Mode auf der Nexus-Plattform funktioniert.
Verwendete Komponenten
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
- Nexus 7000 mit F3/M3 LC mit NXOS 7.3(4)D1(1)
- Nexus N9K-C93180YC-EX/FX mit 7.0(3)I7(9) oder 9.3(5)
Anmerkung: Die Ergebnisse können variieren, wenn sich die SW/HW unterscheiden.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Hintergrundinformationen
Hier finden Sie eine Liste der verwendeten Akronyme:
RP = Rendezvous Point
FHR = First Hop Router
LHR = Last Hop Router
SRC = Multicast Source
REC = Multicast Receiver
PACL = Port Access List
RACL = Routed Access List
SVI = Switched Virtual Interface
ACL = Access Control List
Konfigurieren
Allgemeine Topologie

Konfigurationsbeispiele
Gehen wir einmal davon aus:
IP-Adresse des RP: 192.168.10.1
Die IP-Adresse von SRC lautet 172.16.10.100/32
SSDP-Gruppe: 239.255.255.250/239.255.255.253
Befassen wir uns nun mit der Konfiguration basierend auf der Rolle des Geräts. Beispiel: FHR, LHR, RP und mehr.
FHR - In der Regel ist Multicast SRC hier direkt verbunden.
1. Filtern Sie die Registrierung zum bestehenden RP.
ip pim rp-address 192.168.10.1 route-map filter-registration
!
Route-map filter-registration deny 5
match ip multicast source 172.16.10.100/32 group 239.255.255.250/32
// Above line is specific to SRC/GROUP pair
Route-map filter-registration deny 7
match ip multicast group 239.255.255.250/32
// Above line is for any SRC and specific group
!
Route-map filter-registration permit 100
Match ip multicast group 224.0.0.0/4
|
2. Filtern der Registrierung für den RP durch Definieren eines falschen RP (der nicht existiert (z. B. 1.1.1.1) für SSDP-Gruppen; FHR übernimmt in diesem Fall die Rolle des RP.
ip route 1.1.1.1/32 Null0
!
ip pim rp-address 1.1.1.1 route-map SSDP_groups
!
Route-map SSDP_groups permit 5
match ip multicast group 239.255.255.250/32
Route-map SSDP_groups permit 10
match ip multicast group 239.255.255.253/32
Route-map SSDP_groups deny 20
match ip multicast group 224.0.0.0/4
!
ip pim rp-address 192.168.10.1 route-map all_other_groups
!
Route-map all_other_groups deny 5
match ip multicast group 239.255.255.250/32
Route-map all_other_groups deny 10
match ip multicast group 239.255.255.253/32
Route-map all_other_groups permit 20
match ip multicast group 224.0.0.0/4
|
Überprüfung:
Nexus9K_OR_N7K# show ip pim rp
PIM RP Status Information for VRF "default"
BSR disabled
Auto-RP disabled
BSR RP Candidate policy: None
BSR RP policy: None
Auto-RP Announce policy: None
Auto-RP Discovery policy: None
RP: 192.168.10.1, (0),
uptime: 00:00:27 priority: 0,
RP-source: (local), group-map: Filter-registration,
group rangs:
224.0.0.0/4
239.255.255.253/32 (deny)
239.255.255.250/32 (deny)
Nexus9K_OR_N7K# show ip mroute
IP Multicast Routing Table for VRF "default"
(172.16.10.100/32, 239.255.255.250/32), uptime: 00:04:12, ip pim
Incoming interface: Vlan10, RPF nbr: 172.16.10.100
Outgoing interface list: (count: 0)
Nexus9K_OR_N7K# show system internal mfwd event-history pkt
pkt events for MCASTFWD process
2021 Jan 1 11:11:41.792316 mcastfwd [21914]: [21933]: Create state for (172.16.10.100, 239.255.255.250)
Nexus9K_OR_N7K # show ip pim internal event-history null-register
2021 Jan 01 11:15:19.095711: E_DEBUG pim [21935]: Null Register not sent for (172.16.10.100/32, 239.255.255.250/32) yes
|
Diese Ausgabe bestätigt, dass FHR den Stream nicht beim RP registriert.
LHR - In der Regel ist Multicast-REC hier direkt verbunden.
3. Anwendung der IGMP-Richtlinie auf die Eingangs-SVI (in der sich REC befindet). Die IGMP-Mitgliedschaftsberichte für SSDP-Gruppen sollen nach REC gefiltert werden.
ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4
!
route-map filter-SSDP-joins deny 5
match ip multicast group 239.255.255.250/32
route-map filter-SSDP-joins deny 6
match ip multicast group 239.255.255.253/32
route-map filter-SSDP-joins permit 100
match ip multicast group 224.0.0.0/4
!
Interface VlanXX
ip igmp report-policy filter-SSDP-joins
|
Überprüfung:
Nexus9K_OR_N7K (config)# show ip mroute 239.255.255.250
IP Multicast Routing Table for VRF "default"
Group not found
!
Nexus9K_OR_N7K (config)# show ip igmp snooping groups vlan 44
Type: S - Static, D - Dynamic, R - Router port, F - Fabricpath core port
Vlan Group Address Ver Type Port list
44 */* - R Vlan44
44 239.255.255.250 v2 D Eth1/5
!
Nexus9K_OR_N7K (config)# show ip igmp internal event-history debugs
debugs events for IGMP process
2021 Jan 1 11:52:21.277915 igmp [1125]: : Filtered group 239.255.255.250
2021 Jan 1 11:52:21.277903 igmp [1125]: : Received v2 Report for 239.255.255.250 from 172.16.44.100 (Vlan44)
|
Diese Ausgabe bestätigt, dass der IGMP-Mitgliedschaftsbericht gefiltert wird und die (*,G)-Verbindung nicht an den RP gesendet wird.
PIM = Enabled Router, der als FHR/LHR agiert
Je nach Ihren Anforderungen können Sie eine Kombination der Optionen 1, 2 und 3 verwenden.
Beispiele:
4. Filtern der Registrierung zum bestehenden RP (FHR-Rolle):
ip pim rp-address 192.168.10.1 route-map filter-registration
!
Route-map filter-registration deny 5
match ip multicast source 172.16.10.100/32 group 239.255.255.250/32
Route-map filter-registration deny 7
match ip multicast group 239.255.255.250/32
!
Route-map filter-registration permit 100
Match ip multicast group 224.0.0.0/4
|
5. IGMP-Richtlinie zum Filtern von IGMP-Mitgliedschaftsberichten von REC (LHR-Rolle).
ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4
!
route-map filter-SSDP-joins deny 5
match ip multicast group 239.255.255.250/32
route-map filter-SSDP-joins deny 6
match ip multicast group 239.255.255.253/32
route-map filter-SSDP-joins permit 100
match ip multicast group 224.0.0.0/4
!
Interface VlanXX
ip igmp report-policy filter-igmp-joins
|
Überprüfung:
Dies entspricht in etwa der Überprüfung in den Punkten C und D, die bereits erwähnt wurden.
Show ip mroute
Show ip pim rp
Show ip pim internal event-history join-prune
Show ip igmp internal event-history debugs
|
RP - Dies ist Rendezvous Point.
6. Registrierungsrichtlinie, um die Registrierung der SSDP-Gruppe bei der FHR zu blockieren
ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4
ip pim register-policy all_groups
!
Route-map all_groups deny 5
match ip multicast group 239.255.255.250/32
Route-map all_groups deny 10
match ip multicast group 239.255.255.253/32
Route-map all_groups permit 20
match ip multicast group 224.0.0.0/4
|
Überprüfung:
Nexus9K_OR_N7K (config)# show ip mroute 239.255.255.250
IP Multicast Routing Table for VRF "default"
Group not found
!
Nexus9K_OR_N7K (config)# show ip pim internal event-history data-register-receive
2021 Jan 08 03:33:06.353951: E_DEBUG pim [1359]: Register disallowed by policy
2021 Jan 08 03:33:06.353935: E_DEBUG pim [1359]: Received DATA Register from 172.16.10.1 for (172.16.10.100/32, 239.255.255.250/32) (pktlen 1028)
2021 Jan 08 03:29:42.602744: E_DEBUG pim [1359]: Add new route (172.16.10.100/32, 239.1.1.1/32) to MRIB, multi-route TRUE
F241.01.13-C93180YC-EX-1(config)# show ip pim internal event-history null-register
2021 Jan 08 03:35:40.966617: E_DEBUG pim [1359]: Send Register-Stop to 172.16.10.1 for (172.16.10.100/32, 239.255.255.250/32)
2021 Jan 08 03:35:40.966613: E_DEBUG pim [1359]: Register disallowed by policy
2021 Jan 08 03:35:40.966597: E_DEBUG pim [1359]: Received NULL Register from 172.16.10.1 for (172.16.10.100/32, 239.255.255.250/32) (pktlen 20)
|
Diese Ausgabe bestätigt, dass RP die Registrierung für die Gruppe 239.255.255.250 blockiert.
7. Die Join-Prune-Richtlinie wird auf den RP angewendet - sowohl pim (*,G) join als auch (S,G) join gilt nur für die SSDP-Gruppe.
ip pim rp-address 192.168.10.1 group-list 224.0.0.0/4
ip pim register-policy all_groups
!
Route-map all_groups deny 5
match ip multicast group 239.255.255.250/32
Route-map all_groups deny 10
match ip multicast group 239.255.255.253/32
Route-map all_groups permit 20
match ip multicast group 224.0.0.0/4
!
Interface Ethernet/Y
ip pim sparse-mode
ip pim jp-policy all_groups
|
Überprüfung:
Nexus9K_OR_N7K # show ip mroute 239.255.255.253
IP Multicast Routing Table for VRF "default"
Group not found
!
F241.01.13-C93180YC-EX-1# show ip pim internal event-history join-prune
2021 Jan 08 03:53:41.643419: E_DEBUG pim [1359]: Join disallowed by inbound JP policy
|
Diese Ausgabe bestätigt, dass der (*,G) PIM-Join vom RP blockiert wird.
Konfigurieren von konservierten HW-Einträgen für Multicast
Obwohl alle Optionen in den Abschnitten A, B oder C erörtert; entweder verhindern, dass FHR, LHR oder FHR/LHR den Stream am RP registrieren, oder verhindern, dass PIM Join (*,G) an den RP gesendet wird; ein mroute- oder snooping-Eintrag erstellt werden kann und Multicast-HW-Einträge verwendet.
Anmerkung: Falls VPC konfiguriert ist, können Sie RACL oder PACL auf Eingangs-SVI- oder Layer2-Schnittstellen/Port-Channels/VPC-Port-Channels verwenden. Wenn SRC/REC in verschiedenen VLAN- oder L2-Schnittstellen verteilt sind, bedeutet dies auch, dass RACL oder PACL auf alle diese Schnittstellen angewendet werden müssen. Je nach HW/SW (meist aufgrund von HW-Einschränkungen) können die Ergebnisse jedoch variieren.
PACL
Konfigurieren Sie PACL am Eingangs-Layer-2-Port oder Port-Channel oder VPC-Port-Channel, um den SSDP-Datenverkehr zu blockieren oder die Erstellung eines (S,G)-Eintrags auf der FHR.
Anmerkung: Je nach verwendeter HW (z. B. Nexus N9000) muss der TCAM zur Anwendung der PACL ggf. zuvor ausgemustert werden (hierfür ist ein Neuladen erforderlich).
Beispiele:
ip access-list BlockAllSSDP
Statistics per-entry
10 deny ip any 239.255.255.250/32
20 deny ip any 239.255.255.253/32
30 permit ip any any
!
Interface Ethernet X/Y
Or
Interface port-channel XX
ip port-access group BlockAllSSDP in
|
Überprüfung:
F241.01.13-C93180YC-EX-1# sh ip mroute 239.255.255.250
IP Multicast Routing Table for VRF "default"
Group not found
!
show ip access-lists BlockAllSSDP
IP access list BlockAllSSDP
statistics per-entry
10 deny ip any 239.255.255.250/32 [match=3] -> Drop counters
20 deny ip any 239.255.255.253/32 [match=0]
30 permit ip any any [match=0]
|
Da beide Multicast-Datenverkehr-/IGMP-Mitgliedschafts-Ports über PACL blockiert werden, wird kein Snooping-/mroute-Eintrag angezeigt. Im Wesentlichen verwirft PACL beide.
RACL
Sie können RACL auf der Eingangs-SVI konfigurieren, sofern SRC vorhanden ist, jedoch abhängig von der verwendeten SW/HW. (S, G)-Eintrag kann noch erstellt werden, oder der Datenverkehr kann an andere lokale VLANs weitergeleitet werden.
ip access-list BlockAllSSDP
Statistics per-entry
10 deny ip any 239.255.255.250/32
20 deny ip any 239.255.255.253/32
30 permit ip any any
!
Interface VlanXX
ip port-access group BlockAllSSDP in
|
Überprüfung:
Es ist fast identisch mit PACL, aber die RACL-Option kann nicht die gleichen Ergebnisse wie PACL liefern; meist wird auch die HW-Begrenzung schon früher erwähnt.
COPP
Sie können SSDP auch bei COPP blockieren. Unten sehen Sie eine Beispielkonfiguration:
class-map type control-plane match-any nossdp
match access-group name nossdp
policy-map type control-plane nossdp
class nossdp
police cir 0 bps bc 0 bytes conform transmit violate drop control-plane dynamic
service-policy-dyn input nossdp
!
ip access-list nossdp
statistics per-entry
10 permit ip any 239.255.255.250/32
20 permit igmp any 239.255.255.250/32
30 permit pim any 239.255.255.250/32
|
Globale Multicast-Grenze
Ab Cisco NX-OS Version 10.2(1) wird die Global Boundary Multicast-Konfiguration unterstützt.
Sie müssen die {ip | ipv6} Befehl prefix-list <prefix-list-name> für Multicast-Bereich im VRF-Konfigurationsmodus, um einen globalen Bereich von IP-Multicast-Gruppen und -Kanälen festzulegen, die für die globale Multicast-Grenze zugelassen oder abgelehnt werden sollen. Mit diesem Befehl werden Multicast-Protokollaktionen und die Weiterleitung des Datenverkehrs für nicht autorisierte Gruppen oder Kanäle für alle Schnittstellen auf einem Router deaktiviert. Die Präfixliste konfiguriert die Grenze. Nachfolgend finden Sie eine Beispielkonfiguration:
vrf context enterprise
ip multicast group-range prefix-list test
|
https://www.cisco.com/c/en/us/td/docs/dcn/nx-os/nexus9000/102x/configuration/multicast-routing/cisco-nexus-9000-series-nx-os-multicast-routing-configuration-guide-release-102x/m-overview.html#concept_29A33F30E7F84F7AA20C8D7D1A22ED98