
Hernan Schmidt - stock.adobe.com
Réseau : comment configurer et dépanner le routage BGP
BGP est le principal protocole de routage sur Internet, permettant la communication entre les fournisseurs de services Internet et les grands réseaux. Ce guide couvre ses fonctionnalités, sa configuration et les éléments essentiels à son dépannage.
Les fournisseurs de services et les professionnels travaillant avec des réseaux IP s’accordent à dire que BGP (Border Gateway Protocol) est l’un des protocoles les plus complexes et les plus difficiles à configurer. Cependant, l’importance qu’il accorde à la sécurité et à l’évolutivité en fait un élément essentiel d’Internet.
Ce didacticiel examine les fonctionnalités de BGP et propose des options de configuration et de dépannage, en particulier pour les administrateurs de fournisseurs d’accès à Internet ou de déploiements de réseaux régionaux ou mondiaux de grande envergure. Ces étapes et commandes permettent de gérer les routeurs BGP afin qu’ils puissent échanger des informations de manière efficace et sécurisée dans le contexte de grands réseaux ou de fournisseurs d’accès à Internet.
Comment fonctionne le protocole BGP ?
Le BGP est le protocole de routage qui permet à Internet de fonctionner. Le protocole échange des informations sur les tables de routage entre les routeurs qui parlent le BGP, ce qui permet le trafic à travers des environnements de réseaux autonomes et divers.
L’attribution des adresses IP n’étant pas structurée, la plupart des routeurs du réseau central des fournisseurs de services doivent échanger des informations sur plusieurs centaines de milliers de préfixes IP. Le protocole BGP peut gérer cela, car il s’agit d’un protocole de routage hautement évolutif et axé sur la sécurité.
Les FAI (fournisseurs d’accès à Internet) échangent des informations de routage BGP entre les entités commerciales sur Internet. Ils utilisent des accords de peering pour définir les conditions de sécurité nécessaires aux échanges de routage entre FAI voisins. Les administrateurs configurent BGP pour qu’il respecte ces accords.
Tous les routeurs adjacents doivent également satisfaire aux politiques de routage. Les implémentations pratiques de BGP fournissent un ensemble riche de filtres d’itinéraires qui permettent aux FAI de défendre leurs réseaux et de contrôler ce qu’ils annoncent à leurs concurrents.
Systèmes autonomes. Dans la terminologie BGP, un domaine de routage indépendant – ce qui signifie presque toujours un réseau de FAI – est appelé système autonome (AS, pour autonomous system). Les FAI choisissent BGP comme protocole de routage dans deux cas de figure :
1/ BGP externe. Échange de tables de routage entre différents FAI sur Internet.
2/ BGP interne. Échange de tables de routage au sein du propre réseau d’un FAI.
BGP évalue également les tables de routage et les informations le long de plusieurs routes entre les FAI, en utilisant un algorithme de sélection qui détermine le meilleur chemin pour diriger le trafic sur la base de commandes et d’attributs spécifiés. Toutefois, le meilleur chemin n’est pas toujours le plus court.
Attributs BGP. De nombreux autres protocoles de routage se concentrent uniquement sur la recherche du chemin optimal vers toutes les destinations connues. BGP ne peut pas adopter cette approche simpliste, car les accords de peering entre les fournisseurs d’accès à Internet se traduisent souvent par des politiques de routage complexes. Pour aider les administrateurs réseau à mettre en œuvre ces politiques, BGP associe de nombreux attributs à chaque préfixe IP, dont les suivants :
- Chemin d’accès à l’AS. Le chemin complet documentant les AS à travers lesquels un paquet doit voyager pour atteindre la destination.
- Préférence locale. Le coût interne d’une destination, qui assure la cohérence à l’échelle de l’AS.
- Discriminateur de sortie multiple. Attribut BGP qui permet aux FAI adjacents de préférer un point de peering à un autre.
- Communautés. Un ensemble de balises génériques qui peuvent signaler diverses politiques administratives entre les routeurs BGP.
Étant donné que BGP tient compte de ces facteurs, il peut orienter le trafic de manière à ce qu’il emprunte un chemin depuis la destination et un autre chemin sur le trajet de retour, ce qui donne lieu à un routage asymétrique. Cela ne pose généralement pas de problème pour le routage de base, mais peut compliquer les itinéraires avec des pare-feu et des réseaux privés virtuels (VPN).
Convergence BGP. La conception et la mise en œuvre de BGP se concentrent sur la sécurité et l’évolutivité, ce qui le rend plus difficile à configurer que d’autres protocoles de routage. Cette complexité est encore plus évidente lors de la configuration d’autres stratégies de routage et de commandes réseau. BGP est également l’un des protocoles de routage dont la convergence est la plus lente.
La lenteur de la convergence de BGP impose une conception à deux protocoles d’un réseau FAI :
- Les administrateurs réseau utilisent souvent un protocole de routage interne, tel que Open Shortest Path First (OSPF) ou Intermediate System to Intermediate System (IS-IS), afin d’obtenir une convergence plus rapide pour les routes internes, y compris les adresses IP des routeurs BGP.
- Les administrateurs configurent le BGP sur les routeurs pour échanger des routes Internet.
La convergence rapide d’OSPF ou d’IS-IS permet de contourner une défaillance au sein du réseau central. En même temps, le BGP sur un protocole de routage interne répond aux exigences d’évolutivité, de sécurité et de politique. En outre, si vous migrez les routes des clients vers le protocole BGP, les problèmes des clients n’affectent pas la stabilité de votre réseau central. Par exemple, les interruptions de liaison entre votre routeur et celui d’un client n’affectent pas votre infrastructure.
En raison de la complexité inhérente au protocole BGP, les clients et les petits fournisseurs de services Internet ne déploient souvent le protocole BGP que là où il est nécessaire, par exemple sur les points d’interconnexion. Ils le configurent généralement sur un sous-ensemble minimal de routeurs principaux, ceux qui se trouvent entre les points d’interconnexion, comme indiqué ici.

Les routeurs utilisant le protocole BGP doivent également générer une route par défaut dans le protocole de routage interne. Cela afin d’attirer le trafic vers des destinations Internet inconnues des autres routeurs de votre réseau.
Pourquoi utilise-t-on BGP ?
Toute entreprise qui souhaite obtenir un accès redondant à Internet doit avoir son propre AS et échanger des informations BGP avec ses fournisseurs d’accès. Il est probable que vous déployiez BGP sur des routeurs centraux et périphériques. Prévoyez donc d’inclure BGP sur ces routeurs dans le cadre de la conception initiale de votre réseau, comme illustré ici.

Même s’il est possible que vous n’utilisiez pas le protocole BGP partout lors du déploiement initial du réseau, un schéma directeur pourrait vous être utile lorsque vous devrez faire évoluer la partie du réseau qui utilise le protocole BGP.
En outre, le protocole BGP nécessite un maillage complet de sessions BGP internes entre les routeurs d’un même AS. Il est possible d’utiliser des réflecteurs de routes BGP ou des confédérations pour rendre le réseau évolutif.
Une autre raison de déployer BGP sur l’ensemble de votre réseau est que les VPN de type MPLS, les déploiements de qualité de service à grande échelle, ou les implémentations de cache web différencié à grande échelle s’appuient sur BGP pour transporter les informations dont ils ont besoin.
Les éléments de base d’une configuration BGP
Les commandes et les configurations BGP varient selon les fournisseurs de routeurs, mais le processus global est similaire pour tous les appareils. Avant de commencer, assurez-vous de disposer d’une documentation précise de toutes les adresses IP, masques de sous-réseau, références AS et autres paramètres réseau. La configuration du protocole BGP est déjà suffisamment complexe pour ne pas ajouter des informations inexactes sur le réseau. Assurez-vous également de la connectivité de base entre tous les appareils concernés. Ne laissez pas un filtre de paquets gênant perturber le processus.
Commencez par configurer le routeur. Activez l’accès administratif sécurisé, mettez à jour le micrologiciel et passez en revue les accords de peering avant de commencer la configuration. Vous devez spécifier les voisins BGP, définir les politiques de routage et annoncer les réseaux de votre routeur.
Voici un exemple des étapes de la configuration BGP de base sur un routeur Cisco :
1/ Entrez dans le mode de configuration BGP : router bgp {AS}.
2/ Définissez les voisins BGP du routeur à l’aide des adresses IP et de l’AS distant : neighbor {IP} remote-as {AS}.
3/ Annoncez les réseaux de votre routeur aux voisins : network {network-address} mask {subnet-mask}.
4/ Vérifiez la connectivité à l’aide d’outils tels que ping.
5/ Définissez un ID pour le routeur : bgp router-id {router-ID}.
6/ Confirmez les paramètres : show ip bgp summary et show ip bgp.
Vous avez maintenant configuré le protocole BGP entre des routeurs situés dans deux environnements AS distincts.
Consultez la documentation de vos appareils réseau spécifiques pour connaître les options et paramètres supplémentaires. Toutefois, les informations générales devraient être similaires d’un fournisseur à l’autre.
Les problèmes potentiels sont les suivants :
- Les fluctuations du protocole BGP (le statut d’un routeur ou d’une interface augmente et diminue) en raison de problèmes de matériel ou de support.
- Congestion du réseau.
- Des systèmes d’exploitation (ou des configurations de routeur) anciens et obsolètes.
- Problèmes d’authentification.
N’oubliez pas de configurer la journalisation et la surveillance. Testez également toute configuration de basculement ou de redondance pour vous assurer qu’elle fonctionne comme prévu.
Comment dépanner BGP
Une approche structurée du dépannage BGP peut vous permettre de passer du diagnostic initial du problème à sa résolution. Voici un scénario simple avec un seul routeur BGP dans le réseau.

Les petits fournisseurs de services Internet utilisent des conceptions similaires qui n’offrent pas de connectivité BGP à leurs clients.
Tout d’abord, identifiez la source du problème de connectivité que vous déboguez. BGP peut être impliqué si un client signale qu’il a une connectivité Internet limitée ou inexistante au-delà de votre réseau. Suivez les étapes suivantes pour trouver la source du problème :
A/ Effectuez un traceroute à partir d’un poste de travail sur le réseau local problématique. Si la trace atteint le premier routeur parlant BGP ou dépasse la limite de votre réseau, il s’agit probablement d’un problème BGP.
B/ Vérifiez si le routeur BGP annonce une route par défaut dans votre réseau. Sans route par défaut, les autres routeurs de votre réseau ne peuvent pas atteindre les destinations Internet.
Si vous ne pouvez pas accéder à un poste de travail connecté au réseau local, effectuez un traceroute à partir du routeur du client. Veillez à utiliser l’adresse LAN du routeur comme adresse IP source dans les paquets traceroute.
1/ Résolution des problèmes liés aux routeurs BGP adjacents
Le protocole BGP doit établir une session TCP entre les routeurs BGP adjacents avant qu’ils puissent échanger des routes. La première étape consiste à vérifier l’état des sessions BGP entre les routeurs.
Les administrateurs configurent les voisins BGP manuellement. Les erreurs de configuration potentielles sont les suivantes :
- Inadéquation de l’adresse IP du voisin. L’adresse IP de destination configurée sur un voisin BGP doit correspondre à l’adresse IP source – ou à l’adresse IP de l’interface directement connectée – configurée sur l’autre voisin.
- Inadéquation du numéro AS. Le numéro d’AS du voisin configuré d’un côté de la session BGP doit correspondre au numéro d’AS réel du voisin.
Vous pourriez également avoir un problème avec les filtres de paquets déployés sur le routeur qui parle le BGP. Ces filtres doivent envoyer des paquets vers et depuis le port TCP 179.
2/ Dépannage de la propagation des routes BGP.
Si vos utilisateurs souhaitent recevoir du trafic en provenance d’Internet, le préfixe IP attribué à votre réseau doit être visible sur l’ensemble du réseau. Les étapes suivantes expliquent comment créer un préfixe IP visible :
A/ Les administrateurs réseau insèrent le préfixe IP dans leur table de routage BGP.
B/ Le routeur BGP annonce le préfixe IP à ses voisins BGP.
C/ Les autres réseaux propagent le préfixe IP sur Internet.
A/ La route est-elle correctement indiquée dans BGP ? La plupart des protocoles de routage insèrent automatiquement les sous-réseaux IP directement connectés dans leurs tables ou bases de données de routage. Pour des raisons de sécurité, le protocole BGP est une exception. Il ne crée un préfixe IP que si vous le configurez manuellement. Par exemple, les routeurs Cisco configurent les préfixes IP annoncés à l’aide de l’instruction network.
Une autre option est la redistribution des routes, qui permet au réseau de diriger le trafic à partir d’un protocole différent. Toutefois, cette pratique est fortement déconseillée dans l’environnement Internet.
En outre, BGP n’annonce un préfixe IP configuré que si la table de routage IP contient une route correspondante, afin d’éviter d’attirer du trafic non routable. Vous pouvez générer la route IP correspondante en résumant les routes, mais il est généralement préférable de configurer une route statique qui pointe vers une interface nulle ou son équivalent.
Pour vérifier si votre préfixe IP figure dans votre table de routage BGP, utilisez la commande BGP show. Ces commandes varient en fonction du type de routeur utilisé. Par exemple, tapez show ip bgp prefix mask sur un routeur Cisco.
B/ La route est-elle annoncée à vos voisins ? Par défaut, le routeur BGP annonce les préfixes IP de la table BGP à tous les voisins. Vous devez mettre en œuvre des filtres de sortie et d’entrée pour modifier ce comportement par défaut afin de respecter les exigences en matière de sécurité et de stratégie de routage.
Si vous avez appliqué des filtres de sortie vers vos voisins BGP, vous devez vérifier si ces filtres permettent au routeur BGP de propager le préfixe IP aux voisins externes. La commande permettant d’afficher les routes annoncées à un voisin BGP sur un routeur Cisco est show ip bgp neighbor ip-address advertised.
C/ La route est-elle visible sur Internet ? Même si vous annoncez avec succès votre préfixe IP à vos voisins BGP, il se peut que le routeur ne le propage pas sur Internet. Il est difficile de savoir ce que le routeur BGP propage au-delà des limites de votre réseau, mais les outils de visualisation BGP peuvent vous aider dans ce processus. Grâce à ces outils, vous pouvez inspecter les tables BGP en divers points d’Internet et vérifier si votre préfixe IP est parvenu jusqu’à ces destinations.
Quelques facteurs peuvent bloquer votre préfixe IP sur Internet. Le plus courant est l’atténuation des sauts de route BGP. Si un préfixe IP disparaît et réapparaît trop souvent sur une courte période, alors il est bloqué pendant une période prolongée, pouvant aller jusqu’à une heure (par défaut). Cela peut se produire si vous effacez vos sessions BGP ou si vous modifiez une configuration. Si votre préfixe IP est bloqué, vous devez attendre.
Vous pourriez également avoir une entrée invalide ou manquante dans les registres de routage IP. Il est également possible que les fournisseurs de services Internet en amont aient mis en place des filtres d’entrée. Ces problèmes dépassent le cadre du dépannage technique BGP. Votre fournisseur d’accès en amont peut donc vous aider à résoudre le problème.
3/ Dépannage BGP avancé
Jusqu’à présent, cet article a permis d’identifier si un problème de routage est un problème BGP, de dépanner les sessions BGP et de dépanner l’« origination » et la propagation des routes IP.
Nous allons maintenant nous pencher sur un scénario plus avancé : les réseaux de transit des FAI.

Pour établir une connectivité de bout en bout sur le réseau d’un fournisseur de services, le FAI doit recevoir les préfixes IP des clients via BGP et les annoncer aux autres FAI. Le processus exact doit se dérouler en sens inverse ; le FAI doit annoncer la route par défaut au client.
Le dépannage BGP à l’échelle du réseau comprend les étapes suivantes :
A/ Recevoir le préfixe IP.
B/ Propager le préfixe IP à travers votre réseau.
C/ Envoyer le préfixe IP aux voisins BGP externes à l’autre extrémité du réseau.
A/ Avez-vous reçu le préfixe ? L’identification des problèmes BGP entrants peut être la partie la plus difficile du dépannage. Les raisons potentielles pour lesquelles un préfixe IP ne figure pas dans votre table BGP sont les suivantes :
- Le voisin n’envoie pas le préfixe.
- Vos filtres entrants bloquent le préfixe.
La fonction de débogage de votre routeur de périphérie est le seul outil qui peut vous aider à identifier le problème. Vous n’avez généralement pas accès à l’autre voisin BGP. Lors du débogage, vous devez tenir compte du fait qu’un voisin BGP peut envoyer plusieurs centaines de milliers d’itinéraires. Veillez à ce que la sortie de débogage produite par la session de dépannage ne surcharge pas le routeur.
En outre, le routeur BGP n’envoie les préfixes que lorsqu’ils changent, et non pas périodiquement comme c’est le cas pour les mises à jour du protocole d’information sur le routage ou les flux d’annonces de l’état du lien OSPF. Votre outil de débogage ne vous montre pas un préfixe IP tant qu’il n’a pas changé ou que vous n’avez pas effacé la session BGP avec votre voisin.
Certains routeurs BGP peuvent stocker une copie séparée de toutes les routes envoyées par un voisin dans une table BGP parallèle. Pour activer cette fonctionnalité sur le système d’exploitation Cisco IOS, saisissez soft-reconfiguration in pour un voisin BGP.
Grâce à la table parallèle par voisin, vous pouvez déterminer avec précision ce que le voisin a envoyé ou le contenu de la table parallèle. Vous pouvez également voir les routes qui ont passé vos filtres d’entrée ou le contenu de la table BGP principale. Cependant, la table parallèle par voisin consomme une grande quantité de mémoire.
B/ Le préfixe IP est-il propagé à travers votre réseau ? Même lorsqu’un routeur de périphérie reçoit un préfixe IP via le protocole BGP, il se peut que celui-ci ne se propage pas jusqu’à l’autre extrémité de votre réseau. Tout d’abord, un BGP interne – ou BGP au sein d’un seul AS – nécessite un maillage complet de sessions BGP entre tous les routeurs. Chaque routeur entre chaque paire de routeurs de périphérie doit exécuter le protocole BGP, faute de quoi le réseau risque d’interrompre le trafic. Cela signifie que le nombre de sessions BGP peut devenir excessivement élevé.
Cette illustration montre les sessions BGP nécessaires dans un petit réseau de quatre routeurs.

Deux outils – les réflecteurs de route BGP et les confédérations BGP – peuvent vous aider à maintenir le nombre de sessions à un niveau raisonnable. Les réflecteurs de route sont les plus couramment utilisés.
Les règles des réflecteurs de route BGP sont les suivantes :
- Le réflecteur de route envoie à tous les autres pairs ce qu’il reçoit d’un client réflecteur de route ou d’un pair BGP externe.
- Le réflecteur de route n’envoie aux autres clients et aux pairs BGP externes que ce qu’il reçoit des clients qui ne sont pas des réflecteurs de route.
Une fois ces règles établies, il est temps d’examiner les sessions BGP de votre réseau. Vérifiez chaque routeur BGP sur le chemin et assurez-vous qu’il n’enfreint pas les règles du réflecteur de route. Les préfixes BGP se propagent de chaque routeur de périphérie vers tous les autres routeurs en utilisant ces règles. C’est là qu’une documentation approfondie du réseau est essentielle.
Une autre raison courante pour laquelle un préfixe IP ne se propage pas sur votre réseau est que les sous-réseaux externes à la périphérie de votre réseau ne sont pas annoncés à vos routeurs principaux.
L’adresse IP du routeur de saut suivant ne change pas lorsqu’un routeur BGP envoie un préfixe IP à un voisin BGP interne. Ainsi, le prochain saut IP d’une route externe est toujours l’adresse IP d’un routeur situé à un saut au-delà du bord de votre AS.
Les administrateurs réseau doivent insérer les sous-réseaux IP qui relient les routeurs de périphérie à leurs voisins externes dans leur protocole de routage interne, tel que OSPF ou IS-IS. Dans le cas contraire, certains routeurs BGP internes décident si le prochain saut BGP est inaccessible et ignorent le préfixe IP. Il apparaît dans la table BGP, mais le routeur ne peut pas l’utiliser ou le propager à d’autres pairs BGP.
C/ Le préfixe est-il envoyé à des voisins externes ? La dernière étape du dépannage de la propagation des routes BGP consiste à vérifier si les préfixes IP transportés sur votre réseau sont annoncés à vos pairs BGP externes. Cette partie explique les techniques de dépannage de la propagation des routes BGP sortantes.
Même si la propagation des routes BGP fonctionne bien, il se peut que les paquets IP ne puissent pas traverser votre réseau. Il s’agit de réseaux purement IP, de sorte que le processus pourrait changer si vous ajoutez du MPLS.
La cause la plus fréquente d’un trou noir dans votre réseau est un routeur sur le chemin de transit qui n’exécute pas BGP et ne sait pas comment acheminer le paquet IP reçu vers le réseau de destination. Le routage IP fonctionne saut par saut. Même si le routeur d’entrée sait quel routeur de sortie utiliser et comment s’y rendre, il ne peut pas transmettre ces informations aux routeurs intermédiaires. Tous doivent également exécuter le protocole BGP.
Pour identifier un trou noir dans votre réseau, effectuez un traceroute depuis le réseau de votre client vers une destination Internet. Le dernier routeur qui répond au traceroute se trouve un saut avant le trou noir.
Même si tous les routeurs principaux de votre réseau doivent exécuter le protocole BGP, les sessions BGP internes ne doivent pas nécessairement suivre la structure physique du réseau. Par exemple, quelques routeurs centraux peuvent servir de réflecteurs de route pour tous les routeurs BGP de votre réseau.
Récapitulons
BGP est un protocole essentiel, mais complexe. De nombreux facteurs compliquent sa configuration et son dépannage, notamment les suivants :
- Les accords de peering qui définissent les politiques de routage et les paramètres de sécurité pour les échanges de routes entre des réseaux distincts.
- Les paramètres de sécurité, y compris les filtres, l’authentification ou d’autres contrôles.
- Les zones du réseau qui échappent à votre contrôle, telles que les autres FAI ou les réseaux partenaires.
- Les paramètres d’unité de transmission maximale personnalisés qui ne correspondent pas.
Commencez à travailler avec BGP après en avoir déterminé la nécessité. Il s’agit d’un protocole courant pour les grands réseaux routés et les FAI, mais la plupart des petites entreprises n’ont jamais besoin de BGP. Si votre entreprise établit qu’elle a besoin de BGP, vous devez remplir certaines conditions préalables avant de commencer la configuration :
- Créez un plan de réseau précis.
- Confirmez que vous disposez des identifiants corrects, notamment des adresses IP, des identifiants de routeur et des numéros AS. Vous avez besoin de ces valeurs pour configurer BGP, alors documentez-les à l’avance.
- Réglez les problèmes de connectivité de base, de sécurité des routeurs ou de congestion du réseau.
- Confirmez que vous disposez des informations d’authentification correctes pour tous les appareils.
Ne sous-estimez pas la complexité du déploiement et de la gestion d’un réseau utilisant le protocole BGP. Le BGP est un protocole complexe, mais vous pouvez maîtriser ce protocole de routage Internet essentiel en comprenant les étapes de configuration et en créant une documentation réseau fiable.