BGP

Border Gateway Protocol

Le protocole de routage inter-AS d'internet. Sélection du meilleur chemin, attributs, politiques de routage, filtrage et design avancé pour la certification CCIE.

BGP Best Path Selection W · L · L · A · O · M · E · I · A · O · R · C · N Préalable : NEXT_HOP joignable via IGP
1WWeight 2LLocal Pref 3LNH=0.0.0.0 4AAS-PATH 5OOrigin 6MMED 7EeBGP/iBGP 8IIGP metric 9AAIGP 10OOldest 11RRouter-ID 12CCluster-list 13NNeighbor IP
Sélection du meilleur chemin — Préalable & 13 critères
➡️
PRÉALABLE
NEXT_HOP
Well-known Mandatory · type 3
Si le NEXT_HOP est injoignable via l'IGP → route invalide, ignorée. next-hop-self, next-hop-unchanged. NH=0.0.0.0 = route locally originated.
⚖️
DISPONIBLE
Weight · #1 · highest wins
Cisco Local · non propagé
Paramètre propriétaire Cisco, 16-bit (0-65535). Default 32768 (local) / 0 (reçu). 3 méthodes de config.
Ouvrir
📍
DISPONIBLE
LOCAL_PREF · #2 · highest wins
Well-known Discretionary · type 5
Propagé à tout l'AS via iBGP, jamais vers eBGP. Policy sortante AS-wide. Default 100.
Ouvrir
🏠
DISPONIBLE
Locally Originated · #3
Règle de sélection · NH=0.0.0.0
Route injectée localement (network / aggregate / redistribute). NEXT_HOP = 0.0.0.0 dans show ip bgp. Préférée sur une route reçue d'un voisin.
Ouvrir
🔗
DISPONIBLE
AS-PATH · #4 · shortest wins
Well-known Mandatory · type 2
Liste des AS traversés. Prepending, regex filtering, allow-as-in, as-override, remove-private-as. Loop prevention.
Ouvrir
🎯
DISPONIBLE
Origin · #5 · i > e > ?
Well-known Mandatory · type 1
3 valeurs : i (IGP), e (EGP), ? (incomplete). Injection, route-map set origin, agrégation avec as-set.
Ouvrir
📊
DISPO
MED · #6 · lowest wins
Optional Non-Transitive · type 4
Hint vers l'AS voisin pour le point d'entrée préféré. Comparé uniquement entre routes du même AS voisin. always-compare-med, deterministic-med.
Ouvrir
🔀
DISPO
eBGP > iBGP · #7
Règle de sélection
Préférer les routes apprises via une session eBGP sur les routes iBGP. Indépendant de tout attribut configurable.
Ouvrir
📏
DISPO
IGP Metric · #8 · lowest wins
Règle de sélection
Coût IGP (OSPF/IS-IS/EIGRP) vers le NEXT_HOP BGP. Lowest wins. Base du BGP multipath avec maximum-paths.
Ouvrir
🌐
DISPO
AIGP · #9 · lowest wins
Optional Non-Transitive · type 26
RFC 7311. Accumulated IGP metric propagé dans BGP. BGP-free core, réseaux SP. Comparable au Weight.
Ouvrir
⏱️
DISPO
Oldest eBGP · #10
Règle de sélection
Préférer la route eBGP la plus ancienne pour la stabilité. Évite les oscillations. Applicable uniquement aux routes eBGP.
Ouvrir
🆔
DISPONIBLE
Router-ID · #11 · lowest wins
Règle de sélection
Lowest BGP Router-ID du peer qui a annoncé la route. Déterminé par loopback ou highest IP. bgp router-id.
Ouvrir
🔵
DISPONIBLE
Cluster-list · #12 · shortest wins
Optional Non-Transitive · type 10
Route Reflector uniquement. Longueur du Cluster-list la plus courte. Mécanisme anti-loop iBGP pour les RR.
Ouvrir
🔢
DISPONIBLE
Neighbor IP · #13 · lowest wins
Règle de sélection
Lowest neighbor IP address. Dernier tiebreaker absolu. Utilisé quand tous les autres critères sont identiques.
Ouvrir

Attributs BGP — Well-known Mandatory Obligatoires · présents dans chaque UPDATE
🎯
DISPONIBLE
ORIGIN · type 1
Well-known Mandatory
3 valeurs : i (IGP, injecté via network/aggregate), e (EGP, obsolète), ? (incomplete, via redistribute). Critère #5 de sélection.
Ouvrir
🔗
DISPONIBLE
AS_PATH · type 2
Well-known Mandatory
Liste ordonnée des AS traversés. Loop prevention, critère #4, AS_SEQUENCE, AS_SET. Prepending, regex, allow-as-in.
Ouvrir
📦
DISPONIBLE
AS_SET · sous-type AS_PATH
Well-known Mandatory
Ensemble non-ordonné d'AS créé lors d'une agrégation (notation {65100,65200}). Préserve la loop-prevention. aggregate-address as-set, summary-only, suppress-map, advertise-map.
Ouvrir
📋
DISPONIBLE
AS_SEQUENCE · sous-type AS_PATH
Well-known Mandatory
Sous-type 1 — liste ordonnée par défaut. Construction hop-by-hop, loop prevention, prepending, allow-as-in. Format wire RFC 4271. Comparaison des 4 sous-types.
Ouvrir
🧹
DISPONIBLE
remove-private-as & AS_OVERRIDE · outils AS_PATH
Well-known Mandatory
Suppression/remplacement AS privés (64512–65534) vers Internet. AS_OVERRIDE pour MPLS L3VPN sites même AS. Comparaison avec allow-as-in.
Ouvrir
➡️
DISPONIBLE
NEXT_HOP · type 3
Well-known Mandatory
Préalable absolu — NH injoignable = route invalide. Règles eBGP/iBGP, next-hop-self, next-hop-self all, next-hop-unchanged, NH Tracking. NH=0.0.0.0 = route locale.
Ouvrir

Attributs BGP — Well-known Discretionary Reconnus par tous · présence optionnelle dans l'UPDATE
📍
DISPONIBLE
LOCAL_PREF · type 5
Well-known Discretionary
Propagé à tout l'AS via iBGP, jamais vers eBGP. Default 100. Critère #2, policy sortante AS-wide. Highest wins.
Ouvrir
⚛️
BIENTÔT
ATOMIC_AGGREGATE · type 6
Well-known Discretionary
Signale qu'une agrégation a provoqué une perte d'information de chemin (AS_PATH tronqué). Positionné automatiquement par aggregate-address sans as-set. Pas de valeur — sa présence suffit.

Attributs BGP — Optional Transitive Propagés aux peers suivants même si inconnus (bit Partial)
🤝
BIENTÔT
AGGREGATOR · type 7
Optional Transitive
AS number + Router-ID du routeur qui a effectué l'agrégation. Toujours accompagné d'ATOMIC_AGGREGATE. Tracabilité de l'origine de l'agrégat.
🏷️
BIENTÔT
COMMUNITY · type 8
Optional Transitive
Tag 32-bit (AA:NN) attaché à une route. no-export, no-advertise, local-AS. Politiques inter-AS flexibles. ip community-list, route-map match/set.
🔖
BIENTÔT
EXTENDED COMMUNITY · type 16
Optional Transitive
64-bit. Route-target (RT), Route-origin (RO), SOO pour VPN/MPLS-VPN. Typage précis via type-field (2 octets). ip extcommunity-list.
🗂️
BIENTÔT
LARGE COMMUNITY · type 32
Optional Transitive
RFC 8092. Format AS:value1:value2 (96 bits). Conçu pour les AS 4 octets. Remplace les hacks avec communities standard 32-bit. Adopté par les grands ISP.
4️⃣
BIENTÔT
AS4_PATH · type 17
Optional Transitive
RFC 4893. Transporté par les routeurs 2-octet AS vers les routeurs 4-octet AS. AS_TRANS (23456) remplace les AS 4-octet non supportés. Rétrocompatibilité ASN 32-bit.

Attributs BGP — Optional Non-Transitive Supprimés si le peer ne les reconnaît pas
📊
DISPONIBLE
MED · type 4
Optional Non-Transitive
Hint vers l'AS voisin pour le point d'entrée préféré. Comparé entre routes du même AS voisin. Critère #6. always-compare-med, deterministic-med.
Ouvrir
🆔
DISPONIBLE
ORIGINATOR_ID · type 9
Optional Non-Transitive
Ajouté par le 1er Route Reflector. Contient le Router-ID de l'annonceur original. Utilisé au critère #11 à la place du Router-ID du peer. Anti-boucle RR.
Voir Router-ID
🔵
DISPONIBLE
CLUSTER_LIST · type 10
Optional Non-Transitive
Liste des Cluster-IDs traversés via Route Reflectors. Critère #12, shortest wins. Anti-boucle : si propre Cluster-ID présent → route rejetée.
Ouvrir
🌍
BIENTÔT
MP_REACH_NLRI · type 14
Optional Non-Transitive
RFC 4760. Multiprotocol BGP — annonce de préfixes non-IPv4 (IPv6, VPN, EVPN…). Encode AFI/SAFI, NEXT_HOP et NLRI. Base de BGP-4 multiprotocole.
🌐
BIENTÔT
MP_UNREACH_NLRI · type 15
Optional Non-Transitive
RFC 4760. Retrait de préfixes non-IPv4 (IPv6, VPN…). Contient AFI/SAFI + liste des préfixes à retirer. Complémentaire de MP_REACH_NLRI.
🌐
DISPONIBLE
AIGP · type 26
Optional Non-Transitive
RFC 7311. Accumulated IGP metric propagé dans BGP entre AS. TLV type 1 (8 octets). BGP-free core, Seamless MPLS. Critère #9, lowest wins.
Ouvrir

Attribut local Cisco Non propagé — stocké uniquement dans la BGP table locale
⚖️
DISPONIBLE
Weight · Cisco local
Local · non propagé
Propriétaire Cisco, 16 bits (0–65535). Default 32768 (local) / 0 (reçu). Critère #1. Jamais envoyé aux peers. Portée = routeur local uniquement.
Ouvrir

Quiz interactif
🧩
DISPONIBLE
Arbre des attributs BGP
Quiz · poupées russes
Explorez la classification Well-known / Optional en mode interactif. Des impostures se cachent à chaque niveau — trouvez le bon chemin.
Jouer
🏆
DISPONIBLE
Best Path Selection — Drag & Drop
Quiz · W·L·L·A·O·M·E·I·A·O·R·C·N
Table show ip bgp avec 3 routes générées dynamiquement. Glissez le critère décisif sur la ligne > pour justifier sa sélection. 9 critères, difficulté maximale.
Jouer
🎮
DISPONIBLE
AS_PATH Regex — Jeu interactif
Quiz · 3 modes · Sandbox
Maîtrisez les regex IOS AS_PATH. Mode 1 : regex → chemins correspondants. Mode 2 : description → écrire la regex. Mode 3 : cible → choisir la bonne regex. Sandbox temps réel + référence complète.
Jouer

Design & Scalabilité
🪞
BIENTÔT
Route Reflector
Suppression de la full-mesh iBGP. Cluster-ID, Originator-ID, règles anti-loop. Impact sur critères #11 et #12.
🏛️
BIENTÔT
Confederation
Subdivision d'un AS en sous-AS. Réduction full-mesh. CONFED_SEQ, CONFED_SET.
🔍
BIENTÔT
Route Filtering
prefix-list, distribute-list, filter-list, route-map. Soft/hard reset. Inbound vs outbound.
📦
BIENTÔT
Aggregation
aggregate-address, summary-only, suppress-map, as-set. Atomic Aggregate (type 6) + Aggregator (type 7).

Sessions & Sécurité
🤝
BIENTÔT
Sessions iBGP / eBGP
États FSM (6 états). TTL security, MD5, timers, next-hop-self, update-source loopback.
🛡️
BIENTÔT
BGP Security
TTL security hacking, MD5 authentication, prefix filtering, max-prefix, RPKI basics.
🚀
BIENTÔT
BGP Multipath
maximum-paths ibgp/ebgp. ECMP avec BGP. Conditions de load-balancing. Lien avec critère #8 IGP metric.