0% ont trouvé ce document utile (0 vote)
28 vues11 pages

BGP Single-Homed

Le document traite du protocole BGP (Border Gateway Protocol), un protocole de routage extérieur utilisé pour échanger des informations de routage entre systèmes autonomes sur Internet. Il explique les concepts clés tels que les ASN, les types de connexions (iBGP et eBGP), ainsi que les processus de décision et les métriques utilisés pour le routage. Enfin, il aborde des aspects pratiques de la configuration de BGP, y compris l'annonce de préfixes et la vérification des routes.

Transféré par

Kobenan Michel Kouman
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
28 vues11 pages

BGP Single-Homed

Le document traite du protocole BGP (Border Gateway Protocol), un protocole de routage extérieur utilisé pour échanger des informations de routage entre systèmes autonomes sur Internet. Il explique les concepts clés tels que les ASN, les types de connexions (iBGP et eBGP), ainsi que les processus de décision et les métriques utilisés pour le routage. Enfin, il aborde des aspects pratiques de la configuration de BGP, y compris l'annonce de préfixes et la vérification des routes.

Transféré par

Kobenan Michel Kouman
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

BGP Single-Homed

BGP Single-Homed

1. Protocole BGP

1.1. Terminologie BGP

 Protocole de routage extérieur : routage entre systèmes


autonomes
 Path Vector (Path Attributes) : vecteur (additions) de chemin
(politiques de routage)
 ASN : Numéro identifiant un système autonome (un
ensemble de routeurs appartenant à une organisation
comme des FAI), Codés sur 16 bits, on trouve des ASNs
publics (de 1 à 65511) et des ASNs privés (de 65512 à
65535)
 TCP 179 : Port de couche transport utilisé par BGP
 iBGP / eBGP : iBGP échange des routes au sein d’un AS et
eBGP établit des connexions avec des AS tiers
 Peering : échange gratuit entre pairs
 Transit : échange commercial de connectivité (de routes)
entre un FAI supérieur et un FAI local

1.2. Protocole BGP


Border Gateway Protocol (BGP) est un protocole de routage
extérieur utilisé notamment sur le réseau Internet. Son objectif est
d’échanger des informations de routage et d’accessibilité de
réseaux (appelés préfixes) entre Autonomous Systems (AS), c’est-
à-dire principalement entre des ensembles de réseaux
appartenant à des opérateurs concurrents. BGP utilise le port TCP
179.
1.3. Métriques BGP
Contrairement aux protocoles de routage intérieurs, BGP n’utilise
pas de métrique classique mais fonde les décisions de routage sur
les chemins parcourus, les attributs des préfixes et un ensemble
de règles de sélection définies par l’administrateur du système
autonome (AS). On le qualifie de protocole à vecteur de chemins
(path vector protocol). L’objectif principal de BGP n’est pas la
performance (il converge lentement). Son objectif consiste plutôt
à répondre à des besoins en évolutivité, en stabilité, en sécurité et
à traduire les contraintes des conventions entre opérateurs sur le
plan technique.

1.4. Version de BGP


BGP prend en charge le routage sans classe (classless) et utilise
l’agrégation de routes afin de limiter la taille de la table de
routage. Depuis 1994, la version 4 du protocole est utilisée sur
Internet, les précédentes étant considérées comme obsolètes. Ses
spécifications sont décrites dans la RFC 4271 A Border Gateway
Protocol 4 (BGP-4).

1.5. Support multi-protocoles


Certaines extensions de BGP permettent l’échange de routes IPv6
(RFC 2545) et l’extension multi-protocole (MP-BGP, RFC 4760) qui
permet d’utiliser BGP pour convoyer des informations de routage
pour d’autres protocoles que IPv4 comme par exemple IPv6.

Source
adaptée : [Link]

1.6. Internet : appairage et transit

 Appairage (Peering) : connexion entre “pairs”, en général


gratuite et informelle ; le “pair” n’envoie que ses routes.
 Transit : connexion à un opérateur plus gros contre paiement
: le transitaire envoie toutes les routes.
 Tier 1 : un “Tier 1” est opérateur qui n’achète pas de transit
du tout (Tata, Level 3,OpenTransit. . . )
Et c’est ainsi que l’Internet émerge grâce à ces appairages et
transits.

Source : Cours BGP au CNAM de Stéphane Bortzmeyer p.11

Internet Connectivity Distribution and Core

Source de l’image : Wikimedia

Une page intéressante à


lire : [Link]

1.7. Routes échangées : préfixes


$ whois [Link]/20
(...)
% Information related to '[Link]/20AS12392'

route: [Link]/20
descr: VOO
origin: AS12392
mnt-by: TAC-BRUTELE
created: 2010-02-02T[Link]Z
last-modified: 2010-02-02T[Link]Z
source: RIPE

1.8. ASN (Autonomous System Number)


$ whois AS12392
(...)
aut-num: AS12392
org: ORG-BS1-RIPE
as-name: ASBRUTELE
descr: VOO
remarks: VOO
import: from AS9208 action pref=200; accept AS-WIN
import: from AS14381 action pref=200; accept AS14381
import: from AS60650 action pref=200; accept AS60650
import: from AS3304 action pref=100; accept ANY
import: from AS5511 action pref=100; accept ANY
import: from AS2611 action pref=200; accept AS-BELNET
(...)
1.9. iBGP / eBGP

iBGP / eBGP

Les connexions entre deux voisins BGP (“neighbors” ou “peers”)


sont configurées explicitement entre deux routeurs. Ils
communiquent alors entre eux via une session TCP sur le port 179
initiée par l’un des deux routeurs. BGP est le seul protocole de
routage à utiliser TCP comme protocole de transport.

Il existe deux versions de BGP : Interior BGP (iBGP) et Exterior BGP


(eBGP). iBGP est utilisé à l’intérieur d’un Autonomous System
alors que eBGP est utilisé entre deux AS.

En général, les connexions eBGP sont établies sur des connexions


point à point ou sur des réseaux locaux (un Internet Exchange
Point par exemple), le TTL des paquets de la session BGP est alors
fixé à 1. Si la liaison physique est rompue, la session eBGP l’est
également, et tous les préfixes appris par celle-ci sont annoncés
comme supprimés et retirés de la table de routage.

À l’inverse, les connexions iBGP sont généralement établies entre


des adresses logiques, non associées à une interface physique
particulière. Ceci permet, en cas de rupture d’un lien physique, de
conserver la session iBGP active si un lien alternatif existe et si un
protocole de routage interne dynamique (IGP) est employé (par
exemple OSPF).
Une fois la connexion entre deux routeurs établie, ceux-ci
s’échangent des informations sur les réseaux qu’ils connaissent et
pour lesquels ils proposent du transit, ainsi qu’un certain nombre
d’attributs associés à ces réseaux qui vont permettre d’éviter des
boucles (comme AS Path) et de choisir avec finesse la meilleure
route.

Source : [Link]

1.10. Cas d’usage de BGP


Quand implémenter BGP ?

 BGP s’implémente principalement (mais pas seulement) dans


les réseaux des fournisseurs d’accès Internet (FAI), des les
centres de données (data centers) qui concluent des accords
commerciaux de connectivité pour joindre certains réseaux.
 Quand une entreprise désire une connexion Internet
redondante.
 Quand une entreprise veut annoncer elle-même les routes
pour joindre son réseau public.

1.11. Processus de décision de BGP

Processus de décision de BGP


 Le routeur refuse les annonces qui incluent son AS.
 Ensuite, s’il y a plusieurs possibilités pour un même préfixe.
o On prend celle ayant la meilleure préférence locale.
o Si égalité, on prend la route ayant le chemin d’AS le
plus court.
o Si égalité, on prend celle émise par le routeur ayant le
plus petit identificateur BGP …
(L’algorithme est ici simplifié car il y a d’autres critères.)

 Le routeur BGP propage ensuite l’annonce à ses voisins.


 Au bout de quelques minutes, tous les routeurs l’auront reçu
(le test de la présence de son AS évite les boucles).
 Acceptation et propagation sont contrôlés par une politique
locale.
BGP met en oeuvre du routage plus “politique” que technique.

Source : Cours BGP au CNAM de Stéphane Bortzmeyer p.20-21

1.12. Vecteur de chemin

 Contrairement aux protocoles à état de lien, les routeurs BGP


ne connaissent pas toutes les liaisons pour joindre des
réseaux.
 Aussi, chaque routeur BGP offre sa vision des réseaux
accessibles à partir de lui-même.

1.13. Lecture du chemin

 Le chemin d’AS se lit de droite à gauche.


 Chaque routeur ajoute son AS avant de propager aux pairs.
 Le premier AS (tout à droite) est l’origine.
Source : Cours BGP au CNAM de Stéphane Bortzmeyer p.19/61
1.14. BGP Looking glasses

 En http : [Link]
 En http : [Link]
 En telnet : [Link]

1.15. Looking Glass en telnet


$ telnet [Link]
Trying [Link]...
Connected to [Link].
Escape character is '^]'.

**********************************************************************

Oregon Exchange BGP Route Viewer


[Link] / [Link]

route views data is archived on [Link]

This hardware is part of a grant by the NSF.


Please contact help@[Link] if you have questions, or
if you wish to contribute your view.

This router has views of full routing tables from several ASes.
The list of peers is located at [Link]
in [Link]

NOTE: The hardware was upgraded in August 2014. If you are seeing
the error message, "no default Kerberos realm", you may want to
in Mac OS X add "default unset autologin" to your ~/.telnetrc

To login, use the username "rviews".

**********************************************************************

User Access Verification

Username:
route-views>sh ip bgp [Link]
BGP routing table entry for [Link]/20, version 838915
Paths: (42 available, best #28, table default)
Not advertised to any peer
Refresh Epoch 1
54728 6939 12392
[Link] from [Link] ([Link])
Origin IGP, localpref 100, valid, external
rx pathid: 0, tx pathid: 0
Refresh Epoch 2
24441 3491 3491 1299 12392
[Link] from [Link] ([Link])
Origin IGP, localpref 100, valid, external
rx pathid: 0, tx pathid: 0
Refresh Epoch 1
200130 1299 12392
[Link] from [Link] ([Link])

1.16. Utilisation du serveur whois de Cymru


Trouver le numéro d’AS à partir d’une adresse IP :

whois -h [Link] [Link]


AS | IP | AS Name
3215 | [Link] | AS3215, FR
Source : Cours BGP au CNAM de Stéphane Bortzmeyer p.44/61

1.17. Concepts avancés

 Communautés (étiquettes attachées aux annonces,


format ASN:XXX)
 Filtrage
 Annonces (ANNOUNCE et WITHDRAW)
 Surveillance
BGP : [Link] [Link]
 Etude sur les données publiques
BGP : [Link] [Link]
 Fuites BGP : Un routeur (ré-)annonce des routes qu’il n’aurait
pas dû annoncer. Exemple : un client de deux transitaires
annonce à un des transitaires. Les routes reçues de l’autre,
attirant ainsi tout le trafic.
 Détournement BGP : attaque ou erreur ?
 Filtrage IRR (Internet Routing Registry), RPKI
Voir : Cours BGP au CNAM de Stéphane Bortzmeyer

2. Configuration BGP Hello World

2.1. Annonce d’un préfixe public en eBGP


Annonce d'un préfixe public en eBGP

2.2. Annonce d’une route par défaut en eBGP

Annonce d'une route par défaut en eBGP

2.3. Configuration eBGP ISP


hostname R1
!
interface Lo 0
ip address [Link] [Link]
!
interface F0/0
ip address [Link] [Link]
no shutdown
!
router bgp 1
network [Link]
neighbor [Link] remote-as 1001
!
ip route [Link] [Link] Null0
!
end
wr

2.4. Peering eBGP CPE


Etablir le “peering” :

R2(config)#router bgp 1001


R2(config-router)#neighbor [Link] remote-as 1
Vérification :

R2#show tcp brief


TCB Local Address Foreign Address (state)
124E5488 [Link].45952 [Link].179 ESTAB

2.5. Annoncer un réseau CPE


Simulation d’un réseau :

R2(config)#interface lo1
R2(config-if)#ip address [Link] [Link]
Mais ce réseau pourrait être en DMZ et être appris via un
protocole de routage dynamique.

Filtrage de l’annonce en eBGP :

R2(config)#router bgp 1001


R2(config-router)#network [Link] mask [Link]

2.6. Vérification sur le routeur CPE


R2#show ip bgp
BGP table version is 3, local router ID is [Link]
Status codes: s suppressed, d damped, h history, * valid, > best, i -
internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

Network Next Hop Metric LocPrf Weight Path


*> [Link] [Link] 0 0 1 i
*> [Link]/24 [Link] 0 32768 i
R2#show ip route bgp | begin Gateway
Gateway of last resort is [Link] to network [Link]

B* [Link]/0 [20/0] via [Link], [Link]

2.7. Vérification routeur ISP


R1#show ip bgp
BGP table version is 3, local router ID is [Link]
Status codes: s suppressed, d damped, h history, * valid, > best, i -
internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path


*> [Link] [Link] 0 32768 i
*> [Link]/24 [Link] 0 0 1001 i

Vous aimerez peut-être aussi