BGP

BGP = Border Gateway Protocol

Dans les chapitres précédents, nous avons vu plusieurs protocole IGP comme RIP, OSPF et EIGRP. Maintenant, au tour du protocole BGP.

Le protocole BGP est le seul protocole EGP utilisé de nos jours. Il à exactement le même rôle que nos protocoles IGP soit :

  • Apprendre des routes de ses voisins
  • Choisir la meilleur route à emprunter
  • Changer de route en cas de dysfonctionnement

Comme nous avons pu le voir dans l’article « Introdution » . Les protocoles de routage EGP ont pour but d’échanger leurs routes avec d’autres entreprises. (Contrairement à IGP).

Chaque réseaux BGP appartenant à une même entreprise forment un système autonome.

Chaque système autonome est identifié par un numéro ASN (ASN = Autonomous System Number). A partir de là , le protocole BGP va fonctionner différemment en fonction de ce numéro ASN :

  • iBGP (internal BGP) = Routage au sein d’une même ASN
  • eBGP (external BGP) = Routage entres ASN

Choix de la meilleur route 

Comme pour RIP, le protocole BGP va choisir sa meilleur route en fonction du nombre d’équipement qui le sépare de sa destination. Sauf que là, il prend uniquement en compte le nombre d’ASN traversé.

Sur l’exemple du dessus, on se met dans l’ASN 20. Afin d’atteindre le réseau 192.168.0.0/24 nous avons deux possibilités :

  • Soit par l’ASN 10 , ce qui nous fait traverser 3 ASN.
  • Soit par l’ASN 100, ce qui nous fait traverser 2 ASN.

L’AS_Path (Chemin d’AS) nous montre le chemin à emprunter afin d’atteindre ce réseau.

BGP désignera le chemin le plus court comme meilleure route.

Configuration courante

      Chez nous , notre routeur INTERNET est relié à notre fournisseur d’accès internet (FAI ou ISP). Cette configuration est appelé « Single Homed ». Ces deux routeurs sont dans deux ASN différentes. La route par défaut va être apprise à notre routeur INTERNET par le routeur FAI via de l’eBGP. Notre routeur va apprendre l’adresse public au FAI.

Il existe cependant d’autre type d’architecture :

Configuration du BGP

Pour rentrer dans la configuration du protocole BGP , tapez la commande suivante :

router(config)#router bgp X          ! X = ASN

Dans les protocoles IGP , nous avions l’habitude de mettre la commande « network » afin de rechercher des voisins (neighbor’s). Pour le protocole BGP , nous sommes obligé de rentrer nos voisins ainsi que leurs numéros ASN manuellement de la façon suivante :

router(config-router)#neighbor X.X.X.X remote-as Y

X.X.X.X = adresse IP de notre voisin

Y = ASN de notre voisin

Exemple :

Vérifications des relations de voisinages.

  • Vérification des connections TCP avec la commande :
router#show tcp brief

Cette commande va lister toutes les connexions TCP du routeur, il faut vérifier que notre routeur discute bien avec ses voisins sur le port 179

  • Liste des voisins BGP
router#show ip bgp summary

Cette commande va lister tous les voisins de notre routeur BGP via leurs « Router-ID ».

Nos relations de voisinage peuvent être dans plusieurs états :

  • Idle : Voisin administrativement désactivé avec la commande « neighbor X.X.X.X shutdown »
  • Connect : La connexion TCP rencontre des problèmes
  • Active : Connection TCP active , mais aucun message BGP recu
  • Opensent : Le routeur local à envoyé le premier message BGP
  • Openconfirm : Le routeur local à recu un message BGP du routeur distant. cependant la relation de voisinage ne peut se faire
  • Established : Les deux routeurs sont voisins.

La commande network

La commande « network » du protocole BGP est très différente de la commande network des protocoles vu précédemment.

Elle sert uniquement à insérer un réseau DEJA PRESENT DANS LA TABLE DE ROUTAGE dans la table BGP.

Cette table BGP va ensuite être diffuser aux voisins BGP.

router(config-router)#network X.X.X.X mask 255.255.255.0

La commande network ne prend pas en compte les « Wildcard-mask ».

La table BGP peut être consulté avec la commande suivante :

router#show ip bgp

 

Noël NICOLAS

Administrateur Réseau
10 ans d’expérience
CCNA Routing and Switching
Fondateur du site FingerInTheNet

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *