Sous-couche IPv6 BGP non numérotée dans un datacenter EVPN-VXLAN
Ce guide montre comment déployer et vérifier des appairages BGP non numérotés (également appelés découverte automatique BGP ou appairage automatique BGP). Cette fonctionnalité permet à BGP de découvrir automatiquement et de créer des sessions de voisinage pair à l’aide des adresses IPv6 locales des voisins directement connectés.
Aperçu
Aujourd’hui, de nombreuses entreprises et centres de données à très grande échelle utilisent BGP comme protocole de routage sous-jacent. Contrairement aux IGP traditionnelles telles qu’OSPF et IS-IS, BGP exige généralement que vous configuriez explicitement l’appairage, les numéros de systèmes autonomes (AS) et les stratégies de routage pour contrôler les échanges de routes.
De nombreux opérateurs sont encore relativement inexpérimentés avec IPv6. L’appairage non numéroté BGP, qui détecte dynamiquement les voisins IPv6, réduit la charge de configuration manuelle d’un underlay IPv6 dans une fabric de centre de données (DC) EVPN-VXLAN. Junos OS s’appuie sur la fonctionnalité IPv6 de base en prenant en charge la configuration de groupes BGP. La configuration de groupe BGP prend en charge les paramètres d’appairage dynamiques (tels que les numéros d’AS distants autorisés) utilisés pour prendre en charge une fabric IPv6 non numérotée.
Vous pouvez configurer une fabric DC EVPN-VXLAN manuellement ou à l’aide de la fonctionnalité d’appairage sans numérotation BGP. Ce cas d’usage décrit la complexité de la configuration manuelle de la fabric et explique pourquoi l’utilisation de la fonctionnalité d’appairage sans numérotation BGP offre une solution beaucoup plus simple.
Prenons l’exemple d’un simple datacenter à deux niveaux. Cette structure de taille modeste se compose de quatre équipements spine et de 32 équipements leaf. Chaque équipement Spine possède 32 liaisons qui se connectent aux équipements Leaf et chaque Leaf possède deux liaisons de fabric, une pour chaque équipement Spine.
Dans cette configuration manuelle, vous devez d’abord attribuer les adresses IP du réseau. Pour cette structure, vous devrez configurer 4 adresses IP IPv6 * 32 = 128. Chaque réseau nécessite l’attribution de deux adresses d’hôte.
Ensuite, vous configurez les homologues BGP et leurs numéros AS associés. Pour chaque extrémité de chaque liaison de fabric, vous avez besoin d’une session d’appairage BGP. Dans notre exemple de structure, ce calcul équivaut à un total de 4*32*2=256 définitions d’homologues pair BGP, chacune nécessitant une adresse IP d’appairage et un numéro d’AS distant uniques.
La définition manuelle de 256 appairages BGP peut s’avérer fastidieuse et sujette aux erreurs. Dans une structure complexe, une simple erreur de configuration peut être difficile à isoler. Supposons que la fabric prenne en charge 128 équipements leaf. Vous devez maintenant configurer 4*128=512 réseaux IP IPv6. Les calculs montrent clairement que la complexité du provisionnement manuel d’une grande fabric devient rapidement un fardeau. En outre, pour les structures IPv4, un facteur souvent négligé est le grand nombre d’adresses IPv4 consommées par l’underlay. Dans de nombreux réseaux, l’espace d’adressage IPv4 est limité.
En revanche, l’appairage BGP non numéroté ne nécessite aucune affectation de réseau IP routable sur les liaisons underlay. Tous les appairages BGP dans l’underlay utilisent uniquement des adresses IP locales de liaison. L’utilisation d’adresses IP locales de liaison implique moins de configuration, moins de complexité, des tables de routage plus petites et la préservation des adresses IP.
Configurer la fabric EVPN BGP non numérotée
Lors de la configuration de l’appairage BGP non numéroté, vous n’avez besoin que d’un nombre minimal d’instructions de configuration. Ces instructions de configuration permettent d’amorcer rapidement un underlay basé sur IPv6. Cette sous-couche prend en charge la superposition EVPN-VXLAN. Bien que l’underlay utilise l’IPv6 natif, il prend également en charge les routes IPv4 avec des next-hops (RFC5549) IPv6. En d’autres termes, la sous-couche prend en charge les charges de travail IPv4 et IPv6 ainsi que leurs réseaux virtuels associés dans la superposition EVPN-VXLAN. Il n’entre pas dans le cadre de ce document une discussion complète sur l’auto-configuration IPv6 sans état.
La liste suivante présente les principales fonctionnalités de l’appairage BGP non numéroté :
- Configure automatiquement les adresses IPv6 lien-local sans état sur toutes les interfaces compatibles IPv6.
- Prend en charge une liste de numéros AS autorisés pour simplifier l’appairage avec des périphériques de fabric distants.
- Utilise des annonces de routeur (RA) IPv6 qui fournissent une découverte dynamique des voisins directement connectés.
- Utilise la découverte de voisinage IPv6 pour résoudre l’adresse IP locale du lien du voisin avec l’adresse MAC correspondante afin de faciliter les communications au niveau de la liaison.
- L’extrémité locale utilise les adresses peer, link-local et MAC découvertes pour envoyer un message BGP open aux voisins directement connectés. Ce message ouvert contient le numéro AS de l’homologue local. L’homologue distant compare cela à sa liste de numéros AS autorisés pour décider si la session est autorisée. De même, l’homologue local correspond au numéro AS de l’homologue distant, tel que renvoyé dans le message d’ouverture de l’homologue distant.
- Vous fournit une stratégie BGP simple qui annonce tous les réseaux directement connectés (au minimum, l’adresse de bouclage de chaque périphérique de fabric doit être annoncée).
- Utilise la stratégie EBGP par défaut pour annoncer à nouveau les routes apprises à partir d’autres périphériques de structure.
- Utilise la longueur du chemin BGP AS pour éviter les boucles et optimiser la sélection de route pour l’équilibrage de charge ECMP.
- Simplifie l’ajout d’une superposition EVPN-VXLAN, car la couche sous-jacente offre une accessibilité en bouclage.
L’appairage BGP non numéroté prend uniquement en charge EBGP. Les protocoles EBGP et IBGP à sauts multiples ne sont pas pris en charge.
Topologie
Le schéma suivant montre une topologie simple à deux cœurs de réseau et à deux branches.
-
L’underlay de la fabric est purement IPv6, y compris les bouclages de l’équipement.
-
Les serveurs connectés sont basés sur IPv4, ce qui démontre la prise en charge d’IPv4 sur IPv6 (voir RFC 5549). Les charges de travail IPv6 sont également prises en charge dans l’overlay. Supposons qu’il s’agisse de serveurs bare metal (BMS) et qu’ils soient préconfigurés avec l’adresse IP affichée. L’appartenance VLAN permet de mapper ces charges de travail dans des réseaux virtuels superposés isolés par l’encapsulation VXLAN. Dans cet exemple, les interfaces d’accès ne sont pas balisées.
-
Vous vous attendez à avoir une connectivité routée entre les charges de travail du serveur lorsque vous ajoutez une superposition. La superposition peut être CRB ou ERB. Le sous-calque non numéroté BGP prend en charge l’un ou l’autre type de superposition.
Configuration étape par étape
Étape par étape : Feuille 1
Activez la
inet6famille sur toutes les interfaces de la structure. Ces interfaces de structure relient le Leaf 1 aux équipements de cœur de réseau. Cetteinet6gamme prend en charge l’autoconfiguration IPv6 sans état et la découverte de voisins. Pour prendre en charge les charges de travail IPv4, vous devez également ajouter lainetfamille.set interfaces xe-0/0/0 unit 0 family inet6 set interfaces xe-0/0/0 unit 0 family inet set interfaces xe-0/0/1 unit 0 family inet6 set interfaces xe-0/0/1 unit 0 family inet
Créez l’interface de bouclage lo0 et configurez l’adresse IPv6. L’adresse de bouclage est utilisée pour prendre en charge l’appairage BGP lorsque vous ajoutez la superposition EVPN-VXLAN.
set interfaces lo0 unit 0 family inet6 address 2001:db8:100::3/128
Configurez une stratégie qui spécifie la liste des numéros BGP AS que vous souhaitez autoriser pour l’appairage BGP dynamique.
set policy-options as-list a-list members [65000-65100]
Configurez une stratégie d’équilibrage de charge par paquet. Une stratégie d’équilibrage de charge permet d’installer plusieurs sauts suivants à coût égal dans la table de transfert, ce qui permet un basculement rapide vers d’autres sauts de structure à coût égal en cas de défaillance d’une liaison.
set policy-options policy-statement load-balancing-policy then load-balance per-packet
Appliquez la stratégie d’équilibrage de charge par paquet à la table de transfert.
set routing-options forwarding-table export load-balancing-policy
Configurez une stratégie pour annoncer les itinéraires directs. Étant donné que les sous-réseaux link-local ne sont pas exportés, dans cet exemple, cette stratégie annonce uniquement l’adresse de bouclage. Vous utiliserez cette même adresse de bouclage ultérieurement lorsque vous configurerez l’appairage BGP dans la superposition.
set policy-options policy-statement DIRECT-RTS from protocol direct set policy-options policy-statement DIRECT-RTS then accept
Configurez l’ID de routeur (RID). Étant donné que cet exemple concerne une fabric IPv6 native, vous devez vous assurer que la configuration inclut un ID de routeur au format IPv4. Dans la plupart des cas, le RID est automatiquement dérivé de l’adresse de bouclage, mais dans cet exemple, le bouclage est IPv6 uniquement.
set routing-options router-id 10.0.0.4
Configurez une annonce de routeur (RA) pour chaque interface de structure. Lorsque le RA est activé, l’interface envoie régulièrement des messages RA. Les messages RA sont utilisés pour découvrir l’adresse IP locale du lien du voisin distant, ce qui à son tour déclenche la découverte du voisin et le reste du processus d’appairage dynamique.
set protocols router-advertisement interface xe-0/0/0 set protocols router-advertisement interface xe-0/0/1
Configurez un groupe BGP pour la prise en charge de l’appairage non numéroté. Nous appliquons à ce groupe une stratégie d’exportation de routes directes. Vous devez inclure toutes les interfaces de fabric dans ce groupe et vous devez activer les interfaces avec
peer-auto-discoverysous la[protocols bgp group <group-name> dynamic-neighbor <neighbor-group-name>]hiérarchie. Ce groupe est lié à la stratégie qui définit les numéros d’AS autorisés pour l’appairage dynamique.Vous activez l’équilibrage de charge sur plusieurs chemins et plusieurs numéros AS. N’oubliez pas que dans cette structure, chaque nœud utilise un numéro AS unique. L’équilibrage de charge par trajets multiples (ECMP) vers plusieurs numéros AS permet un basculement rapide en permettant au RIB d’installer plusieurs sauts suivants pointant vers ces différents numéros AS. L’ajout de la prise en charge des nexthops IPv4 étendus permet l’échange de routes IPv4 sur les sessions BGP IPv6.
set protocols bgp group auto-disc family inet6 unicast set protocols bgp group auto-disc family inet unicast extended-nexthop set protocols bgp group auto-disc export DIRECT-RTS set protocols bgp group auto-disc local-as 65003 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery family inet6 ipv6-nd set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/0 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/1 set protocols bgp group auto-disc peer-as-list a-list set protocols bgp group auto-disc multipath multiple-as
Résultats
Rappelons que tous les équipements de fabric ont des configurations similaires. Par souci de concision, seul le delta de configuration pour le leaf 1 est affiché.
user@leaf-1> show configuration
system {
host-name leaf1;
}
interfaces {
xe-0/0/0 {
unit 0 {
family inet;
family inet6;
}
}
xe-0/0/1 {
unit 0 {
family inet;
family inet6;
}
}
lo0 {
unit 0 {
family inet6 {
address 2001:db8:100::3/128;
}
}
}
}
policy-options {
policy-statement DIRECT-RTS {
from protocol direct;
then accept;
}
policy-statement load-balancing-policy {
then load-ballance per-packet;
}
as-list a-list members 65000-65100;
}
routing-options {
router-id 10.0.0.3;
forwarding-table {
export load-balancing-policy;
}
}
protocols {
router-advertisement {
interface xe-0/0/0.0;
interface xe-0/0/1.0;
}
bgp {
group auto-disc {
family inet6 {
unicast;
}
family inet {
unicast {
extended-nexthop;
}
}
export DIRECT-RTS;
local-as 65003;
multipath;
dynamic-neighbor FABRIC {
peer-auto-discovery {
family inet6 {
ipv6-nd;
}
interface xe-0/0/0.0;
interface xe-0/0/1.0;
}
}
peer-as-list a-list;
}
}
}
Configurations rapides
Pour vous permettre d’être opérationnel rapidement, nous avons prévu des configurations rapides pour chaque nœud de la topologie. Copiez et modifiez les commandes suivantes selon vos besoins pour les spécificités de votre environnement (vous n’utiliserez généralement pas les commandes exactement comme indiqué ici). Collez les commandes modifiées dans la fenêtre de terminal de l’équipement de structure associé. Vous devez être en mode configuration au niveau de la [edit] hiérarchie :
La configuration rapide pour Leaf 1 :
set system host-name leaf1 set interfaces xe-0/0/0 unit 0 family inet set interfaces xe-0/0/1 unit 0 family inet set interfaces xe-0/0/0 unit 0 family inet6 set interfaces xe-0/0/1 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8:100::3/128 set policy-options as-list a-list members [65000-65100] set policy-options policy-statement DIRECT-RTS from protocol direct set policy-options policy-statement DIRECT-RTS then accept set policy-options policy-statement load-balancing-policy then load-balance per-packet set protocols router-advertisement interface xe-0/0/0 set protocols router-advertisement interface xe-0/0/1 set protocols bgp group auto-disc family inet6 unicast set protocols bgp group auto-disc export DIRECT-RTS set protocols bgp group auto-disc local-as 65003 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery family inet6 ipv6-nd set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/0 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/1 set protocols bgp group auto-disc peer-as-list a-list set protocols bgp group auto-disc multipath multiple-as set routing-options forwarding-table export load-balancing-policy set routing-options router-id 10.0.0.3
La configuration rapide pour Leaf 2 :
set system host-name leaf2 set interfaces xe-0/0/0 unit 0 family inet set interfaces xe-0/0/1 unit 0 family inet set interfaces xe-0/0/0 unit 0 family inet6 set interfaces xe-0/0/1 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8:100::4/128 set policy-options as-list a-list members [65000-65100] set policy-options policy-statement DIRECT-RTS from protocol direct set policy-options policy-statement DIRECT-RTS then accept set policy-options policy-statement load-balancing-policy then load-balance per-packet set protocols router-advertisement interface xe-0/0/0 set protocols router-advertisement interface xe-0/0/1 set protocols bgp group auto-disc family inet6 unicast set protocols bgp group auto-disc export DIRECT-RTS set protocols bgp group auto-disc local-as 65004 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery family inet6 ipv6-nd set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/0 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/1 set protocols bgp group auto-disc peer-as-list a-list set protocols bgp group auto-disc multipath multiple-as set routing-options forwarding-table export load-balancing-policy set routing-options router-id 10.0.0.4
La configuration rapide pour Spine 1 :
set system host-name spine1 set interfaces xe-0/0/0 unit 0 family inet set interfaces xe-0/0/1 unit 0 family inet set interfaces xe-0/0/0 unit 0 family inet6 set interfaces xe-0/0/1 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8:100::1/128 set policy-options as-list a-list members [65000-65100] set policy-options policy-statement DIRECT-RTS from protocol direct set policy-options policy-statement DIRECT-RTS then accept set policy-options policy-statement load-balancing-policy then load-balance per-packet set protocols router-advertisement interface xe-0/0/0 set protocols router-advertisement interface xe-0/0/1 set protocols bgp group auto-disc family inet6 unicast set protocols bgp group auto-disc export DIRECT-RTS set protocols bgp group auto-disc local-as 65001 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery family inet6 ipv6-nd set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/0 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/1 set protocols bgp group auto-disc peer-as-list a-list set protocols bgp group auto-disc multipath multiple-as set routing-options forwarding-table export load-balancing-policy set routing-options router-id 10.0.0.1
La configuration rapide pour Spine 2 :
set system host-name spine2 set interfaces xe-0/0/0 unit 0 family inet set interfaces xe-0/0/1 unit 0 family inet set interfaces xe-0/0/0 unit 0 family inet6 set interfaces xe-0/0/1 unit 0 family inet6 set interfaces lo0 unit 0 family inet6 address 2001:db8:100::2/128 set policy-options as-list a-list members [65000-65100] set policy-options policy-statement DIRECT-RTS from protocol direct set policy-options policy-statement DIRECT-RTS then accept set policy-options policy-statement load-balancing-policy then load-balance per-packet set protocols router-advertisement interface xe-0/0/0 set protocols router-advertisement interface xe-0/0/1 set protocols bgp group auto-disc family inet6 unicast set protocols bgp group auto-disc export DIRECT-RTS set protocols bgp group auto-disc local-as 65002 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery family inet6 ipv6-nd set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/0 set protocols bgp group auto-disc dynamic-neighbor FABRIC peer-auto-discovery interface xe-0/0/1 set protocols bgp group auto-disc peer-as-list a-list set protocols bgp group auto-disc multipath multiple-as set routing-options forwarding-table export load-balancing-policy set routing-options router-id 10.0.0.2
Assurez-vous de valider les modifications de configuration sur tous les appareils.
Validation
Utilisez ces commandes et exemples de sorties pour confirmer le bon fonctionnement de votre underlay non numéroté. La configuration et le fonctionnement de tous les nœuds sont similaires. Ci-dessous, nous n’affichons que les commandes et la sortie pour la feuille 1. Les mêmes commandes s’appliquent à tous les nœuds, et un résultat similaire est attendu pour tous les périphériques.
Dans l’ensemble, la principale tâche de vérification consiste à vérifier que tous les nœuds ont des sessions BGP attendues établies à l’aide d’adresses locales de liaison et que les périphériques de structure échangent correctement des routes de bouclage. Nous adoptons une approche ascendante structurée qui confirme chaque aspect nécessaire à la réussite de l’établissement de sessions BGP.
Vérifiez que les interfaces de fabric sont opérationnelles et opérationnelles.
user@leaf1> show interfaces xe-0/0/0Physical interface: xe-0/0/0, Enabled, Physical link is Up
Interface index: 650, SNMP ifIndex: 516
Link-level type: Ethernet, MTU: 1514, LAN-PHY mode, Speed: 10Gbps, Duplex: Full-Duplex, BPDU Error: None,
Loop Detect PDU Error: None, Ethernet-Switching Error: None, MAC-REWRITE Error: None, Loopback: Disabled,
Source filtering: Disabled, Flow control: Disabled, Media type: Fiber
Device flags : Present Running
Interface flags: SNMP-Traps Internal: 0x4000
Link flags : None
CoS queues : 8 supported, 8 maximum usable queues
Current address: 02:05:86:24:88:03, Hardware address: 02:05:86:24:88:03
Last flapped : 2022-03-14 10:56:00 PDT (6d 23:47 ago)
Input rate : 0 bps (0 pps)
Output rate : 0 bps (0 pps)
Active alarms : None
Active defects : None
PCS statistics Seconds
Bit errors 0
Errored blocks 0
Ethernet FEC statistics Errors
FEC Corrected Errors 0
FEC Uncorrected Errors 0
FEC Corrected Errors Rate 0
FEC Uncorrected Errors Rate 0
Interface transmit statistics: Disabled
Logical interface xe-0/0/0.0 (Index 555) (SNMP ifIndex 540)
Flags: Up SNMP-Traps 0x4004000 Encapsulation: ENET2
Input packets : 47384
Output packets: 48579
Protocol inet, MTU: 1500
Max nh cache: 75000, New hold nh limit: 75000, Curr nh cnt: 0, Curr new hold cnt: 0, NH drop cnt: 0
Flags: Sendbcast-pkt-to-re
Protocol inet6, MTU: 1500
Max nh cache: 75000, New hold nh limit: 75000, Curr nh cnt: 1, Curr new hold cnt: 0, NH drop cnt: 0
Flags: Is-Primary
Addresses, Flags: Is-Preferred
Destination: fe80::/64, Local: fe80::205:86ff:fe24:8803
user@leaf1> show interfaces terse
Interface Admin Link Proto Local Remote
gr-0/0/0 up up
pfe-0/0/0 up up
pfe-0/0/0.16383 up up inet
inet6
pfh-0/0/0 up up
pfh-0/0/0.16383 up up inet
pfh-0/0/0.16384 up up inet
xe-0/0/0.0 up up inet
inet6 fe80::205:86ff:fe24:8803/64
xe-0/0/1 up up
xe-0/0/1.0 up up inet
inet6 fe80::205:86ff:fe24:8807/64
xe-0/0/2 up up
xe-0/0/2.16386 up up
. . .
jsrv up up
jsrv.1 up up inet 128.0.0.127/2
lo0 up up
lo0.0 up up inet
inet6 2001:db8:100::3
fe80::205:860f:fcc1:6f00
lo0.16385 up up inet
lsi up up
mtun up up
pimd up up
pime up up
pip0 up up
tap up up
vme up down
vtep up up
La sortie montre que les interfaces de fabric du Leaf 1 sont opérationnelles. À cela s’ajoute l’absence d’adresse IPv4 ou IPv6 explicite. Seules les inet familles et inet6 sont configurées sur l’interface. Par conséquent, seules les adresses IPv6 locales de liaison IPv6 sont présentes dans le cadre de la configuration des adresses sans état IPv6. Nous notons également que l’adresse de bouclage a l’adresse IPv6 attendue.
La sortie de la show interfaces terse commande CLI facilite la vérification de l’état et de la configuration de toutes les interfaces, y compris l’adresse de bouclage.
Vérifiez que toutes les interfaces de structure envoient et reçoivent des annonces de routeur IPv6.
user@leaf1> show ipv6 router-advertisement
Interface: xe-0/0/0.0
Advertisements sent: 1512, last sent 00:01:05 ago
Solicits sent: 1, last sent 6d 23:49:07 ago
Solicits received: 3, last received 4d 18:18:57 ago
Advertisements received: 503
Solicited router advertisement unicast: Disable
IPv6 RA Preference: DEFAULT/MEDIUM
Advertisement from fe80::205:86ff:fe0c:dd03, heard 4d 18:15:17 ago
Managed: 0
Other configuration: 0
Reachable time: 0 ms
Default lifetime: 0 sec
Retransmit timer: 0 ms
Current hop limit: 64
Interface: xe-0/0/1.0
Advertisements sent: 1523, last sent 00:02:05 ago
Solicits sent: 1, last sent 6d 23:49:07 ago
Solicits received: 0
Advertisements received: 1515
Solicited router advertisement unicast: Disable
IPv6 RA Preference: DEFAULT/MEDIUM
Advertisement from fe80::205:86ff:fec6:b503, heard 00:03:47 ago
Managed: 0
Other configuration: 0
Reachable time: 0 ms
Default lifetime: 1800 sec
Retransmit timer: 0 ms
Current hop limit: 64
La sortie confirme que Leaf 1 envoie et reçoit des RA vers et depuis les deux périphériques centraux. Les AR signalent correctement l’adresse locale du lien de l’extrémité d’envoi.
Vérifiez que les périphériques de structure ont appris les liaisons d’adresse MAC vers lien-adresse locale de tous les voisins IPv6 directement connectés à l’aide d’IPv6 ND.
user@leaf1> show ipv6 neighbors IPv6 Address Linklayer Address State Exp Rtr Secure Interface fe80::205:86ff:fe0c:dd03 02:05:86:0c:dd:03 reachable 19 yes no xe-0/0/0.0 fe80::205:86ff:fec6:b503 02:05:86:c6:b5:03 reachable 34 yes no xe-0/0/1.0 Total entries: 2
La sortie confirme que Leaf 1 a correctement résolu l’adresse MAC en adresse locale de liaison de ses deux voisins, c’est-à-dire les deux périphériques centraux.
Vérifiez que vous pouvez envoyer un ping à un voisin à l’aide de son adresse lien-local.
user@leaf1> ping fe80::205:86ff:fe0c:dd03 interface xe-0/0/0 PING6(56=40+8+8 bytes) fe80::205:86ff:fec1:6f03 --> fe80::205:86ff:fe0c:dd03 16 bytes from fe80::205:86ff:fe0c:dd03, icmp_seq=0 hlim=64 time=117.229 ms 16 bytes from fe80::205:86ff:fe0c:dd03, icmp_seq=1 hlim=64 time=114.074 ms ^C --- fe80::205:86ff:fe0c:dd03 ping6 statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/std-dev = 114.074/115.651/117.229/1.577 ms
Le ping de la feuille 1 à la colonne vertébrale 1 réussit. Ce résultat confirme la connectivité IPv6 à l’aide d’adresses lien-local.
Vérifiez que tous les équipements de structure ont établi des sessions d’appairage BGP avec les voisins directement connectés.
user@leaf1> show bgp summary
Threading mode: BGP I/O
Default eBGP mode: advertise - accept, receive - accept
Groups: 1 Peers: 2 Down peers: 0
Auto-discovered peers: 2
Table Tot Paths Act Paths Suppressed History Damp State Pending
inet6.0
4 4 0 0 0 0
Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped...
fe80::205:86ff:fe0c:dd03%xe-0/0/0.0 65001 6 5 0 1 50 Establ
inet6.0: 2/2/2/0
fe80::205:86ff:fec6:b503%xe-0/0/1.0 65002 6 6 0 1 51 Establ
inet6.0: 2/2/2/0
Comme prévu, le résultat indique que deux sessions BGP ont été établies sur le périphérique Leaf 1. L’écran confirme que des routes IPv6 sont échangées. Nous inclurons plus d’informations sur la confirmation plus tard. Si vous le souhaitez, affichez les détails d’un voisin BGP :
user@leaf1> show bgp neighbor
Peer: fe80::205:86ff:fe0c:dd03%xe-0/0/0.0+56258 AS 65001 Local: fe80::205:86ff:fec1:6f03%xe-0/0/0.0+179 AS 65003
Group: auto-disc Routing-Instance: master
Forwarding routing-instance: master
Type: External State: Established Flags: <Sync PeerAsList AutoDiscoveredNdp>
Last State: OpenConfirm Last Event: RecvKeepAlive
Last Error: None
Export: [ DIRECT-RTS ]
Options: <AddressFamily Multipath LocalAS Refresh>
Options: <MultipathAs>
Options: <GracefulShutdownRcv>
Address families configured: inet6-unicast
Holdtime: 90 Preference: 170
Graceful Shutdown Receiver local-preference: 0
Local AS: 65003 Local System AS: 0
Number of flaps: 1
Last flap event: TransportError
Peer ID: 10.0.0.1 Local ID: 10.0.0.3 Active Holdtime: 90
Keepalive Interval: 30 Group index: 0 Peer index: 1 SNMP index: 2
I/O Session Thread: bgpio-0 State: Enabled
BFD: disabled, down
Local Interface: xe-0/0/0.0
NLRI for restart configured on peer: inet6-unicast
NLRI advertised by peer: inet6-unicast
NLRI for this session: inet6-unicast
Peer supports Refresh capability (2)
Stale routes from peer are kept for: 300
Peer does not support Restarter functionality
Restart flag received from the peer: Notification
NLRI that restart is negotiated for: inet6-unicast
NLRI of received end-of-rib markers: inet6-unicast
NLRI of all end-of-rib markers sent: inet6-unicast
Peer does not support LLGR Restarter functionality
Peer supports 4 byte AS extension (peer-as 65001)
Peer does not support Addpath
NLRI(s) enabled for color nexthop resolution: inet6-unicast
Table inet6.0 Bit: 20000
RIB State: BGP restart is complete
Send state: in sync
Active prefixes: 2
Received prefixes: 2
Accepted prefixes: 2
Suppressed due to damping: 0
Advertised prefixes: 2
Last traffic (seconds): Received 1 Sent 27 Checked 56
Input messages: Total 7 Updates 3 Refreshes 0 Octets 342
Output messages: Total 5 Updates 2 Refreshes 0 Octets 260
Output Queue[1]: 0 (inet6.0, inet6-unicast)
. . .
Vérifiez que tous les noeuds annoncent leur adresse de bouclage tout en apprenant l’adresse de bouclage des autres noeuds.
user@leaf1> show route protocol bgp
inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
inet6.0: 8 destinations, 11 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
2001:db8:100::1/128*[BGP/170] 00:33:43, localpref 100
AS path: 65001 I, validation-state: unverified
> to fe80::205:86ff:fe0c:dd03 via xe-0/0/0.0
[BGP/170] 00:33:46, localpref 100
AS path: 65002 65004 65001 I, validation-state: unverified
> to fe80::205:86ff:fec6:b503 via xe-0/0/1.0
2001:db8:100::2/128*[BGP/170] 00:33:46, localpref 100
AS path: 65002 I, validation-state: unverified
> to fe80::205:86ff:fec6:b503 via xe-0/0/1.0
[BGP/170] 00:33:43, localpref 100
AS path: 65001 65004 65002 I, validation-state: unverified
> to fe80::205:86ff:fe0c:dd03 via xe-0/0/0.0
2001:db8:100::4/128*[BGP/170] 00:33:46, localpref 100
AS path: 65002 65004 I, validation-state: unverified
> to fe80::205:86ff:fec6:b503 via xe-0/0/1.0
[BGP/170] 00:33:43, localpref 100
AS path: 65001 65004 I, validation-state: unverified
> to fe80::205:86ff:fe0c:dd03 via xe-0/0/0.0
Comme prévu, la sortie confirme que Leaf 1 a appris les adresses de bouclage de tous les autres périphériques de structure. Notez que pour la feuille 2, il affiche deux chemins de coûts égaux, l’un passant par la colonne vertébrale 1 et l’autre par la colonne vertébrale 2.
Si nécessaire, vous pouvez aider à isoler les problèmes de routage en affichant les routes spécifiques annoncées ou reçues d’un voisin BGP donné. Notez que, comme pour un ping vers une adresse locale de lien, vous devez qualifier l’adresse IP locale de lien de l’homologue avec l’interface de sortie correspondante :
user@leaf1> show route advertising-protocol bgp fe80::205:86ff:fe0c:dd03%xe-0/0/0.0 inet6.0: 8 destinations, 10 routes (8 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 2001:db8:100::2/128 Self 65002 I * 2001:db8:100::3/128 Self I user@leaf1> show route receive-protocol bgp fe80::205:86ff:fe0c:dd03%xe-0/0/0.0 inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden) inet6.0: 8 destinations, 10 routes (8 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 2001:db8:100::1/128 fe80::205:86ff:fe0c:dd03 65001 I * 2001:db8:100::4/128 fe80::205:86ff:fe0c:dd03 65001 65004 I
Vérifiez que la fabric prend en charge l’équilibrage de charge ECMP. Affichez des détails sur les itinéraires utilisés par la feuille 1 pour atteindre la feuille 2. Vous vous attendez à deux itinéraires à coûts égaux, un à travers chaque équipement Spine. Dans la section ci-dessous, vous confirmez ECMP dans les tables de routage et de transfert (RIB et FIB).
user@leaf1> show route 2001:db8:100::4 detail
inet6.0: 8 destinations, 11 routes (8 active, 0 holddown, 0 hidden)
2001:db8:100::4/128 (2 entries, 1 announced)
*BGP Preference: 170/-101
Next hop type: Router, Next hop index: 0
Address: 0xd057cc8
Next-hop reference count: 2
Source: fe80::205:86ff:fe0c:dd03%xe-0/0/0.0
Next hop: fe80::205:86ff:fe0c:dd03 via xe-0/0/0.0, selected
Session Id: 0
Next hop: fe80::205:86ff:fec6:b503 via xe-0/0/1.0
Session Id: 0
State: <Active Ext>
Peer AS: 65001
Age: 1:39:21
Validation State: unverified
Task: BGP_0_65003.fe80::205:86ff:fe0c:dd03
Announcement bits (3): 0-KRT 1-BGP_Multi_Path 2-BGP_RT_Background
AS path: 65001 65004 I
Accepted Multipath
Localpref: 100
Router ID: 10.0.0.1
Thread: junos-main
BGP Preference: 170/-101
Next hop type: Router, Next hop index: 1731
Address: 0xd22cc50
Next-hop reference count: 5
Source: fe80::205:86ff:fec6:b503%xe-0/0/1.0
Next hop: fe80::205:86ff:fec6:b503 via xe-0/0/1.0, selected
Session Id: 321
State: <Ext>
Inactive reason: Active preferred
Peer AS: 65002
Age: 1:39:21
Validation State: unverified
Task: BGP_0_65003.fe80::205:86ff:fec6:b503
AS path: 65002 65004 I
Accepted MultipathContrib
Localpref: 100
Router ID: 10.0.0.2
Thread: junos-main
user@leaf1> show route forwarding-table destination 2001:db8:100::4
Routing table: default.inet6
Internet6:
Destination Type RtRef Next hop Type Index NhRef Netif
2001:db8:100::4/128 user 0 ulst 131070 2
fe80::205:86ff:fe0c:dd03
ucst 1730 6 xe-0/0/0.0
fe80::205:86ff:fec6:b503
ucst 1731 6 xe-0/0/1.0
La sortie confirme que les deux chemins entre Leaf 1 et Leaf 2 sont activement utilisés pour transférer le trafic et font partie d’un chemin multiple.
Vérifiez que les feuilles 1 et 2 sont connectées via le calque sous-jacent.
user@leaf1> traceroute no-resolve 2001:db8:100::4 traceroute6 to 2001:db8:100::4 (2001:db8:100::4) from 2001:db8:100::3, 64 hops max, 12 byte packets 1 2001:db8:100::1 220.185 ms 210.200 ms 203.652 ms 2 2001:db8:100::4 213.774 ms 246.773 ms 186.533 ms
La sortie confirme que les feuilles 1 et 2 ont une connectivité sous-jacente. Le chemin montre que ce flux est passé par Spine 1, comme l’indique son adresse de bouclage en tant que premier saut.
Cette couche sous-jacente est maintenant prête à prendre en charge la superposition EVPN-VXLAN de votre choix. Pour plus d’informations sur les options de superposition disponibles, reportez-vous à la section Présentation d’EVPN avec l’encapsulation de plan de données VXLAN .