Académique Documents
Professionnel Documents
Culture Documents
Maintenant que vous maitrisez le protocole BGP de manière basique, voyons comment
fonctionne la métrique.
Nous verrons dans un premier temps les attributs utilisés par BGP pour calculer la métrique.
Ensuite nous ferons une mise en pratique, dans laquelle nous manipulerons la métrique.
1) Présentation de la métrique
Quand un routeur reçoit une route, il regarde tous ces tags (attributs), et en déduit la meilleure
route.
Certains de ces attributs sont dits « Well-Known ». C’est-à-dire que tous les constructeurs les
supportent.
En bref, chaque constructeur utilise sa propre liste d’attributs. Le routeur qui reçoit la MAJ
garde ceux qu’il connait.
Ensuite, certains attributs sont dits « Mandatory ». C’est-à-dire qu’ils doivent être inclus
dans les MAJ.
Les autres sont dits « Discretionary ». Ils ne sont pas forcément envoyés dans les MAJ. Nous
verrons des exemples plus tard.
Enfin, certains attributs sont dits « Transitive ». Cela veut dire qu’ils peuvent passer d’AS en
AS.
Les « Non-Transitive » sont des attributs, qui quand ils sont annoncés, ne sortent pas de
l’AS.
Well-known mandatory
Well-known discretionary
Optional transitive
Etc …
Quand BGP reçoit deux routes pour la même destination, il utilise cette liste pour comparer
les routes.
La liste est parcourus comme une ACL, de haut en bas jusqu’à qu’un attribut permette de
différencier les deux routes.
Cette liste est celle utilisée par les routeurs Cisco. Chez d’autres constructeurs, la liste sera
différente.
Les attributs les plus importants sont les 7 premiers (jusqu’à MED).
Comme il n’est pas évident de bien appréhender tous ces attributs, nous allons faire une mise
en pratique.
2) La topologie
L’AS 100 représente notre entreprise. Nous sommes connectés à deux FAI.
Le but est donc d’exploiter ces deux FAI, de manière à favoriser celui qui offre le meilleur
chemin vers la destination.
Si vous voulez établir les relations BGP sur les IP de Loopback, ne pas oublier de :
Pour BGP :
Etc …
Pour OSPF :
Etc …
Pour les routes statiques :
Etc …
Pour R6 nous allons annoncer les routes grâce à BGP. Pour R7, nous allons redistribuer les
routes dans BGP.
R6 :
R7 :
Nous pourrions nous arrêter ici. Mais le but est de manipuler la métrique BGP.
Nous allons donc revenir sur certains attributs, et voir comment influencer BGP dans son
choix de route.
4) Manipulation de la métrique
Weight
Le but du poids est de mettre une préférence sur un voisin ou un autre (le plus haut poids
gagne).
La configuration se fera sur R1. Le poids n’est jamais annoncé, il ne quitte pas le routeur.
Voici la table BGP de R1. Elle indique toutes les routes apprises par BGP.
Actuellement, R1 préfère passer par R2 pour joindre 6.0.0.0 /24
Bon, l’inconvénient c’est qu’il en sera de même pour toutes les routes.
Cela se fait avec une route-map. Nous verrons un exemple plus tard.
Avant de passer à la suite, annulez les changements (et remettez à zéro le processus BGP).
Nous voulons juste voir comment modifier les attributs. Libre à vous de cumuler les
modifications par après.
Local Preference
Pourquoi ?
BGP a parcourus la liste des attributs, afin de différencier les routes de R2 et R3.
Encore une fois, cela s’applique à toutes les routes annoncées par R3.
Pour ne favoriser que certaines d’entre-elles, il faudra utiliser une route-map.
Self Originated
Comme vous avez pu le voir dans le tableau, si arrivé à ce point le routeur n’a pas encore pu
déterminer quelle route est la meilleure, il va favoriser les routes qu’il a lui-même annoncé
(via la commande Network, Aggregate ou Redistribute).
Bien entendu, s’il n’a pas lui-même annoncé de route vers la destination voulue, il passe à
l’attribut suivant (le AS-Path).
AS-Path
Si arrivé à ce point, BGP a toujours le choix entre deux routes (ou plus), il va favoriser celle
passant pas le moins d’AS.
Si vous avez bien annulé les modifications, vous devriez pouvoir constater cela sur R1.
Alors que le chemin R3 -> R5 -> R7 -> R5 implique de passer par 3 AS.
Origin
Si l’AS-Path est équivalent entre deux routes, BGP va favoriser les routes avec le type Origin
le plus faible.
Ici nous pouvons voir la différence entre les routes vers 7.0.0.0 /22 et 6.0.0.0 /22.
En effet, pour annoncer 6.0.0.0 /22, nous avons utilisé la commande Network.
MED
Cet attribut permet d’influencer le choix du routeur pour entrer dans l’AS.
Adresse IP
Route statique (vers 4.4.4.4 pour R3, et vers 3.3.3.3 pour R4)
Relation BGP
Nous allons donc chercher à favoriser R3 pour entrer dans l’AS 100.
Sauf que cette commande ne permet que de modifier la métrique par défaut. Or certaines
routes sont annoncées avec une métrique (donc la métrique par défaut n’aura d’effet).
La métrique (ou MED) dépend de la façon d’annoncer les routes (commande Network,
Redistribute, etc…)
Nous avions dit tout à l’heure que nous utiliserons une route Map de manière à influencer le
routage seulement pour certaines routes.
Par exemple, configurer une Local Preference sur R3, seulement pour les routes vers 7.0.0.0
/22 (et non pas vers 6.0.0.0 /22).
Ou encore, configurer une métrique (MED) de manière à ce que R4 passe par R3 quand il
veut joindre 10.1.13.0 /24.
Nous allons donc voir comment mettre en place une Route Map permettant d’agir sur les
attributs.
Nous verrons l’exemple pour la MED. Libre à vous de faire le test avec un autre attribut.
Première chose à faire, créer une Access List afin d’agir seulement sur le réseau voulu :
R2(config)#route-map R2_MED
R2(config-route-map)#match ip address 1
R2(config-route-map)#set metric 200
Afin que la Route Map ne bloque pas l’annonce des autres réseaux, il faut ajouter une entrée
vide.
Ex :