Le Border Gateway Protocol (BGP) est le protocole qui connecte tous les réseaux sur Internet. Il permet à votre ordinateur d’envoyer et de recevoir des données provenant d’autres ordinateurs situés n’importe où dans le monde. Le BGP définit la manière dont les informations ou le trafic doivent circuler sur Internet, à la manière d’un GPS pour le Web.
Le BGP fonctionne comme un service postal international. Le réseau des services postaux du monde entier nous permet d’envoyer des lettres et des colis d’un endroit à un autre. Le BGP fait quelque chose de similaire pour les données : il contribue à les acheminer sur Internet comme le ferait un facteur.
- Qu’est-ce que le routage BGP ?
- Fonctionnement du routage BGP
- Pourquoi le Border Gateway Protocol est-il important ?
- 8 fonctions principales du BGP
- Quels sont les problèmes courants du routage BGP ?
- Le paysage des menaces liées au BGP
- Existe-t-il des alternatives au BGP ?
- En résumé : comprendre et utiliser le routage BGP dans l’entreprise
Qu’est-ce que le routage BGP ?
Le Border Gateway Protocol (BGP) est un protocole de passerelle externe qui permet l’échange d’informations de routage et d’accessibilité entre les systèmes autonomes (AS) sur Internet.
Le BGP, défini dans le RFC 1163 et le RFC 1267, joue un rôle important dans la formation de la topologie de l’Internet mondial. Il connecte des réseaux exploités indépendamment, ou AS, en leur permettant d’échanger des informations sur leur accessibilité.
En partageant ces mises à jour avec leurs voisins, les routeurs BGP peuvent actualiser les informations qu’ils ont enregistrées sur le meilleur itinéraire possible pour atteindre un réseau donné. Le routeur informe ensuite ses voisins de cette modification, ce qui leur permet de faire de même à leur tour. Ainsi, le maillage complexe qui constitue l’Internet mondial peut rester connecté en permanence.
Fonctionnement du routage BGP
Le routage BGP fonctionne grâce à l’échange de messages entre systèmes autonomes (AS). Un AS est un groupe de réseaux gérés par une organisation ou une entité unique. Chaque AS possède son propre numéro, qui permet de l’identifier dans les messages BGP.
Communications entre systèmes autonomes (AS)
Lorsque deux AS communiquent, ils échangent des informations sur leurs réseaux respectifs. Il peut s’agir notamment de plages d’adresses IP, de masques de sous-réseau et d’autres données liées au réseau. Ces informations servent ensuite à établir une table de routage contenant tous les itinéraires possibles entre deux AS.
Mises à jour des itinéraires
Une fois la table de routage établie, elle doit être régulièrement mise à jour afin que toute modification du réseau y soit reflétée. Ce processus, appelé mise à jour des itinéraires, consiste à échanger des messages entre deux AS pour maintenir leurs tables de routage respectives à jour.
Attributs des chemins BGP
En plus d’échanger des informations sur les réseaux, le BGP utilise également des attributs de chemin pour déterminer l’itinéraire à emprunter lors de l’envoi de paquets d’un AS à un autre. Ces attributs comprennent notamment le nombre de sauts, la latence et le coût de transmission. En prenant ces facteurs en compte, le BGP garantit que les paquets empruntent l’itinéraire le plus efficace possible.
Pourquoi le Border Gateway Protocol est-il important ?
Le BGP est un élément essentiel du fonctionnement actuel d’Internet. Sans lui, les différents réseaux ne pourraient ni communiquer ni partager des informations sur les itinéraires, ce qui empêcherait d’envoyer efficacement et en toute sécurité des données d’un endroit à un autre.
Le BGP permet l’échange d’informations entre différents réseaux et leur permet de déterminer le meilleur chemin pour acheminer les données. Les fournisseurs d’accès à Internet, les grandes organisations et les fournisseurs cloud l’utilisent pour connecter leurs réseaux entre eux et au reste d’Internet. Le BGP permet également de faire transiter le trafic par l’itinéraire le plus efficace possible, ce qui contribue à réduire la latence et à améliorer les performances.
8 fonctions principales du BGP
Le BGP assure des fonctions essentielles au fonctionnement d’Internet : il maintient les informations de routage, sélectionne l’itinéraire le plus court et assure la redondance en cas d’erreur de routage, tout en fournissant une sécurité grâce à l’authentification et en facilitant la communication entre différents types de réseaux.
1. Maintenir les informations de routage
Le BGP maintient une table de routage à jour, qu’il actualise régulièrement avec des informations sur tous les itinéraires disponibles sur Internet. Les routeurs BGP utilisent cette table pour déterminer les meilleurs chemins afin d’envoyer des paquets d’un réseau à un autre.
2. Sélectionner le meilleur itinéraire pour l’envoi des paquets
Le BGP utilise différents paramètres, comme la distance et la latence, pour calculer le meilleur itinéraire d’envoi des paquets. Les routeurs BGP disposent généralement de plusieurs chemins possibles et sélectionnent celui qui offre les meilleures performances.
3. Assurer la redondance en cas de défaillance d’un itinéraire
Le BGP réachemine automatiquement le trafic par un autre chemin s’il détecte qu’un chemin principal ne fonctionne pas.
4. Détecter les boucles dans les chemins de routage
Le BGP peut détecter et éliminer les boucles dans les chemins de routage grâce à un ensemble d’algorithmes appelé processus de décision BGP. Cela permet de garantir que les paquets empruntent l’itinéraire le plus efficace possible, sans gaspiller de bande passante ni effectuer de détours inutiles.
5. Empêcher les attaques malveillantes
Le BGP peut filtrer le trafic malveillant en vérifiant que les messages BGP proviennent de systèmes autonomes légitimes.
6. Assurer la sécurité
Le BGP authentifie les messages échangés entre les routeurs à l’aide d’un mot de passe ou d’une clé préconfiguré. Cela contribue à garantir que seules les entités autorisées peuvent échanger des informations et empêche les acteurs malveillants de perturber le trafic.
7. Contrôler le flux du trafic
Le BGP permet aux fournisseurs d’accès à Internet de contrôler la circulation du trafic sur leurs réseaux en spécifiant l’itinéraire emprunté lors de l’envoi de paquets d’un réseau à un autre.
8. Faciliter les communications réseau
Le BGP permet la communication entre des réseaux tels qu’IPv4 et IPv6. Cela contribue à garantir que tous les appareils peuvent communiquer entre eux, quel que soit le type de réseau auquel ils sont connectés.
Quels sont les problèmes courants du routage BGP ?
Malgré ses nombreux avantages, l’utilisation du BGP pour acheminer le trafic sur Internet comporte certains problèmes, tant en matière d’applicabilité générale (par exemple, la stabilité et la configuration) que de sécurité (par exemple, la manipulation et le détournement d’itinéraires).
Problèmes généraux d’applicabilité du BGP
Le routage BGP présente plusieurs problèmes importants à connaître, notamment les délais de propagation et les instabilités potentielles dues à la configuration manuelle.
Délai de propagation
L’un des principaux problèmes liés à l’utilisation du BGP est que les modifications apportées à un réseau peuvent mettre longtemps à se propager à l’ensemble des autres réseaux connectés. Cela peut poser problème si vous devez effectuer rapidement des changements ou si votre réseau dépend d’informations à jour.
Instabilité
Autre problème : le BGP peut provoquer une instabilité s’il n’est pas correctement configuré. Si les itinéraires ne sont pas correctement définis, les paquets peuvent être acheminés de manière inefficace, ce qui entraîne des performances médiocres et de potentielles interruptions de service.
Configuration manuelle
Le BGP nécessite une configuration manuelle, qui peut prendre du temps et être source d’erreurs. Ainsi, toute erreur lors de la configuration des itinéraires peut entraîner des problèmes ultérieurs. De plus, le BGP évolue mal lorsqu’il doit gérer un grand nombre de routeurs ou d’importants volumes de données acheminés simultanément.
Problèmes de sécurité du BGP
Certains problèmes de sécurité liés au routage BGP découlent des problèmes généraux évoqués ci-dessus, mais aussi des tentatives actives de criminels qui cherchent à exploiter le BGP en manipulant ou en détournant des itinéraires à des fins malveillantes.
Manipulation des itinéraires BGP
La manipulation des itinéraires BGP constitue une grave menace pour l’intégrité d’un réseau, car elle consiste pour des acteurs malveillants à modifier délibérément les tables BGP afin d’empêcher le trafic d’atteindre sa destination prévue. Cela peut non seulement entraîner une perte de données, mais aussi perturber considérablement la continuité des services et être exploité dans divers scénarios de cyberattaque.
En outre, la manipulation des itinéraires BGP peut nuire à la fiabilité des routes et obliger les utilisateurs à vérifier manuellement les itinéraires ou à déployer des produits de sécurité supplémentaires pour détecter les tentatives de manipulation.
Détournement d’itinéraires BGP
Il s’agit d’une méthode d’exploitation qui permet aux attaquants d’annoncer les préfixes d’adresses IP d’une victime afin de réacheminer le trafic par leur propre réseau, ce qui entraîne une instabilité et une charge accrue due à l’afflux soudain de trafic. Dans certains cas, le détournement d’itinéraires BGP peut permettre aux attaquants d’accéder à des flux de données non chiffrés ou de contourner les mesures d’atténuation fondées sur des listes de blocage IP pour lancer des campagnes non sollicitées comme le spam.
Déni de service (DoS) BGP
Cette attaque malveillante cible principalement les protocoles de routage BGP. Lors de cette attaque, un cybercriminel envoie au système victime un trafic BGP inattendu ou indésirable, ce qui épuise toutes les ressources disponibles et rend impossible le traitement du trafic BGP légitime.
Le paysage des menaces liées au BGP
Le BGP a été impliqué dans de nombreux incidents de sécurité au fil des ans. L’incident le plus notable s’est produit en février 2008, lorsqu’un détournement BGP a provoqué une panne mondiale de YouTube.
Plus récemment, plusieurs événements survenus en 2017 ont mis en lumière des vulnérabilités existantes. En août 2017, le Japon a subi une panne à l’échelle du pays en raison d’une erreur de Google qui a divulgué des annonces BGP, envoyant le trafic Internet japonais vers un trou noir.
En octobre de la même année, des services tels que Twitter et Google au Brésil ont été perturbés par un autre incident de fuite BGP. En novembre 2017, le fournisseur de dorsale Internet Level 3 a subi une mauvaise configuration de routeur qui a provoqué une importante fuite d’itinéraire et qui a fini par toucher directement Comcast et, par conséquent, interrompre Internet dans de vastes régions des États-Unis.
Avançons jusqu’au 4 octobre 2021. Facebook et ses filiales ont subi une panne majeure qui a touché des utilisateurs dans le monde entier. La panne a été attribuée à un BGP défectueux, qui a interrompu le routage du trafic. De nombreux utilisateurs ne pouvaient ainsi plus accéder à leurs comptes ni utiliser les services proposés par Facebook et ses filiales. La panne a duré plusieurs heures avant d’être résolue et a coûté à l’organisation 60 millions de dollars US en manque à gagner.
Se protéger contre les menaces BGP
Pour se protéger efficacement contre les menaces BGP, il est nécessaire de mettre en place des contre-mesures et des dispositifs de protection appropriés. L’une de ces mesures de sécurité est la Resource Public Key Infrastructure (RPKI), un système cryptographique conçu spécifiquement pour l’authentification de l’origine des itinéraires, qui contribue à prévenir les détournements et les fuites.
Bien que la RPKI se soit révélée très efficace pour protéger les réseaux BGP, son adoption reste faible. L’autre possibilité consiste à déployer des outils d’apprentissage automatique pour détecter, classer et analyser les anomalies BGP. Cette méthode a déjà donné certains résultats, comme le montrent des études menées par le MIT.
Existe-t-il des alternatives au BGP ?
Plusieurs alternatives sont disponibles pour ceux qui ne souhaitent pas utiliser toutes les fonctionnalités offertes par le BGP ou n’en ont pas besoin. Les plus importantes sont Open Shortest Path First (OSPF) et Enhanced Interior Gateway Routing Protocol (EIGRP).
Open Shortest Path First (OSPF)
OSPF est un protocole de routage à état de liens utilisé pour trouver le meilleur chemin entre la source et la destination dans un réseau IP. Il repose sur l’algorithme de Dijkstra, qui calcule le chemin le plus court entre deux nœuds. OSPF est un protocole intradomaine, c’est-à-dire qu’il est utilisé au sein d’un seul système autonome.
L’un des principaux avantages d’OSPF par rapport aux autres protocoles de routage, notamment le BGP, réside dans son choix efficace des chemins. De plus, OSPF converge plus rapidement que le BGP : il peut donc détecter rapidement les changements du réseau et mettre à jour ses tables de routage en conséquence.
Cependant, l’un des inconvénients d’OSPF est qu’il nécessite davantage de mémoire et de puissance de calcul que le BGP, car il doit stocker dans sa table de routage toutes les informations sur les liaisons.
Enhanced Interior Gateway Routing Protocol (EIGRP)
EIGRP est un protocole de routage à vecteur de distance avancé développé par Cisco Systems. Il s’agit d’un protocole hybride qui combine des fonctionnalités des protocoles de routage à vecteur de distance et à état de liens, ce qui lui permet d’être plus efficace que chacun d’eux pris séparément. EIGRP utilise l’algorithme de mise à jour diffusée (DUAL) pour calculer le chemin le plus court vers une destination au sein d’un réseau. Cet algorithme permet une convergence rapide : lorsque des changements surviennent dans le réseau, EIGRP peut rapidement s’adapter et trouver de nouveaux chemins pour la transmission des données.
Par rapport au BGP, EIGRP présente plusieurs avantages. Il est plus facile à configurer et à maintenir que le BGP, car il nécessite moins de paramètres et moins d’interventions manuelles. Il utilise également plus efficacement des ressources telles que la bande passante et la mémoire, ce qui le rend mieux adapté aux réseaux disposant de ressources limitées. Il offre en outre des temps de convergence plus courts que le BGP.
En revanche, EIGRP présente certains inconvénients par rapport au BGP. Par exemple, bien qu’EIGRP prenne en charge les adresses IPv4 et IPv6, le BGP prend également en charge plusieurs systèmes autonomes, ce qui le rend mieux adapté aux réseaux de grande taille et aux topologies complexes. En outre, EIGRP étant un protocole propriétaire, son implémentation sur des équipements d’autres fournisseurs peut s’avérer difficile.
En résumé : comprendre et utiliser le routage BGP dans l’entreprise
Le BGP est un protocole puissant et polyvalent qui permet aux organisations de créer des réseaux informatiques fiables en échangeant des informations de routage entre systèmes autonomes. Le BGP offre des fonctionnalités telles que la sélection des chemins et le filtrage des itinéraires, essentielles pour assurer la meilleure connectivité réseau possible.
Cependant, le BGP présente des vulnérabilités auxquelles il faut remédier pour maintenir la sécurité des opérations de routage. Par ailleurs, le BGP n’est pas le seul protocole de routage disponible et les organisations peuvent envisager d’utiliser d’autres protocoles, tels qu’OSPF ou EIGRP.
Notez que, bien que cette présentation du BGP constitue une bonne introduction, elle est loin d’être exhaustive. Si vous êtes un jour chargé de gérer un routeur BGP, prenez le temps de consulter les RFC qui lui sont associées.
Si vous envisagez d’aller au-delà du BGP, vous pouvez en savoir plus sur OSPF et EIGRP et découvrir lequel serait le plus avantageux pour votre entreprise