Inhalt

Einleitung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Hintergrundinformationen

Unterstützte Cisco Nexus 3k-Plattformen

Unterstützte Methoden der Dienstreflexion

Multicast NAT im regulären Modus

Fast-pass und Fast-pass mit Multicast NAT ohne Umschreiben

Konfigurieren

Topologie

Konfiguration

Switch 1-Konfiguration (Absender)

Switch 2-Konfiguration (Übersetzer)

Switch 3-Konfiguration (Empfänger)

Überprüfung

Service-Reflektionsfunktion überprüfen

Switch 1-Verifizierung

Switch 2-Verifizierung

Switch 3-Verifizierung

Fehlerbehebung

Zusammenfassung

Einleitung

In diesem Dokument wird beschrieben, wie Sie die Funktion zur Servicereflektion mit Cisco Nexus Switches der Serie 3000 (regulärer Modus) konfigurieren und überprüfen.

Voraussetzungen

Anforderungen

Allgemeine Empfehlungen, die Sie in folgenden Bereichen kennen:

- Protocol Independent Multicast (PIM)

- Open Shortest Path First (OSPF)

- Network Address Translation (NAT)

- Internet Group Management Protocol (IGMP)

Verwendete Komponenten

Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:

Sw1#

N9K-C93180YC-FX

NXOS: Version 9.3(5)

Sw2#

N3K-C3548P-XL

NXOS: Version 7.0(3)I7(9)

Sw3#

N3K-C3172TQ-10GT

NXOS: Version 7.0(3)I7(9)

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

Unterstützte Cisco Nexus 3k-Plattformen

Die Multicast-Service-Reflektionsfunktion wird nur auf Cisco Nexus 3548-X-Plattformen ab Version 7.0(3)I7(2) unterstützt.

Unterstützte Methoden der Dienstreflexion

Multicast NAT im regulären Modus

Im regulären Modus werden die als S1- und G1-Schnittstellen eingehenden Pakete in S2- und G2-Schnittstellen übersetzt, und die MAC-Zieladresse des ausgehenden Pakets wird als Multicast-MAC-Adresse der G2-Schnittstelle (z. B. der übersetzten Gruppe) übersetzt.

Fast-pass und Fast-pass mit Multicast NAT ohne Umschreiben

Im Fast-Pass-Modus werden die Schnittstellen S1, G1 in Schnittstellen S2, G2 übersetzt, und die MAC-Zieladresse des ausgehenden Pakets hat die Multicast-MAC-Adresse, die der Schnittstelle G1 entspricht (z. B. die MAC-Adresse der vorübersetzten Gruppe).

Konfigurieren

Topologie

Systemeigene Gruppe: 239.194.169.1 (G1)

Übersetzte Gruppe: 233.193.40.196 (G2)

Ursprüngliche Quelle: 10.11.11.1 (S1)

Übersetzte Quelle: 172.16.0.1. (S2)

Konfiguration

Switch 1-Konfiguration (Absender)

SW1# show run int eth1/47

interface Ethernet1/47

no switchport

ip address 10.11.11.1/24

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

SW1# show run ospf

feature ospf

router ospf 1

router-id 192.168.1.1

interface Ethernet1/47

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

SW1# show run pim

feature pim

ip pim rp-address 10.10.10.10 group-list 239.194.169.1/32

ip pim ssm range 232.0.0.0/8

interface Ethernet1/47

ip pim sparse-mode

Switch 2-Konfiguration (Übersetzer)

SW2# show run int eth 1/23,eth1/47

interface Ethernet1/23

no switchport

ip address 10.0.0.1/24

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

no shutdown

interface Ethernet1/47

no switchport

ip address 10.11.11.2/24

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

no shutdown

SW2# show run int lo0,lo411

interface loopback0

ip address 10.10.10.10/32

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

interface loopback411

ip address 172.16.0.1/32

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

ip igmp join-group 239.194.169.1

SW2# show run ospf

feature ospf

router ospf 1

router-id 192.168.1.2

interface loopback0

ip router ospf 1 area 0.0.0.0

interface loopback411

ip router ospf 1 area 0.0.0.0

interface Ethernet1/23

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

interface Ethernet1/47

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

SW2# show run pim

feature pim

ip pim rp-address 10.10.10.10 group-list 239.194.169.1/32

ip pim rp-address 172.16.0.1 group-list 233.193.40.196/32

ip pim ssm range 232.0.0.0/8

interface loopback0

ip pim sparse-mode

interface loopback411

ip pim sparse-mode

interface Ethernet1/23

ip pim sparse-mode

interface Ethernet1/47

ip pim sparse-mode

ip service-reflect mode regular

ip service-reflect destination 239.194.169.1 to 233.193.40.196 mask-len 32 source 172.16.0.1

hardware profile multicast service-reflect port 7

Switch 3-Konfiguration (Empfänger)

SW3# show run int eth 1/24

interface Ethernet1/24

ip address 10.0.0.2/24

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

ip igmp join-group 233.193.40.196

no shutdown

SW3# show run ospf

feature ospf

router ospf 1

router-id 192.168.1.3

interface Ethernet1/24

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

SW3# show run pim

feature pim

ip pim rp-address 172.16.0.1 group-list 233.193.40.196/32

ip pim ssm range 232.0.0.0/8

interface Ethernet1/24

ip pim sparse-mode

Überprüfung

Verwenden Sie diesen Abschnitt, um zu überprüfen, ob Ihre Konfiguration ordnungsgemäß funktioniert.

Service-Reflektionsfunktion überprüfen

Switch 1-Verifizierung

SW1# show ip mroute

IP Multicast Routing Table for VRF "default"

(*, 232.0.0.0/8), uptime: 3w6d, pim ip

Incoming interface: Null, RPF nbr: 0.0.0.0

Outgoing interface list: (count: 0)

(10.11.11.1/32, 239.194.169.1/32), uptime: 00:06:57, pim ip

Incoming interface: Ethernet1/47, RPF nbr: 10.11.11.1

Outgoing interface list: (count: 1)

Ethernet1/47, uptime: 00:06:57, pim, (RPF)

Switch 2-Verifizierung

SW2# show ip mroute

IP Multicast Routing Table for VRF "default"

(*, 232.0.0.0/8), uptime: 00:04:39, pim ip

Incoming interface: Null, RPF nbr: 0.0.0.0

Outgoing interface list: (count: 0)

(*, 233.193.40.196/32), uptime: 00:04:11, pim ip

Incoming interface: loopback411, RPF nbr: 172.16.0.1  <-- Translation (ingress) Loopback interface

Outgoing interface list: (count: 1)

Ethernet1/23, uptime: 00:03:59, pim    <-- Egress interface for S2,G2

(172.16.0.1/32, 233.193.40.196/32), uptime: 00:00:15, ip mrib pim

Incoming interface: loopback411, RPF nbr: 172.16.0.1

Outgoing interface list: (count: 1)

Ethernet1/23, uptime: 00:00:15, pim

(*, 239.194.169.1/32), uptime: 00:04:34, static pim ip  <-- (The NAT router would pull the traffic by using a (*,G) join on loopback )

Incoming interface: loopback0, RPF nbr: 10.10.10.10

Outgoing interface list: (count: 1)

loopback411, uptime: 00:04:34, static    <-- Translation (egress) Loopback interface

(10.11.11.1/32, 239.194.169.1/32), uptime: 00:00:17, ip mrib pim

Incoming interface: Ethernet1/47, RPF nbr: 10.11.11.1, internal     <-- Ingress interface for S1,G1

Outgoing interface list: (count: 1)

loopback411, uptime: 00:00:17, mrib

SW2# show ip mroute sr   <-- (Only SR nat routes)

IP Multicast Routing Table for VRF "default"

(*, 239.194.169.1/32), uptime: 00:09:29, static pim ip

NAT Mode: Ingress

NAT Route Type: Pre

Incoming interface: loopback0, RPF nbr: 10.10.10.10

Translation list: (count: 1)

SR: (172.16.0.1, 233.193.40.196)

(10.11.11.1/32, 239.194.169.1/32), uptime: 00:05:12, ip mrib pim

NAT Mode: Ingress

NAT Route Type: Pre

Incoming interface: Ethernet1/47, RPF nbr: 10.11.11.1, internal

Translation list: (count: 1)

SR: (172.16.0.1, 233.193.40.196)

Switch 3-Verifizierung

SW3# show ip mroute

IP Multicast Routing Table for VRF "default"

(*, 232.0.0.0/8), uptime: 02:45:09, pim ip

Incoming interface: Null, RPF nbr: 0.0.0.0

Outgoing interface list: (count: 0)

(*, 233.193.40.196/32), uptime: 01:47:02, ip pim igmp

Incoming interface: Ethernet1/24, RPF nbr: 10.0.0.1

Outgoing interface list: (count: 1)

Ethernet1/24, uptime: 01:43:27, igmp, (RPF)

(172.16.0.1/32, 233.193.40.196/32), uptime: 00:02:59, ip mrib pim

Incoming interface: Ethernet1/24, RPF nbr: 10.0.0.1

Outgoing interface list: (count: 1)

Ethernet1/24, uptime: 00:02:59, mrib, (RPF)

Fehlerbehebung

Dieser Abschnitt enthält Informationen, die Sie zur Fehlerbehebung bei Ihrer Konfiguration verwenden können.

Wenn S2 und G2 nicht erstellt werden oder der Benutzer mit zufälligen Übersetzungsproblemen konfrontiert ist, können Sie die folgenden Punkte überprüfen:

1. Sobald der Datenverkehr empfangen wird (vorübersetzt), werden die post-übersetzten Einträge basierend auf pkt in mcastfwd erstellt.

2. Wenn Sie pkt nicht in mcastfwd bettet sehen, können Sie überprüfen, ob Sie den angeforderten Datenverkehr auf der Eingangsschnittstelle über ACL erhalten.

3 Wenn die Anzahl der Zähler in der ACL erhöht wird, überprüfen Sie, ob derselbe Datenverkehr die CPU über ethanalyzer erreicht.

4 Kann auch die Übersetzung im MRIB-Ereignisverlauf überprüfen:

SW2# show system  internal  mfwd ip mroute  --> Packets Punted in Mcast Forwarding.

MCASTFWD Multicast Routing Table for VRF "default"

(0.0.0.0/0, 232.0.0.0/8)

Software switched packets: 0, bytes: 0

RPF fail packets: 0, bytes: 0

(0.0.0.0/0, 233.193.40.196/32)

Software switched packets: 1, bytes: 84

RPF fail packets: 0, bytes: 0

(172.16.0.1/32, 233.193.40.196/32), data-alive

Software switched packets: 1, bytes: 84

RPF fail packets: 8, bytes: 672

(0.0.0.0/0, 239.194.169.1/32)

Software switched packets: 1, bytes: 84

RPF fail packets: 0, bytes: 0

(10.11.11.1/32, 239.194.169.1/32), data-alive

Software switched packets: 10, bytes: 840

RPF fail packets: 0, bytes: 0

SW2# show ip access-lists test

IP access list test

statistics per-entry

10 permit ip any 239.194.169.1/32 [match=105] <-- Intrested traffic hitting ingress interface

20 permit ip any any [match=11]

interface Ethernet1/47

no switchport

ip access-group test in  <-- ACL applied on ingress interface

ip address 10.11.11.2/24

ip ospf network point-to-point

ip router ospf 1 area 0.0.0.0

ip pim sparse-mode

no shutdown

SW2# ethanalyzer loca int inband display-filter "ip.addr == 239.194.169.1" limit-captured-frames 0  --> Confirm (S1,G1) seen on CPU

Capturing on inband

wireshark-cisco-mtc-dissector: ethertype=0xde09, devicetype=0x0

2022-09-18 04:21:37.840227 10.11.11.1 -> 239.194.169.1 ICMP Echo (ping) request

2022-09-18 04:21:37.841275 10.11.11.1 -> 239.194.169.1 ICMP Echo (ping) request

2022-09-18 04:21:37.860153 10.11.11.1 -> 239.194.169.1 ICMP Echo (ping) request

2022-09-18 04:21:37.861199 10.11.11.1 -> 239.194.169.1 ICMP Echo (ping) request

2022-09-18 04:21:37.880072 10.11.11.1 -> 239.194.169.1 ICMP Echo (ping) request

2022-09-18 04:21:37.881113 10.11.11.1 -> 239.194.169.1 ICMP Echo (ping) request

SW2# ethanalyzer local  interface  inband capture-filter  "host 172.16.0.1" limit-captured-frames 0 --> Confirm (S2,G2) seen on CPU

Capturing on inband

wireshark-cisco-mtc-dissector: ethertype=0xde09, devicetype=0x0

2022-09-18 03:12:51.423484 172.16.0.1 -> 233.193.40.196 ICMP Echo (ping) request

2022-09-18 03:12:51.423978 10.0.0.2 -> 172.16.0.1 ICMP Echo (ping) reply

2022-09-18 03:12:53.425754 172.16.0.1 -> 233.193.40.196 ICMP Echo (ping) request

2022-09-18 03:12:53.425761 10.0.0.2 -> 172.16.0.1 ICMP Echo (ping) reply

2022-09-18 03:12:55.426719 172.16.0.1 -> 233.193.40.196 ICMP Echo (ping) request

2022-09-18 03:12:55.426726 10.0.0.2 -> 172.16.0.1 ICMP Echo (ping) reply

2022-09-18 03:12:57.428669 172.16.0.1 -> 233.193.40.196 ICMP Echo (ping) request

2022-09-18 03:12:57.429175 10.0.0.2 -> 172.16.0.1 ICMP Echo (ping) reply

2022-09-18 03:12:59.429890 172.16.0.1 -> 233.193.40.196 ICMP Echo (ping) request

2022-09-18 03:12:59.430386 10.0.0.2 -> 172.16.0.1 ICMP Echo (ping) reply

10 packets captured

SW2# show ip pim event-history  mrib --> Event history to confirm that the translation is being done

2022 Sep 18 04:28:39.970688: E_DEBUG    pim [19433]:  Sending ack: xid: 0xeeee00d2

2022 Sep 18 04:28:39.970255: E_DEBUG    pim [19433]:  MRIB Join notify for (10.11.11.1/32, 239.194.169.1/32)

2022 Sep 18 04:28:39.968875: E_DEBUG    pim [19433]:  MRIB sr route type notif for (10.11.11.1/32, 239.194.169.1/32) : 1

2022 Sep 18 04:28:39.968859: E_DEBUG    pim [19433]:  pim_process_mrib_rpf_notify: MRIB RPF notify for (10.11.11.1/32, 239.194.169.1/32), old RPF info: 10.11.11.1 (Ethernet1/47), new RPF info: 10.11.11.1 (Ethernet1/47). LISP source RLOC address

: 0.0.0.0, route-type 1

2022 Sep 18 04:28:39.968307: E_DEBUG    pim [19433]:  Copied the flags from MRIB for route (10.11.11.1/32, 239.194.169.1/32), (before/after): att F/F, sta F/F, z-oifs T/F, ext F/F, fabric F/F, fabric_src: F/F mofrr F/F

2022 Sep 18 04:28:39.968301: E_DEBUG    pim [19433]:  MRIB Join notify for (10.11.11.1/32, 239.194.169.1/32)

2022 Sep 18 04:28:39.968294: E_DEBUG    pim [19433]: Received a notify message from MRIB xid: 0xeeee00cf for 1 mroutes

2022 Sep 18 04:28:35.904652: E_DEBUG    pim [19433]:  Sending ack: xid: 0xeeee00cc

2022 Sep 18 04:28:35.904625: E_DEBUG    pim [19433]:  pim_process_mrib_rpf_notify: MRIB RPF notify for (172.16.0.1/32, 233.193.40.196/32), old RPF info: 172.16.0.1 (loopback411), new RPF info: 172.16.0.1 (loopback411). LISP sourc

e RLOC address: 0.0.0.0, route-type 0

2022 Sep 18 04:28:35.904484: E_DEBUG    pim [19433]:  pim_process_mrib_rpf_notify: After copying the values for route (0.0.0.0/32, 233.193.40.196/32) we got RPF info: 172.16.0.1 (loopback411). LISP source RLOC address: 0.0.0.0, route-t

ype 0

2022 Sep 18 04:28:35.904476: E_DEBUG    pim [19433]:  pim_process_mrib_rpf_notify: MRIB RPF notify for (0.0.0.0/32, 233.193.40.196/32), old RPF info: 0.0.0.0 ((null)), new RPF info: 172.16.0.1 (loopback411). LISP source RLOC address: 0

.0.0.0, route-type 0

2022 Sep 18 04:28:35.904400: E_DEBUG    pim [19433]:  MRIB Join notify for (172.16.0.1/32, 233.193.40.196/32)

2022 Sep 18 04:28:35.904343: E_DEBUG    pim [19433]:  MRIB Join notify for (0.0.0.0/32, 233.193.40.196/32)

2022 Sep 18 04:27:49.862827: E_DEBUG    pim [19433]:  pim_process_mrib_rpf_notify: After copying the values for route (*, 239.194.169.1/32) we got RPF info: 10.10.10.10 (loopback0). LISP source RLOC address: 0.0.0.0, route-type 0

2022 Sep 18 04:27:49.862812: E_DEBUG    pim [19433]:  pim_process_mrib_rpf_notify: MRIB RPF notify for (*, 239.194.169.1/32), old RPF info: 0.0.0.0 ((null)), new RPF info: 10.10.10.10 (loopback0). LISP source RLOC address: 0.0.0.0, route-

type 0

2022 Sep 18 04:27:49.862798: E_DEBUG    pim [19433]:  MRIB Join notify for (*, 239.194.169.1/32)

2022 Sep 18 04:27:49.862795: E_DEBUG    pim [19433]:  MRIB Join notify for (172.16.0.1/32, 233.193.40.196/32)

2022 Sep 18 04:27:49.862789: E_DEBUG    pim [19433]:  MRIB Join notify for (0.0.0.0/32, 233.193.40.196/32)

2022 Sep 18 04:27:49.861870: E_DEBUG    pim [19433]:  Creating PIM route for (*, 239.194.169.1/32)

2022 Sep 18 04:27:49.861868: E_DEBUG    pim [19433]:  MRIB Join notify for (*, 239.194.169.1/32)

Zusammenfassung

- Im regulären Modus trifft der Datenverkehr im ersten Durchgang auf den ursprünglichen S,G-Eintrag und wird aufgrund der Outgoing Interface List (OIFL), die nur über den Loopback-Port verfügt, wieder in Umlauf gebracht. Im zweiten Durchgang wird die Ziel-MAC für das Umschreiben abgeleitet.

- Beim dritten Durchlauf erfolgt die Multicast-Routensuche auf den übersetzten S, G, und das Paket wird an die entsprechenden übersetzten Gruppen-OIFL-Ports weitergeleitet.

- Hinzugefügt statische Join auf Loopback, um zu erzwingen, dass der Datenverkehr auf der NAT-Box empfangen wird.

- Wenn das erste Paket für (s1, g1) empfangen wird, programmiert der Switch (s1,g1) mit dem neuen SR-Flag (s1, g —> s2,g2).

- Der Switch verwendet diese Metadaten, um das Paket erneut zu kreisen und auf g2 zu durchsuchen. Sobald ein (S2, G2) Paket auf die Unterstützung durchgestellt wurde, würde die FHR-Funktion (First-Hop-Router) auf der NAT-Box für s2,g2 ausgelöst.

- Sobald der Datenverkehr empfangen wird, d.h. vorübersetzte und nachübersetzte Einträge werden basierend auf pkt in mcastfwd erstellt.

- Wenn das Paket nicht in mcastfwd für die jeweilige Gruppe markiert wird, können Sie den oben genannten Fehlerbehebungsprozess verwenden, um zu bestätigen, ob interessierter Datenverkehr den Switch erreicht.