Sessions multi-sauts BGP
Comprendre EBGP Multihop
BGP est un protocole de passerelle extérieure (EGP) utilisé pour échanger des informations de routage entre les routeurs de différents systèmes autonomes (AS). Voici deux façons d’établir un multi-saut EBGP entre les routeurs :
Lorsque des homologues BGP externes (EBGP) ne sont pas directement connectés les uns aux autres, ils doivent traverser un ou plusieurs routeurs non-BGP pour se rejoindre.
La configuration d’EBGP à sauts multiples permet aux homologues de passer par les autres routeurs pour établir des relations d’égal à égal et échanger des messages de mise à jour. Ce type de configuration est généralement utilisé lorsqu’un équipement de routage Juniper Networks doit exécuter EBGP avec un routeur tiers qui n’autorise pas la connexion directe des deux homologues EBGP. Le multisaut EBGP permet d’établir une connexion voisine entre deux homologues EBGP qui n’ont pas de connexion directe.
Le comportement par défaut d’une connexion EBGP est d’appairer sur un seul saut physique à l’aide de l’adresse d’interface physique de l’homologue. Dans certains cas, il est avantageux de modifier ce comportement EBGP d’appairage physique par défaut, à un saut. C’est le cas lorsque plusieurs liaisons physiques connectent deux routeurs qui doivent être des homologues EBGP. Dans ce cas, si l’un des liens point à point échoue, l’accessibilité sur le lien alternatif existe toujours.

Sur la figure 1, le routeur R1 appartient à l’AS 1 et le routeur R2 appartient à l’AS 2. Les deux liaisons physiques entre les routeurs sont utilisées pour l’équilibrage de charge. L’appairage multi-sauts EBGP fonctionne également avec un seul lien physique.
L’exemple de configuration suivant permet d’établir une session d’appairage BGP unique sur ces multiples liaisons physiques :
Chaque routeur doit établir la session d’appairage avec l’adresse de bouclage du routeur distant. Vous pouvez configurer cette session à l’aide de l’instruction
local-address
, qui modifie les informations d’en-tête de l’adresse homologue dans les paquets BGP.Utilisez l’instruction
multihop
pour modifier l’utilisation par défaut de l’adresse physique du voisin. En outre, vous pouvez également spécifier une valeur de durée de vie (TTL) dans les paquets BGP pour contrôler la distance de leur propagation. Nous utilisons une valeur TTL de 1 pour nous assurer que la session ne peut pas être établie sur d’autres liens de porte dérobée du réseau.REMARQUE :Lorsque le saut multiple est configuré, Junos OS définit la valeur TTL de 64, par défaut.
Une valeur TTL de 1 est suffisante pour activer une session EBGP vers l’adresse de bouclage d’un voisin directement connecté.
Chaque routeur doit disposer d’une capacité de routage IP vers l’adresse de bouclage du routeur distant. Cette fonctionnalité est souvent accomplie en utilisant une route statique pour mapper l’adresse de bouclage aux adresses physiques de l’interface.
[edit protocols bgp group ext-peers] type external; local-address 192.168.3.4; neighbor 172.16.128.1 { multihop ttl 1; }
[edit routing-options] static { route 172.16.128.1 next-hop (10.10.1.1 | 10.10.2.1); }
Voir également
Exemple : Configuration des sessions EBGP à sauts multiples
Cet exemple montre comment configurer un homologue BGP (EBGP) externe qui se trouve à plus d’un saut du routeur local. Ce type de session est appelé session BGP à sauts multiples .
Conditions préalables
Aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise avant de configurer cet exemple.
Présentation
La configuration permettant d’activer les sessions EBGP à sauts multiples nécessite une connectivité entre les deux homologues EBGP. Cet exemple utilise des routes statiques pour assurer la connectivité entre les périphériques.
Contrairement aux sessions EBGP directement connectées dans lesquelles les adresses physiques sont généralement utilisées dans les neighbor
instructions, vous devez utiliser des adresses d’interface de bouclage pour les EBGP à sauts multiples en spécifiant l’adresse d’interface de bouclage de l’homologue indirectement connecté. De cette façon, le multi-saut EBGP est similaire au BGP interne (IBGP).
Enfin, vous devez ajouter l’instruction multihop
. Si vous le souhaitez, vous pouvez définir une valeur de durée de vie maximale (TTL) avec l’instruction ttl
. Le TTL est transporté dans l’en-tête IP des paquets BGP. Si vous ne spécifiez pas de valeur TTL, la valeur TTL maximale par défaut du système est utilisée. La valeur TTL par défaut est 64 pour les sessions EBGP à sauts multiples. Une autre option consiste à conserver la valeur BGP next-hop pour les annonces de route en incluant l’instruction no-nexthop-change
.
Figure 2 montre un réseau EBGP multi-sauts typique.
Les équipements C et E disposent d’une session EBGP établie. L’appareil D n’est pas un périphérique compatible BGP. Tous les appareils sont connectés via des routes statiques.

Configuration
- Configuration rapide de l’interface de ligne de commande
- Appareil C
- Configuration de l’appareil D
- Configuration de l’appareil E
Configuration rapide de l’interface de ligne de commande
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, puis copiez et collez les commandes dans l’interface de ligne de commande au niveau de la [edit]
hiérarchie.
Appareil C
set interfaces fe-1/2/0 unit 9 description to-D set interfaces fe-1/2/0 unit 9 family inet address 10.10.10.9/30 set interfaces lo0 unit 3 family inet address 192.168.40.4/32 set protocols bgp group external-peers type external set protocols bgp group external-peers multihop ttl 2 set protocols bgp group external-peers local-address 192.168.40.4 set protocols bgp group external-peers export send-static set protocols bgp group external-peers peer-as 18 set protocols bgp group external-peers neighbor 192.168.6.7 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then accept set routing-options static route 10.10.10.14/32 next-hop 10.10.10.10 set routing-options static route 192.168.6.7/32 next-hop 10.10.10.10 set routing-options router-id 192.168.40.4 set routing-options autonomous-system 17
Appareil D
set interfaces fe-1/2/0 unit 10 description to-C set interfaces fe-1/2/0 unit 10 family inet address 10.10.10.10/30 set interfaces fe-1/2/1 unit 13 description to-E set interfaces fe-1/2/1 unit 13 family inet address 10.10.10.13/30 set interfaces lo0 unit 4 family inet address 192.168.6.6/32 set routing-options static route 192.168.40.4/32 next-hop 10.10.10.9 set routing-options static route 192.168.6.7/32 next-hop 10.10.10.14 set routing-options router-id 192.168.6.6
Dispositif E
set interfaces fe-1/2/0 unit 14 description to-D set interfaces fe-1/2/0 unit 14 family inet address 10.10.10.14/30 set interfaces lo0 unit 5 family inet address 192.168.6.7/32 set protocols bgp group external-peers multihop ttl 2 set protocols bgp group external-peers local-address 192.168.6.7 set protocols bgp group external-peers export send-static set protocols bgp group external-peers peer-as 17 set protocols bgp group external-peers neighbor 192.168.40.4 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then accept set routing-options static route 10.10.10.8/30 next-hop 10.10.10.13 set routing-options static route 192.168.40.4/32 next-hop 10.10.10.13 set routing-options router-id 192.168.6.7 set routing-options autonomous-system 18
Appareil C
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour plus d’informations sur la navigation dans l’interface de ligne de commande, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer l’appareil C :
Configurez l’interface avec l’appareil directement connecté (to-D), puis configurez l’interface de bouclage.
[edit interfaces fe-1/2/0 unit 9] user@C# set description to-D user@C# set family inet address 10.10.10.9/30 [edit interfaces lo0 unit 3] user@C# set family inet address 192.168.40.4/32
Configurez une session EBGP avec l’appareil E.
L’instruction
neighbor
pointe vers l’interface de bouclage sur l’appareil E.[edit protocols bgp group external-peers] user@C# set type external user@C# set local-address 192.168.40.4 user@C# set export send-static user@C# set peer-as 18 user@C# set neighbor 192.168.6.7
Configurez l’instruction multi-sauts pour permettre aux périphériques C et E de devenir des homologues EBGP.
Étant donné que les homologues sont à deux sauts l’un de l’autre, l’exemple utilise l’instruction
ttl 2
.[edit protocols bgp group external-peers] user@C# set multihop ttl 2
Configurez la connectivité à l’appareil E, à l’aide de routes statiques.
Vous devez configurer un routage vers l’adresse de l’interface de bouclage et vers l’adresse de l’interface physique.
[edit routing-options] user@C# set static route 10.10.10.14/32 next-hop 10.10.10.10 user@C# set static route 192.168.6.7/32 next-hop 10.10.10.10
Configurez l’ID du routeur local et le numéro du système autonome (AS).
[edit routing-options] user@C# set router-id 192.168.40.4 user@C# set autonomous-system 17
Configurez une stratégie qui accepte les routes directes.
D’autres options utiles pour ce scénario peuvent consister à accepter les routes apprises via OSPF ou les routes locales.
[edit policy-options policy-statement send-static term 1] user@C# set from protocol static user@C# set then accept
Résultats
À partir du mode de configuration, confirmez votre configuration en saisissant les show interfaces
commandes , show protocols
, show policy-options
et show routing-options
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
user@C# show interfaces fe-1/2/0 { unit 9 { description to-D; family inet { address 10.10.10.9/30; } } } lo0 { unit 3 { family inet { address 192.168.40.4/32; } } }
user@C# show protocols bgp { group external-peers { type external; multihop { ttl 2; } local-address 192.168.40.4; export send-static; peer-as 18; neighbor 192.168.6.7; } }
user@C# show policy-options policy-statement send-static { term 1 { from protocol static; then accept; } }
user@C# show routing-options static { route 10.10.10.14/32 next-hop 10.10.10.10; route 192.168.6.7/32 next-hop 10.10.10.10; } router-id 192.168.40.4; autonomous-system 17;
Si vous avez terminé de configurer l’appareil, passez commit
en mode de configuration. Répétez ces étapes pour toutes les sessions BGP de la topologie.
Configuration de l’appareil D
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour plus d’informations sur la navigation dans l’interface de ligne de commande, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer l’appareil D :
Définissez l’interface de ligne de commande sur Périphérique D.
user@host> set cli logical-system D
Configurez les interfaces avec les périphériques directement connectés, puis configurez une interface de bouclage.
[edit interfaces fe-1/2/0 unit 10] user@D# set description to-C user@D# set family inet address 10.10.10.10/30 [edit interfaces fe-1/2/1 unit 13] user@D# set description to-E user@D# set family inet address 10.10.10.13/30 [edit interfaces lo0 unit 4] user@D# set family inet address 192.168.6.6/32
Configurez la connectivité aux autres périphériques à l’aide de routes statiques vers les adresses de l’interface de bouclage.
Sur l’équipement D, vous n’avez pas besoin d’itinéraires statiques vers les adresses physiques, car l’équipement D est directement connecté à l’équipement C et à l’équipement E.
[edit routing-options] user@D# set static route 192.168.40.4/32 next-hop 10.10.10.9 user@D# set static route 192.168.6.7/32 next-hop 10.10.10.14
Configurez l’ID du routeur local.
[edit routing-options] user@D# set router-id 192.168.6.6
Résultats
À partir du mode de configuration, confirmez votre configuration en entrant les show interfaces
commandes et show routing-options
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
user@D# show interfaces fe-1/2/0 { unit 10 { description to-C; family inet { address 10.10.10.10/30; } } } fe-1/2/1 { unit 13 { description to-E; family inet { address 10.10.10.13/30; } } } lo0 { unit 4 { family inet { address 192.168.6.6/32; } } }
user@D# show protocols
user@D# show routing-options static { route 192.168.40.4/32 next-hop 10.10.10.9; route 192.168.6.7/32 next-hop 10.10.10.14; } router-id 192.168.6.6;
Si vous avez terminé de configurer l’appareil, passez commit
en mode de configuration. Répétez ces étapes pour toutes les sessions BGP de la topologie.
Configuration de l’appareil E
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour plus d’informations sur la navigation dans l’interface de ligne de commande, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer l’appareil E :
Définissez l’interface de ligne de commande sur Périphérique E.
user@host> set cli logical-system E
Configurez l’interface avec l’appareil directement connecté (to-D), puis configurez l’interface de bouclage.
[edit interfaces fe-1/2/0 unit 14] user@E# set description to-D user@E# set family inet address 10.10.10.14/30 [edit interfaces lo0 unit 5] user@E# set family inet address 192.168.6.7/32
Configurez une session EBGP avec l’appareil E.
L’instruction
neighbor
pointe vers l’interface de bouclage sur l’appareil C.[edit protocols bgp group external-peers] user@E# set local-address 192.168.6.7 user@E# set export send-static user@E# set peer-as 17 user@E# set neighbor 192.168.40.4
Configurez l’instruction
multihop
pour permettre à l’appareil C et à l’appareil E de devenir des homologues EBGP.Étant donné que les homologues sont à deux sauts l’un de l’autre, l’exemple utilise l’instruction
ttl 2
.[edit protocols bgp group external-peers] user@E# set multihop ttl 2
Configurez la connectivité à l’appareil E, à l’aide de routes statiques.
Vous devez configurer un routage vers l’adresse de l’interface de bouclage et vers l’adresse de l’interface physique.
[edit routing-options] user@E# set static route 10.10.10.8/30 next-hop 10.10.10.13 user@E# set static route 192.168.40.4/32 next-hop 10.10.10.13
Configurez l’ID du routeur local et le numéro du système autonome (AS).
[edit routing-options] user@E# set router-id 192.168.6.7 user@E# set autonomous-system 18
Configurez une stratégie qui accepte les routes directes.
D’autres options utiles pour ce scénario peuvent consister à accepter les routes apprises via OSPF ou les routes locales.
[edit policy-options policy-statement send-static term 1] user@E# set from protocol static user@E# set then accept
Résultats
À partir du mode de configuration, confirmez votre configuration en saisissant les show interfaces
commandes , show protocols
, show policy-options
et show routing-options
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
user@E# show interfaces fe-1/2/0 { unit 14 { description to-D; family inet { address 10.10.10.14/30; } } } lo0 { unit 5 { family inet { address 192.168.6.7/32; } } }
user@E# show protocols bgp { group external-peers { multihop { ttl 2; } local-address 192.168.6.7; export send-static; peer-as 17; neighbor 192.168.40.4; } }
user@E# show policy-options policy-statement send-static { term 1 { from protocol static; then accept; } }
user@E# show routing-options static { route 10.10.10.8/30 next-hop 10.10.10.13; route 192.168.40.4/32 next-hop 10.10.10.13; } router-id 192.168.6.7; autonomous-system 18;
Si vous avez terminé de configurer l’appareil, passez commit
en mode de configuration.
Vérification
Vérifiez que la configuration fonctionne correctement.
- Vérification de la connectivité
- Vérification de l’établissement des sessions BGP
- Affichage des itinéraires annoncés
Vérification de la connectivité
But
Assurez-vous que l’appareil C peut envoyer une requête ping à l’appareil E, en spécifiant l’adresse de l’interface de bouclage comme source de la demande ping.
L’adresse de l’interface de bouclage est l’adresse source que BGP utilisera.
Action
À partir du mode opérationnel, entrez la commande à partir de l’appareil ping 10.10.10.14 source 192.168.40.4
C, puis entrez la commande à partir de l’appareil ping 10.10.10.9 source 192.168.6.7
E.
user@C> ping 10.10.10.14 source 192.168.40.4 PING 10.10.10.14 (10.10.10.14): 56 data bytes 64 bytes from 10.10.10.14: icmp_seq=0 ttl=63 time=1.262 ms 64 bytes from 10.10.10.14: icmp_seq=1 ttl=63 time=1.202 ms ^C --- 10.10.10.14 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/stddev = 1.202/1.232/1.262/0.030 ms
user@E> ping 10.10.10.9 source 192.168.6.7 PING 10.10.10.9 (10.10.10.9): 56 data bytes 64 bytes from 10.10.10.9: icmp_seq=0 ttl=63 time=1.255 ms 64 bytes from 10.10.10.9: icmp_seq=1 ttl=63 time=1.158 ms ^C --- 10.10.10.9 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/stddev = 1.158/1.206/1.255/0.049 ms
Sens
Les routes statiques fonctionnent si les pings fonctionnent.
Vérification de l’établissement des sessions BGP
But
Vérifiez que les sessions BGP sont actives.
Action
À partir du mode opérationnel, entrez la show bgp summary
commande.
user@C> show bgp summary Groups: 1 Peers: 1 Down peers: 0 Table Tot Paths Act Paths Suppressed History Damp State Pending inet.0 2 0 0 0 0 0 Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped... 192.168.6.7 18 147 147 0 1 1:04:27 0/2/2/0 0/0/0/0
user@E> show bgp summary Groups: 1 Peers: 1 Down peers: 0 Table Tot Paths Act Paths Suppressed History Damp State Pending inet.0 2 0 0 0 0 0 Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped... 192.168.40.4 17 202 202 0 1 1:02:18 0/2/2/0 0/0/0/0
Sens
La sortie montre que les deux périphériques ont chacun un pair. Aucun pair n’est à terre.
Affichage des itinéraires annoncés
But
Assurez-vous que les itinéraires sont annoncés par BGP.
Action
À partir du mode opérationnel, entrez la show route advertising-protocol bgp neighbor
commande.
user@E> show route advertising-protocol bgp 192.168.6.7 inet.0: 5 destinations, 7 routes (5 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 10.10.10.14/32 Self I * 192.168.6.7/32 Self I
user@C> show route advertising-protocol bgp 192.168.40.4 inet.0: 5 destinations, 7 routes (5 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 10.10.10.8/30 Self I * 192.168.40.4/32 Self I
Sens
La send-static
stratégie de routage exporte les routes statiques de la table de routage vers BGP. BGP annonce ces routes entre les homologues car la session pair BGP est établie.