Introduction
Ce document décrit l'attribut MED du protocole BGP (Border Gateway Protocol) lorsqu'il franchit une frontière de système autonome par implémentation dans différents scénarios.
Conditions préalables
Exigences
Cisco recommande que vous ayez des connaissances de base sur le protocole BGP.
Composants utilisés
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques. Les scénarios abordés dans ce document utilisent les versions matérielles et logicielles 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.
Conventions
Reportez-vous aux conventions des conseils techniques Cisco pour plus d’information sur les conventions utilisées dans ce document.
Informations générales
Le discriminateur de sortie multiple (MED) fournit un moyen dynamique d'influencer un autre système autonome (AS) dans la manière d'atteindre une certaine route lorsqu'il y a plusieurs points d'entrée pour ce système autonome. BGP utilise une procédure systématique pour le meilleur choix de chemin. D'autres attributs importants, tels que le poids, la préférence locale, la route d'origine et le chemin AS, sont pris en compte avant d'envisager l'attribut MED. Ainsi, si l'un de ces critères correspond, l'attribut MED n'est pas pris en compte.
Remarque : lorsque tous les autres facteurs sont égaux, le point de sortie avec le MED le plus faible est privilégié.
Étude de cas
Scénario 1
Lorsqu'un haut-parleur BGP apprend une route à partir d'un homologue, la route MED est passée à d'autres homologues BGP intérieurs (iBGP), mais pas à des homologues BGP extérieurs (eBGP).
Les routeurs R1 et R2 sont considérés dans le même système autonome, par exemple le système autonome 100, et le routeur R3 appartient au système autonome 101. Pour faciliter la convention, les adresses IP du bloc /24 sont utilisées.
Les routeurs R1 et R2 sont configurés comme suit :
Routeur 1 |
(Config)#interface Loopback10
(Config-if)#ip address xx.xx.xx.xx xxx.xxx.xxx.xxx
(Config-if)#interface FastEthernet0/0
(Config-if)#ip address xx.xx.xx.xx xxx.xxx.xxx.xxx
(Config)#router bgp 100
(Config-router)#no synchronization
(Config-router)#bgp router-id xx.xx.xx.xx
(Config-router)#bgp log-neighbor-changes
(Config-router)#network xx.xx.xx.xx mask xxx.xxx.xxx.xxx route-map ATTACH_MED
(Config-router)#neighbor xxx.x.xx.x remote-as xxx
(Config-router)#no auto-summary
(Config)#access-list 10 permit xx.xx.xx.xx
(Config)#route-map ATTACH_MED permit xx
(Config)#match ip address xx
(Config)#set metric xxx |
Routeur 2 |
(Config)#interface FastEthernet0/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config-if)#interface Serial1/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config-if)#encapsulation frame-relay IETF
(Config-if)#no fair-queue
(Config-if)#frame-relay map ip xxx.x.xx.x 203 broadcast
(Config-if)#no frame-relay inverse-arp
(Config-if)#frame-relay lmi-type ansi
(Config)#router bgp 100
(Config-router)#no synchronization
(Config-router)#bgp router-id xx.xx.xx.xx
(Config-router)#bgp log-neighbor-changes
(Config-router)#neighbor xxx.x.xx.x remote-as 100
(Config-router)#neighbor xxx.x.xx.x remote-as 101
(Config-router)#neighbor xxx.x.xx.x ebgp-multihop 3
(Config-router)#no auto-summary |
La configuration du routeur R3 est illustrée ici :
Routeur 3 |
(Config)#interface Serial1/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config-if)#encapsulation frame-relay IETF
(Config-if)#no fair-queue
(Config-if)#frame-relay map ip xxx.x.xx.x 302 broadcast
(Config-if)#no frame-relay inverse-arp
(Config-if)#frame-relay lmi-type ansi
(Config)#router bgp 101
(Config-router)#no synchronization
(Config-router)#bgp log-neighbor-changes
(Config-router)#neighbor xxx.x.xx.x remote-as 100
(Config-router)#neighbor xxx.x.xx.x ebgp-multihop 3
(Config-router)#no auto-summary
|
Dans cette configuration, R1 et R2 exécutent iBGP. Par conséquent, lorsqu'une mise à jour entre dans le système autonome avec une certaine métrique, cette métrique est utilisée pour prendre des décisions au sein du système autonome.
La commande show ip bgp, lorsqu'elle est vérifiée à partir de R2, affiche la valeur métrique pour xx.xx.xx.xx, qui provient du voisin iBGP xxx.x.xx.x et a une valeur MED de 100.
eBGP s'exécute entre R2 et R3, car ils se trouvent dans un autre système autonome. Lorsque la même mise à jour est transmise à un troisième système autonome, par exemple le système autonome 101, cette métrique revient à 0.
La métrique de la commande show ip bgp, lorsqu'elle est vérifiée à partir de R3, est supprimée, car xx.xx.xx.xx traverse la limite AS (101).
De ce scénario, il est évident que l'attribut MED peut influencer le trafic entrant en provenance des systèmes autonomes voisins.
L'attribut MED ne peut pas influencer les décisions de route de systèmes autonomes plus distants. Lorsqu'un haut-parleur BGP apprend une route à partir d'un homologue, il peut passer le MED de la route à n'importe quel homologue iBGP, mais pas à des homologues eBGP.
Par conséquent, le MED n'est pertinent qu'entre les systèmes autonomes voisins.
Scénario 2
Si la route injectée dans le BGP (soit par la commande networkorredistributecommand) provient d'un IGP (RIP ou EIGRP ou OSPF), le MED est dérivé de la métrique IGP et la route est annoncée à un voisin eBGP avec ce MED.
Dans ce réseau, R1 est configuré pour s’exécuter dans un réseau RIP. Les routeurs R2 et R3 exécutent le protocole BGP, où R2 est configuré avec le système autonome 100 tandis que R3 est configuré avec le système autonome 101.
Le routeur R1 est configuré ici :
Routeur R1 |
(Config)#interface Loopback10
(Config-if)#ip address xx.xx.xx.xx xxx.xxx.xxx.xxx
(Config-if)#interface FastEthernet0/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config)#router rip
(Config-router)#network xx.x.x.x
(Config-router)#network xxx.x.xx.x
(Config-router)#no auto-summary
|
Les routeurs R2 et R3 sont configurés pour BGP, où la redistribution est effectuée dans R2 afin d'injecter les réseaux RIP dans un BGP.
Routeur R2 |
(Config)#interface FastEthernet0/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config-if)#interface Serial1/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config-if)#encapsulation frame-relay IETF
(Config-if)#no fair-queue
(Config-if)#frame-relay map ip xxx.x.xx.x 203 broadcast
(Config-if)#no frame-relay inverse-arp
(Config-if)#frame-relay lmi-type ansi
(Config)#router rip
(Config-router)# network xxx.x.xx.x
(Config-router)#no auto-summary
(Config-router)#router bgp 100
(Config-router)#no synchronization
(Config-router)#bgp router-id xx.xx.xx.xx
(Config-router)#bgp log-neighbor-changes
(Config-router)#neighbor xxx.x.xx.x remote-as 101
(Config-router)#neighbor xxx.x.xx.x ebgp-multihop 3
(Config-router)#redistribute rip metric 1
Config-router)#no auto-summary
|
Routeur R3 |
(Config)#interface Serial1/0
(Config-if)#ip address xxx.x.xx.x xxx.xxx.xxx.x
(Config-if)#encapsulation frame-relay IETF
(Config-if)#no fair-queue
(Config-if)#frame-relay map ip xxx.x.xx.x 302 broadcast
(Config-if)#no frame-relay inverse-arp
(Config-if)#frame-relay lmi-type ansi
(Config)#router bgp 101
(Config-router)# no synchronization
(Config-router)#bgp router-id xx.xx.xx.xx
(Config-router)#bgp log-neighbor-changes
(Config-router)#neighbor xxx.x.xx.x remote-as 100
(Config-router)#neighbor xxx.x.xx.x ebgp-multihop 3
(Config-router)#no auto-summary |
Les protocoles RIP et BGP s’exécutent sur R2. Si vous vérifiez avec show ip bgp la commande, vous pouvez voir que le préfixe xx.x.x.x network est affiché avec une métrique de 1, qui est dérivée du protocole RIP.
Cependant, dans R3 qui s'exécute sur eBGP, le réseau est annoncé en tenant compte de la valeur MED dérivée de l'IGP. Dans ce cas, il s’agit du protocole RIP. Le préfixe 10.0.0.0 est annoncé avec la valeur IGP MED, qui est la métrique 1 du protocole RIP. Ceci est visible dans cette sortie.
À partir de ce scénario, le comportement du MED, dans le cas où les réseaux sont injectés au routeur BGP via la commande networkorredistributecest vu où la valeur MED réelle est remplacée par celle de la métrique IGP.
Étant donné que cet attribut est un indice pour les voisins externes sur la préférence de chemin dans un AS, comme indiqué précédemment, il n'est pas toujours considéré s'il y a d'autres attributs plus importants pour déterminer la meilleure route.
Afin d'avoir le même effet avec un attribut plus déterministe, utilisez set as-path prepend la commande sous la route map.
Si vous faites précéder le chemin AS de certaines routes, il continue d’être vu par d’autres AS. Pour plus d'informations sur l'utilisation de AS-path prepend, référez-vous àUtilisation de la commande set-aspath prepend.
Informations connexes