Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit les scénarios dans lesquels l'évitement de boucle vPC peut avoir un impact sur le transfert du trafic dans les conceptions de réseau de couche 3 basées sur Nexus.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Dans les environnements de data center actuels, la technologie Cisco Nexus Virtual Port Channel (vPC) est essentielle pour permettre la redondance et l'équilibrage de charge. En permettant aux connexions à deux commutateurs Nexus distincts de fonctionner comme un seul canal de port logique, vPC simplifie l'architecture réseau et améliore la fiabilité des périphériques en aval. Toutefois, certains détails de configuration peuvent présenter des difficultés opérationnelles.
Ce document explore les scénarios dans lesquels l'évitement de boucle vPC devient important et examine son impact sur le transfert de trafic. Une compréhension claire de ce mécanisme est essentielle pour les ingénieurs réseau qui cherchent à concevoir et à maintenir une connectivité de couche 3 robuste et efficace dans une infrastructure basée sur Nexus, ce qui permet d'éviter les interruptions de trafic et de maintenir des performances réseau optimales.
Dans un environnement Cisco Nexus utilisant vPC, les opérateurs réseau peuvent observer un comportement de transfert de trafic inattendu provoqué par la règle d'évitement de boucle vPC. Lorsque le trafic circule d'un homologue vPC à un autre via la liaison homologue vPC, il ne peut pas sortir via un canal de port vPC actif sur les deux commutateurs. Par conséquent, les périphériques dépendant de ce chemin pour la connectivité peuvent subir des paquets abandonnés ou une perte de connectivité, même si toutes les liaisons physiques semblent actives.
La compréhension et la prise en compte de la règle d'évitement des boucles vPC sont essentielles pour la conception et le dépannage des topologies de réseau résilientes, car la non-prise en compte de ce comportement peut entraîner des interruptions de service inattendues et rendre le diagnostic des problèmes de réseau plus difficile.
Dans cette topologie, le domaine vPC est créé par N9K-C9364C-1 et N9K-C9364C-2. Les deux commutateurs sont configurés avec les VLAN 100 et 200 en tant que VLAN vPC, et des interfaces SVI sont configurées pour chaque VLAN. Le domaine vPC est responsable du routage inter-VLAN entre ces VLAN. Sauf indication contraire, l'IP virtuelle HSRP (VIP) partagée entre les commutateurs homologues vPC est utilisée comme tronçon suivant pour la route par défaut par les autres commutateurs de la topologie.
interface Vlan100
no shutdown
no ip redirects
adresse ip 192.168.100.1/24
no ipv6 redirects
hsrp 100
ip 192.168.100.254
interface Vlan200
no shutdown
no ip redirects
adresse ip 192.168.200.1/24
no ipv6 redirects
hsrp 200
ip 192.168.200.254
interface Vlan100
no shutdown
no ip redirects
adresse ip 192.168.100.2/24
no ipv6 redirects
hsrp 100
ip 192.168.100.254
interface Vlan200
no ip redirects
adresse ip 192.168.200.2/24
no ipv6 redirects
hsrp 200
ip 192.168.200.254
Dans un scénario de travail, N9K-C9504-4 (VLAN 200) peut envoyer une requête ping à N9K-C9364C-3 (VLAN 100). Traceroute indique que le chemin de connexion passe par 192.168.200.2, qui est attribué à N9K-C9364C-2.
N9K-C9504-4# ping 192.168.100.10
PING 192.168.100.10 (192.168.100.10): 56 data bytes
64 bytes from 192.168.100.10: icmp_seq=0 ttl=253 time=8.48 ms
64 bytes from 192.168.100.10: icmp_seq=1 ttl=253 time=0.618 ms
64 bytes from 192.168.100.10: icmp_seq=2 ttl=253 time=0.582 ms
64 bytes from 192.168.100.10: icmp_seq=3 ttl=253 time=0.567 ms
64 bytes from 192.168.100.10: icmp_seq=4 ttl=253 time=0.55 ms
--- 192.168.100.10 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 0.55/2.159/8.48 ms
N9K-C9504-4#
N9K-C9504-4# traceroute 192.168.100.10
traceroute to 192.168.100.10 (192.168.100.10), 30 hops max, 40 byte packets
1 192.168.200.2 (192.168.200.2) 1.129 ms 0.602 ms 0.724 ms <<<---- SVI 200 on N9K-C9364C-2
2 192.168.100.10 (192.168.100.10) 1.001 ms 0.657 ms 0.588 ms
À ce stade, le flux de trafic fonctionne de la manière suivante :
Imaginez un scénario dans lequel l'interface SVI 200 est arrêtée sur N9K-C9364C-2, mais reste active sur N9K-C9364C-1 :
N9K-C9364C-1# show ip interface brief
IP Interface Status for VRF "default"(1)
Interface IP Address Interface Status
Vlan100 192.168.100.1 protocol-up/link-up/admin-up
Vlan200 192.168.200.1 protocol-up/link-up/admin-up <<<---- SVI 200 is up
N9K-C9364C-1#
N9K-C9364C-2# show ip interface brief
IP Interface Status for VRF "default"(1)
Interface IP Address Interface Status
Vlan100 192.168.100.2 protocol-up/link-up/admin-up
Vlan200 192.168.200.2 protocol-down/link-down/admin-down <<<---- SVI 200 is down
N9K-C9364C-2#
En raison de la différence d'état opérationnel des interfaces SVI entre les homologues vPC, une incohérence de type 2 est détectée dans le domaine vPC :
N9K-C9364C-1# show vPC
Legend:
(*) - local vPC is down, forwarding via vPC peer-link
vPC domain id : 100
Peer status : peer adjacency formed ok
vPC keep-alive status : peer is alive
Configuration consistency status : success
Per-vlan consistency status : success
Type-2 consistency status : failed
Type-2 inconsistency reason : SVI type-2 configuration incompatible
vPC role : primary
Number of vPCs configured : 2
Peer Gateway : Enabled
Dual-active excluded VLANs : -
Graceful Consistency Check : Enabled
Auto-recovery status : Disabled
Delay-restore status : Timer is off.(timeout = 30s)
Delay-restore SVI status : Timer is off.(timeout = 10s)
Delay-restore Orphan-port status : Timer is off.(timeout = 0s)
Operational Layer3 Peer-router : Disabled
Virtual-peerlink mode : Disabled
vPC Peer-link status
---------------------------------------------------------------------
id Port Status Active vlans
-- ---- ------ -------------------------------------------------
1 Po100 up 1,100,200
vPC status
----------------------------------------------------------------------------
Id Port Status Consistency Reason Active vlans
-- ------------ ------ ----------- ------ ---------------
10 Po10 up success success 1,100,200
20 Po20 up success success 1,100,200
N9K-C9364C-1#
N9K-C9364C-2# show vPC
Legend:
(*) - local vPC is down, forwarding via vPC peer-link
vPC domain id : 100
Peer status : peer adjacency formed ok
vPC keep-alive status : peer is alive
Configuration consistency status : success
Per-vlan consistency status : success
Type-2 consistency status : failed
Type-2 inconsistency reason : SVI type-2 configuration incompatible
vPC role : secondary
Number of vPCs configured : 2
Peer Gateway : Enabled
Dual-active excluded VLANs : -
Graceful Consistency Check : Enabled
Auto-recovery status : Disabled
Delay-restore status : Timer is off.(timeout = 30s)
Delay-restore SVI status : Timer is off.(timeout = 10s)
Operational Layer3 Peer-router : Disabled
Virtual-peerlink mode : Disabled
vPC Peer-link status
---------------------------------------------------------------------
id Port Status Active vlans
-- ---- ------ -------------------------------------------------
1 Po100 up 1,100,200
vPC status
----------------------------------------------------------------------------
Id Port Status Consistency Reason Active vlans
-- ------------ ------ ----------- ------ ---------------
10 Po10 up success success 1,100,200
20 Po20 up success success 1,100,200
N9K-C9364C-2#
À ce stade, le trafic de 192.168.200.20 à 192.168.100.10 n'aboutit plus :
N9K-C9504-4# ping 192.168.100.10
PING 192.168.100.10 (192.168.100.10): 56 data bytes
Request 0 timed out
Request 1 timed out
Request 2 timed out
Request 3 timed out
Request 4 timed out
--- 192.168.100.10 ping statistics ---
5 packets transmitted, 0 packets received, 100.00% packet loss
N9K-C9504-4#
Une requête ping colorée (une requête ping avec une taille MTU spécifiée) est utilisée pour tracer le chemin emprunté par ce trafic :
N9K-C9504-4# ping 192.168.100.10 count 100 timeout 0 packet-size 1030
PING 192.168.100.10 (192.168.100.10): 1030 data bytes
Request 0 timed out
Request 1 timed out
---- snip -----
Request 98 timed out
Request 99 timed out
--- 192.168.100.10 ping statistics ---
100 packets transmitted, 0 packets received, 100.00% packet loss
N9K-C9504-4# ^C
N9K-C9504-4#
Selon les compteurs d'interface sur N9K-C9364C-2, ce trafic est reçu sur le port-channel 20 et transmis au port-channel 100 (la liaison entre homologues vPC) :
N9K-C9364C-2# show interface port-channel 20 counters detailed all | i "1024 to|po" ; sh int port-channel 10 counters detailed all | i "1024 to|po" ; sh int port-channel 100 counters detailed all | i "1024 to|po"
port-channel20
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress vPC po20
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 100 <<<----- Egress po100 (vPC peer-link)
N9K-C9364C-2#
Ce comportement se produit parce que SVI 200 est arrêté sur N9K-C9364C-2, empêchant le routage local du trafic pour VLAN 200. Dans ce scénario, le trafic est ponté à travers la liaison homologue vPC vers N9K-C9364C-1, de sorte que le périphérique effectue le routage inter-VLAN.
En examinant les compteurs d'interface sur N9K-C9364C-1, il est confirmé que les paquets atteignent ce périphérique via la liaison entre homologues vPC. Cependant, il n'y a aucun paquet sortant observé sur le port-channel 10 vPC, qui se connecte à 192.168.100.10.
N9K-C9364C-1# show interface port-channel 20 counters detailed all | i "1024 to|po" ; sh int port-channel 10 counters detailed all | i "1024 to|po" ; sh int port-channel 100 counters detailed all | i "1024 to|po"
port-channel20
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0 <<<----- Expected egress vPC po10. No packets!!!
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress po100 (vPC peer-link)
60. Tx Packets from 1024 to 1518 bytes: = 0
N9K-C9364C-1#
Même si le trafic arrive à N9K-C9364C-1 via la liaison homologue vPC, il n'est pas transféré au port-channel 10 vPC. En effet, le bit egress_vsl_drop est défini sur 1 pour ce vPC, ce qui se produit lorsque le même port-channel vPC est opérationnel sur le commutateur homologue (dans ce cas, N9K-C9364C-2).
N9K-C9364C-1# show system internal eltm info interface Po10 | i i vsl
egress_vsl_drop = 1
N9K-C9364C-1#
N9K-C9364C-1# show system internal vPCm info interface Po10 | i "Peer stat|Inform|vPC sta"
IF Elem Information:
MCECM DB Information:
vPC state: Up Old Compat Status: Pass
vPC Peer Information:
Peer state: Up <<<------------- vPC 10 up on peer
PSS Information:
vPC state: Up Old Compat Status: Pass
vPC Peer Information:
Peer state: Up <<<------------- vPC 10 up on peer
Shared Database Information:
Application database Information:
Lock Information:
N9K-C9364C-1#
Topologie illustrant le flux de trafic et le point auquel il est abandonné :
N9K-C9364C-1 abandonne le trafic en raison de la règle d'évitement de boucle vPC : Le trafic reçu sur la liaison entre homologues vPC ne peut pas être transféré vers un canal de port vPC actif sur les deux commutateurs."Pour éviter ce problème, assurez-vous que l'état administratif des interfaces SVI est cohérent sur les deux commutateurs et que leurs configurations sont symétriques.
En considérant le même scénario où SVI 200 est arrêté sur N9K-C9364C-2, mais reste actif sur N9K-C9364C-1. Une requête ping de N9K-C9504-6 (VLAN 200) à N9K-C9364C-3 (VLAN 100) échoue.
N9K-C9504-6# ping 192.168.100.10 packet-size 1030 count 100 timeout 0
PING 192.168.100.10 (192.168.100.10): 1030 data bytes
Request 0 timed out
Request 1 timed out
Request 2 timed out
---- snip -----
Request 97 timed out
Request 98 timed out
Request 99 timed out
--- 192.168.100.10 ping statistics ---
100 packets transmitted, 0 packets received, 100.00% packet loss
N9K-C9504-6#
Une requête ping colorée (une requête ping avec une taille MTU spécifiée) est utilisée pour tracer le chemin emprunté par ce trafic :
N9K-C9364C-2# show interface eth1/59 counters detailed all | i "1024 to|Eth" ; sh int port-channel 10 counters detailed all | i "1024 to|po" ; sh int port-channel 100 counters detailed all | i "1024 to|po"
Ethernet1/59
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress port to N9K-C9504-6
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 100 <<<----- Egress po100 (vPC peer-link)
N9K-C9364C-2#
N9K-C9364C-1# show interface port-channel 10 counters detailed all | i "1024 to|po" ; sh int port-channel 100 counters detailed all | i "1024 to|po"
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0 <<<----- Expected egress vPC po10. No packets!!!
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress po100 (vPC peer-link)
60. Tx Packets from 1024 to 1518 bytes: = 0
N9K-C9364C-1#
Même si le trafic arrive à N9K-C9364C-1 via la liaison homologue vPC, il n'est pas transféré au port-channel 10 vPC. En effet, le bit egress_vsl_drop est défini sur 1 pour ce vPC, ce qui se produit lorsque le même port-channel vPC est opérationnel sur le commutateur homologue (dans ce cas, N9K-C9364C-2).
N9K-C9364C-1# show system internal eltm info interface Po10 | i i vsl
egress_vsl_drop = 1
N9K-C9364C-1#
N9K-C9364C-1# show system internal vpcm info interface Po10 | i "Peer stat|Inform|vPC sta"
IF Elem Information:
MCECM DB Information:
vPC state: Up Old Compat Status: Pass
vPC Peer Information:
Peer state: Up <<<------------- vPC 10 up on peer
PSS Information:
vPC state: Up Old Compat Status: Pass
vPC Peer Information:
Peer state: Up <<<------------- vPC 10 up on peer
Shared Database Information:
Application database Information:
Lock Information:
N9K-C9364C-1#
Topologie illustrant le flux de trafic et le point auquel il est abandonné :
Même si le trafic provient d'un hôte orphelin connecté à N9K-C9364C-2, il est abandonné par N9K-C9364C-1 en raison de la règle d'évitement de boucle vPC : Le trafic reçu sur la liaison entre homologues vPC ne peut pas être transféré vers un canal de port vPC actif sur les deux commutateurs. Le fait que le port d'entrée sur le commutateur homologue soit un vPC ou un port orphelin n'a pas d'importance ; Ce qui importe, c'est que le trafic entre via la liaison entre homologues vPC et soit destiné à un vPC actif sur les deux commutateurs. Pour éviter ce problème, assurez-vous que le statut administratif des interfaces SVI est cohérent sur les deux commutateurs et que leurs configurations sont symétriques.
Dans ce scénario, toutes les interfaces SVI et tous les canaux de port vPC du domaine vPC sont activés. Cependant, N9K-C9504-5, qui est connecté à N9K-C9364C-1 via une interface de couche 3, ne peut pas envoyer de requête ping à Loopback 0 sur N9K-C9364C-3.
Une commande traceroute à partir de N9K-C9504-5 indique que le paquet atteint d’abord son tronçon suivant immédiat à l’adresse 192.168.1.2, puis passe à l’adresse 192.168.100.2, qui est associée à N9K-C9364C-2.
N9K-C9504-5# traceroute 172.16.100.10
traceroute to 172.16.100.10 (172.16.100.10), 30 hops max, 40 byte packets
1 192.168.1.2 (192.168.1.2) 1.338 ms 0.912 ms 0.707 ms
2 192.168.100.2 (192.168.100.2) 0.948 ms 0.751 ms 0.731 ms
3 * * *
4 * * *
N9K-C9504-5#
La vérification du saut suivant à partir de N9K-C9364C-1 (le saut initial pour ce trafic) montre que la destination est accessible via 192.168.100.2, ce qui correspond à SVI 100 sur N9K-C9364C-2.
N9K-C9364C-1# show ip route 172.16.100.10
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
172.16.100.0/24, ubest/mbest: 1/0
*via 192.168.100.2, [1/0], 00:05:05, static
N9K-C9364C-1#
Une requête ping colorée (une requête ping avec une taille MTU spécifiée) est utilisée pour tracer le chemin emprunté par ce trafic :
N9K-C9364C-1# show interface e1/58 counters detailed all | i "1024 to|Eth" ; sh int port-channel 100 counters detailed all | i "1024 to|po" ; sh int port-channel 10 counters detailed all | i "1024 to|po"
Ethernet1/58
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress Eth1/58
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 100 <<<----- Egress po100 (vPC peer-link)
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0
N9K-C9364C-1#
N9K-C9364C-2# sh int port-channel 100 counters detailed all | i "1024 to|po" ; sh int port-channel 10 counters detailed all | i "1024 to|po"
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress po100 (vPC peer-link)
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0 <<<----- Egress vPC po10, no packets!!!
N9K-C9364C-2#
Même si le trafic arrive à N9K-C9364C-2 via la liaison homologue vPC, il n'est pas transféré au port-channel 10 vPC. En effet, le bit egress_vsl_drop est défini sur 1 pour ce vPC, ce qui se produit lorsque le même port-channel vPC est opérationnel sur le commutateur homologue (dans ce cas, N9K-C9364C-1).
N9K-C9364C-2# show system internal eltm info interface Po10 | i i vsl
egress_vsl_drop = 1
N9K-C9364C-2#
N9K-C9364C-2# show system internal vPCm info interface Po10 | i "Peer stat|Inform|vPC sta"
IF Elem Information:
MCECM DB Information:
vPC state: Up Old Compat Status: Pass
vPC Peer Information:
Peer state: Up <<<------------- vPC 10 up on peer
PSS Information:
vPC state: Up Old Compat Status: Pass
vPC Peer Information:
Peer state: Up <<<------------- vPC 10 up on peer
Shared Database Information:
Application database Information:
Lock Information:
N9K-C9364C-2#
Topologie illustrant le flux de trafic et le point auquel il est abandonné :
Le problème est observé, car N9K-C9364C-1 utilise N9K-C9364C-2 comme tronçon suivant, envoyant le trafic sur la liaison entre homologues vPC avant qu'il ne tente de sortir par vPC 10. Le trafic est abandonné en raison de la règle d'évitement de boucle vPC : Le trafic reçu sur la liaison entre homologues vPC ne peut pas être transféré à partir d'un canal de port vPC actif sur les deux commutateurs. Pour éviter ce problème, assurez-vous que les routes (dynamiques ou statiques) avec un saut suivant via un canal de port vPC sont configurées sur les deux commutateurs homologues vPC, de sorte que le trafic n'a pas besoin de traverser la liaison entre homologues vPC et de sortir sur un vPC.
Dans ce scénario, toutes les interfaces SVI et tous les canaux de port vPC sont actifs sur le domaine vPC ; Cependant, la fonctionnalité de passerelle homologue vPC est désactivée. À ce stade, N9K-C9504-4 (VLAN 200) ne peut pas envoyer de requête ping à N9K-C9364C-3 (VLAN 100).
N9K-C9504-4# ping 192.168.100.10
PING 192.168.100.10 (192.168.100.10): 56 data bytes
Request 0 timed out
Request 1 timed out
Request 2 timed out
Request 3 timed out
Request 4 timed out
--- 192.168.100.10 ping statistics ---
5 packets transmitted, 0 packets received, 100.00% packet loss
N9K-C9504-4#
La vérification du tronçon suivant à partir de N9K-C9504-4 montre que la destination est accessible via 192.168.200.2, ce qui correspond à SVI 200 sur N9K-C9364C-2 et connecté via le canal de port 20 vPC.
N9K-C9504-4# show ip route 192.168.100.10
IP Route Table for VRF "default"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
0.0.0.0/0, ubest/mbest: 1/0
*via 192.168.200.2, [1/0], 01:22:46, static
N9K-C9504-4#
N9K-C9504-4# show ip arp detail | i 192.168.200.2
192.168.200.2 00:08:05 a478.06de.7edb Vlan200 port-channel20 default
Une requête ping colorée (une requête ping avec une taille de MTU spécifiée) est utilisée pour tracer le chemin emprunté par ce trafic. Ici, les compteurs d'interface révèlent que N9K-C9364C-1 reçoit le trafic de 192.168.200.20 à 192.168.100.10 sur le port-channel 20 et l'envoie au peer-link vPC (port-channel100)
N9K-C9364C-1# show interface port-channel 20 counters detailed all | i "1024 to|po" ; sh int port-channel 10 counters detailed all | i "1024 to|po" ; sh int port-channel 100 counters detailed all | i "1024 to|po"
port-channel20
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress vPC 20
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 100 <<<----- Egress po100 (vPC peer-link)
N9K-C9364C-1#
N9K-C9364C-2 reçoit le trafic sur la liaison entre homologues vPC (port-channel100), mais ne le transfère pas vers le port-channel 10 vPC.
N9K-C9364C-2# show int port-channel 20 counters detailed all | i "1024 to|po" ; sh int port-channel 10 counters detailed all | i "1024 to|po" ; sh int port-channel 100 counters detailed all | i "1024 to|po"
port-channel20
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0
port-channel10
52. Rx Packets from 1024 to 1518 bytes: = 0
60. Tx Packets from 1024 to 1518 bytes: = 0 <<<----- Egress vPC po10, no packets!!!
port-channel100
52. Rx Packets from 1024 to 1518 bytes: = 100 <<<----- Ingress po100 (vPC peer-link)
60. Tx Packets from 1024 to 1518 bytes: = 0
N9K-C9364C-2#
Même si le trafic arrive à N9K-C9364C-2 via la liaison homologue vPC, il n'est pas transféré au port-channel 10 vPC. En effet, le bit egress_vsl_drop est défini sur 1 pour ce vPC, ce qui se produit lorsque le même port-channel vPC est opérationnel sur le commutateur homologue (dans ce cas, N9K-C9364C-1).
Comme la passerelle homologue est désactivée, N9K-C9364C-1 peut uniquement acheminer les paquets adressés à sa propre adresse MAC locale. Par conséquent, les paquets destinés à a478.06de.7edb (MAC de N9K-C9364C-2) sont transférés par N9K-C9364C-1 via la liaison homologue vPC.
N9K-C9364C-1# show mac address-table add a478.06de.7edb
Legend:
* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC
age - seconds since last seen,+ - primary entry using vPC Peer-Link,
(T) - True, (F) - False, C - ControlPlane MAC, ~ - vsan
VLAN MAC Address Type age Secure NTFY Ports
---------+-----------------+--------+---------+------+----+------------------
* 100 a478.06de.7edb static - F F vPC Peer-Link(R)
* 200 a478.06de.7edb static - F F vPC Peer-Link(R)
N9K-C9364C-1#
Topologie illustrant le flux de trafic et le point auquel il est abandonné :
Si la passerelle homologue est activée, le trafic routé destiné à l'adresse MAC de l'homologue vPC est traité localement en programmant l'adresse MAC homologue en tant que passerelle. Cela empêche la liaison entre homologues vPC d'être utilisée dans le chemin de trafic et évite les pertes causées par la règle d'évitement de boucle vPC. Pour éviter de tels problèmes, assurez-vous que la fonctionnalité de passerelle homologue vPC est activée sur le domaine vPC.
Les configurations d'interface virtuelle commutée asymétrique (SVI) entre les commutateurs homologues vPC peuvent entraîner des problèmes critiques de transfert du trafic, notamment le blackholing. Une pratique courante mais non prise en charge qui contribue à cette condition est de tester le basculement entre homologues vPC en arrêtant les interfaces SVI d'un côté. Cette méthode crée un état SVI asymétrique que l'architecture vPC Nexus ne prend pas en charge, ce qui entraîne des défaillances de transfert et de blocage du trafic. Assurez-vous que la configuration SVI est toujours cohérente sur tous les VLAN vPC pour lesquels le routage est nécessaire.
La fonctionnalité de passerelle homologue est une amélioration essentielle dans les déploiements Cisco Nexus vPC. Lorsqu'elle est activée sur le domaine vPC, elle permet à chaque commutateur homologue vPC d'accepter et de traiter les paquets destinés à l'adresse MAC virtuelle de l'homologue vPC. Cela signifie que l'un des homologues vPC peut répondre au trafic lié à la passerelle, quel que soit le commutateur qui a reçu le paquet à l'origine. Si la passerelle d'homologue n'est pas activée, certains types de trafic, tels que les paquets envoyés à l'adresse MAC de la passerelle par défaut, peuvent être abandonnés s'ils arrivent sur un homologue et doivent sinon traverser la liaison d'homologue et quitter un port membre vPC. Assurez-vous que la passerelle d'homologue vPC est configurée sur le domaine vPC.
Comprendre les améliorations du canal de port virtuel (vPC)
Meilleures pratiques pour les canaux de port virtuel (vPC) sur Nexus
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
14-Oct-2025
|
Première publication |