Vous êtes sur la page 1sur 10

Module M3102 TP1

Border Gateway Protocol


Nom(s) et prnom(s) :
Groupe et Date :
Ce qu'on veut faire dans ce TP : relier 2 AS, c'est--dire 2 rseaux d'ISPs
Pourquoi : pour permettre le routage entre les rseaux constituant chaque AS
Comment : en configurant le protocole BGP sur chaque routeur connect l'autre AS

Prise en main de BGP


La premire topologie d'tude est reprsente dans la figure 1 ci-dessous.

Illustration 1: Topologie d'tude 1


R1, R2 et R3 sont des routeurs appartenant 2 AS diffrents, et relis entre eux par BGP (R4, R5 et

R6 n'utilisent pas BGP).


R1, R2 et R3 ont diffrents segments LANs annoncer, correspondants R4, R5 et R6
respectivement, et R2 a un LAN de plus (correspondant une interface de loopback ici).
R1 et R3 sont dans le mme AS (sous la mme administration technique, appartiennent au mme
ISP). Tous les masques en /24 pour simplicit.
Les commandes fondamentales pour BGP, qu'on va beaucoup utiliser, sont (exemple sur R2) :
router bgp 2
neighbor 192.168.21.1 remote-as 13
network 192.168.25.0 mask 255.255.255.0
Rcuprez et ouvrez TP1_topo1_initiale.zip, comme indiqu dans le TP0.

I. Configuration de base : tablissement de liens BGP entre voisins


1. Sur chaque routeur, faire un show running-config, et un show ip protocol, et
indiquez ce que vous constatez en termes de configuration IP des interfaces et protocoles de
routage actifs.
2. Ouvrir un terminal sur R1, R2 et R3, et vrifiez par des pings devant tre des succs, la
connexion de R1 avec R2, R1 et R3, et R2 avec R3. Indiquez les 3 commandes avec les @IP
cibles.
3. Configurer R2 :
(config)#router bgp 2 % spcifie l'AS, un routeur ne peut tre que dans un AS en
gnral
(config-router)#exit
4. Sur R2, entrez ensuite router bgp 3. Que constatez-vous et pourquoi ?
5. Spcifier les voisins BGP sur R2 :
(config)#router bgp 2
(config-router)#neighbor 192.168.12.1 remote-as 13
3. Vrifier qu'on a bien configur pour l'instant ce seul voisin :
#show ip bgp summary
Dcrire les champs, notamment expliquer : Up/Down et State/PfxRcd
4. Vrifier la table de routage et voir que le rseau 192.168.12.0/24 est directement connect.
Indiquer la commande.
5. On a donc une route vers le voisin R1, mais on doit encore configurer R1 pour avoir connexion
(abrg par cx) BGP en tat established entre R1 et R2. Avant de faire cela, configurer le voisin
R3 sur R2 (interface directement connecte R3). Vrifier l'tat des cx BGP de R1 et R3 sur
R2. Indiquez les commandes.

6. Sur R1, show ip bgp summ . Que voyez-vous et pourquoi ?


7. Configurer BGP sur R1, avec les voisins R2 et R3. Attention aux numros d'AS.
8. Vrifiez par un sh ip bgp summ que l'tat de la cx BGP passe tablie (aucun mot en
dessous de State ; cela peut prendre 5 10 secondes). (Vous devez voir une annonce BGP
arriver de R2).
9. Le vrifier galement par un sh ip bgp neighbor 192.168.12.2. A quelle ligne
voyez-vous l'tat de la relation BGP ?
10. D'aprs vous, que signifie le 0 en dessous de State/PfxRcd ?
11. Retourner sur R2 et vrifier par sh ip bgp summ l'tat des voisins. Que voyez-vous ?

II. Annonce de rseaux/routes/prfixes


12. Annonce de rseaux : comme en OSPF ou EIGRP, on utilise la commande network suivie de
l'adresse rseau et du masque rseau. Entrez sur R2
(config-router)#network 192.168.25.0 mask 255.255.255.0
Ds que cette commande est entre, le routeur va chercher dans la table de routage l'existence de
ce rseau exact avant de l'annoncer qui que ce soit. Par exemple si on a seulement un rseau
192.168.25.64/27 dans la table de routage, BGP n'annoncera aucun des 2 rseaux.
14. Faire un sh ip bgp : on a bien le rseau 192.168.25.0/24 install dans la table BGP. Donc R2
va envoyer update R1 pour annoncer ce rseau. Copiez l'tat de la table.
15. Sur R1 : vrifier la rception de cette info
sh ip bgp
Copiez l'tat de la table.
Le rseau d'adresse 192.168.25.0 a un next hop 192.168.12.2 qui est l'adresse dfinie pour le
voisin BGP, par qui cette update annonant ce rseau a t reue. Observez :
Path : numros d'AS traverser pour arriver au rseau destination, ici il n'y a que l'AS 2
atteindre ici.
Metric, LocPrf et Weight sont des attributs de chemin
2 types de codes : Status codes gauche, et Origin codes droite
* : valid route
> : best path
r : RIB failure (Routing Information Base) le prfixe obtenu par BGP et montr dans cette
table BGP n'intgre pas la table de routage gnral du routeur, construit par les diffrents
protocoles de routage (IGP, tels OSPF, RIP, etc, et BGP) parce-que, par exemple, sa distance
administrative est plus grande que ce que la table de routage a dj.

i - internal : appris par iBGP (on le verra quand route envoye entre R1 et R3)
i - IGP : annonce dclenche par la commande network
e - EGP : (Exterior Gateway Protocol) vieux BGP, plus du tout utilis
? - incomplete : ce rseau install dans BGP par re-distribution (automatique, par exemple de
EIGRP dans BGP, pas par la commande network)
16. Sur R1 : sh ip route
Copiez l'tat de la table. Le rseau rajout par BGP (avec un B devant) apparat. Dcrire ses
caractristiques et expliquer ce qu'est [20/0].
17. Tester par un ping qu'on peut bien atteindre R5 depuis R1, c'est--dire 192.168.25.5.
18. Configurer R3 de la mme faon, en le faisant annoncer par BGP 192.168.36.0/24. Vrifier que
les relations BGP sont bien tablie entre R3 et R1, R2. Indiquez la suite de commandes utilises
sur R3.

19. Sur R1 : sh ip bgp


Copiez l'tat de la table. Pour 192.168.25.0/24, on a maintenant 2 routes : codes gauche :
i : appris par iBGP (par R3)
et un autre path meilleur par R2
Donc 2 voisins qui envoient le mme prfixe (noter que R3 annonce R1 le rseau li R2
automatiquement, sans avoir configur d'annonce explicite, ceci car la relation entre R1 et R3
est iBGP). C'est la route reue par le voisin eBGP, et pas par le iBGP, qui est retenue : ceci est le
comportement par dfaut de BGP.
20. Utiliser la commande network pour faire annoncer par R2 l'existence d'un rseau
172.16.0.0/16. Indiquez la commande utilise.
21. Regarder dans la table BGP : ce rseau est-il annonc par BGP ?
22. Justifiez votre rponse en regardant la table de routage globale de R2. Que constatez-vous ?
23. Sur R1 a t-on une quelconque information sur 172.16.0.0/16 ?
24. Sur R2, ajoutez une route statique qui pointe vers 172.16.0.0/16 travers Null0 (nulle-part) :
ip route 172.16.0.0 255.255.0.0 null0
25. Vrifiez que dans la table de routage de R2 on a bien cette route statique rajoute. Indiquez la
commande.
26. Qu'indique la table BGP de R2 prsent ?

27. Que remarquez-vous sur les adresses rseau ? Comment l'expliquez-vous ?


28. Regardez table BGP de R2. Que signifie next hop 0.0.0.0 ?
29. Pourquoi aucun ASN mentionn dans Path pour 172.16.0.0/16?
30. Que signifie le i sous Path ?
31. Est-ce que R1 a reu cette nouvelle route ? Indiquez la commande pour le vrifier et copiez
l'tat de la table..
32. Que remarquez-vous pour les chemins possibles vers ce rseau 172.16.0.0/24 ?
33. Enlevons maintenant cette route statique de R2 :
no ip route 172.16.0.0 255.255.0.0 null0
et vrifiez qu'elle n'apparat plus dans la table de routage, ni dans la table BGP, ainsi que sur R1.
Indiquez la commande utilise chaque fois.

III. Redistribution de routes depuis IGP


Redistribution depuis un protocole de routage IGP : la redistribution signifie annoncer des
prfixes reus par un certain processus de routage dans le processus de routage BGP. Exemple :
rseaux appris par RIP peuvent tre traduits par le routeur et annoncs/redistribus par BGP
34. Sur R1, on va automatiquement redistribuer les rseaux directement connects :
redistribute connected
Vrifiez dans la table BGP l'effet de cette commande : que constatez-vous ?
35. Inspectez la table BGP de R2 : que voyez-vous? Copiez l'tat de la table.
36. Devant quelle(s) route(s) apparat r ? Comment le justifiez-vous ?
37. Regardez la table de routage de R2 : que pouvez-vous dire ? Et propos de la distance ?
38. Vrifier qu'on peut accder depuis R2 R4 (en 192.168.14.4).
39. Regardez la table BGP de R2 : le ? droite signifie que ces routes ont t injectes dans BGP
par redistribution. Annulez la redistribution sur R1 :
no redistribute connected

et vrifiez sur R2 qu'aucune route redistribues depuis R1.


Rcapitulatif des commandes pour vrification et rsolution de problme (troubleshooting) :
show ip bgp : montre la base de donnes BGP complte
show ip bgp summary : montre un rsum de la base de donnes BGP
show ip bgp neighbors : montre informations dtailles sur les voisins BGP
show ip BGP neighbors <@IP> : montre informations sur le voisin BGP avec cette
adresse IP
show ip route : montre la table de routage complte
show ip route bgp : montre uniquement les routes dans la table de routage entres et gres
par BGP
clear ip bgp * : r-initialise les relations avec tous les voisins BGP
clear ip bgp <ASN> : r-initialise tous les voisins BGP de cet AS
clear ip bgp <@IP> : r-initialise le voisin BGP avec cette adresse IP
debug ip bgp events : voir les vnements reus par les updates
debug ip bgp keepalives : voir les message de keealive reus
40. Sur R1, visualisez la table de routage et vrifiez que le rseau 192.168.25.0/24 est introduit par
BGP. Ajoutez ensuite une route statique sur R1, indiquant (mme si c'est faux), que
192.168.25.0/24 est directement connect, par exemple :
ip route 192.168.25.0 255.255.255.0 null0
Vrifiez que cette route statique a t introduite dans la table de routage, remplaant la route
apporte pour ce mme rseau par BGP. Indiquez la commande utilise et la ligne
correspondante dans la table de routage.
41. Regardez et copiez ensuite la table BGP : on voit que ce rseau est toujours appris par BGP, par
2 voisins diffrents, mais on a maintenant le code r gauche, signifiant un chec : cette entre
ne va pas tre insre dans la table de routage. Expliquez cela en visualisant :
show ip route 192.168.25.0 255.255.255.0
Faire : show ip bgp rib-failure et dcrire le rsultat

Equilibrage de charge et gestion des interfaces choisies pour


BGP

Illustration 2: Topologie d'tude 2


Tous les masques en /24 pour simplicit.
Rcuprez et ouvrez TP1_topo2_initiale.zip, comme indiqu dans le TP0.

IV. Equilibrage de charge entre 2 AS


On va commencer par regarder comment faire du load balancing en utilisant des liens redondants
entre R2 et R3.
1. Sur chaque routeur, faire un show running-config, et un show ip protocol, et
indiquez ce que vous constatez en termes de configuration IP des interfaces et protocoles de
routage actifs.
2. Vrifier depuis R1 qu'on peut pinger R2.
3. Configurer BGP sur R1, avec le voisin R2. Indiquez les commandes.
4. Sur R1 :
show tcp brief all
montre les sessions TCP tablies ou les ports en coute sur R1. Copiez la partie intressante
du rsultat. Comment dcrivez-vous ce que vous voyez ?

5. Configurer de mme R2 avec le voisin R1 uniquement pour l'instant.


6. Sur R2 regarder les sessions TCP : vous devez voir une session tablie et un port en coute
pour d'autres relations BGP. Copiez le rsultat de la commande sur R1 et R2.
7. On va maintenant tablir un peering BGP entre 2 peers d'AS diffrents relis par 2 liens
redondants permettant de raliser un quilibrage de charge. Les adresses IP utilises pour
identifier les voisins BGP vont tre des adresses de loopback : ce sont des adresses IP
d'interfaces virtuelles, non relies une interface physique.
Sur R2, crez l'interface de loopback lo 0 d'adresse 2.2.2.2/32. Indiquez les commandes.
8. Faire la mme chose pour R3 avec 3.3.3.3.
9. La relation BGP entre R2 et R3 va tre tablie entre les 2 adresses de loopback pour que les
liens physiques redondants lis 2 interfaces physiques diffrentes de chaque ct soient
transparents pour BGP.
Le load balancing peut tre effectu par n'importe quel protocole IGP le supportant. Par
exemple EIGRP. Configurez EIGRP sur R2 :
router eigrp 1
no auto-summary
network 192.16.23.0 0.0.0.255
network 192.16.203.0 0.0.0.255
network 2.2.2.2 0.0.0.255
10. Faire la mme chose (avec mme numro d'instance EIGRP) sur R3.
11. Regarder la table de routage de R3 (indiquer la commande et copiez le rsultat). Quel impact
a eu EIGRP ? Quel rapport avec le load balancing ?

V. Configuration de BGP avec interfaces de loopback


12. Configurer bgp sur R3 avec voisin R2 (2.2.2.2). Ajoutez le voisin R3 (3.3.3.3) R2.
13. Vrifier la table de routage de R2 pour s'assurer que l'interface de loopback de R3 est
accessible. Copiez le rsultat.
14. Sur R2, vrifiez l'tat des voisins par sh ip bgp sum : la relation BGP avec R3 doit tre
idle ou active (donc non tablie). Elle ne changera pas d'tat established cette fois-ci. Il y a
2 raisons cela :
15. La premire raison est qu'une relation EBGP suppose par dfaut que les @IP impliques
sont directement relies (1 hop). Corriger cela avec sur R2 :
neighbor 3.3.3.3 ebgp-multihop 2
Faire la mme chose sur R3 pour R2. Ceci a t-il rsolu le problme ?
16. La deuxime raison, vous devez la trouver en examinant 2 captures wireshark que vous
lancez sur chacune des 2 interfaces fastethernet de R2. Examinez l'ouverture de la
connexion TCP et identifier le problme. N'arrtez pas les captures et ne fermez pas

wireshark. Dcrivez-le dans le rapport.


17. Ce problme est rsolu sur R2 par :
neighbor 3.3.3.3 update-source loopback 0
Fates de mme sur R3. Rafrachir les captures wireshark et dcrivez l'effet de la commande.
18. Vrifier alors que la relation BGP s'tablit entre les voisins R2 et R3. Indiquez la commande
utilise.

VI. Redistribution de routes avec BGP


19. On va maintenant distribuer des routes par BGP, pour que les routeurs dans AS 605 autres
que R2 connaissent les routes de l'AS 777, et vice versa. Pour cela, on va simuler 3 autres
rseaux lis R3 par 3 interfaces de loopback supplmentaires crer, chacune d'adresse
correspondant aux rseaux indiqus ci-dessous. Crer ces 3 interfaces supplmentaires
indiques dans la figure 2 ci-dessus, les configurer et les activer.
20. Redistribuer dans BGP les 4 rseaux correspondant aux interfaces de loopback de R3 avec la
commande network. Indiquer les commandes entres pour cela.
21. Vrifier que ces routes ont bien t installes dans la table de routage de R2, et tester l'accs
par ping depuis R2.
22. Sur R1, regarder la table de routage. Est-ce que les routes vers les rseaux de l'AS 777 y ont
t installes ? Devraient-elle y tre ? Regarder la table BGP. Qu'est-il indiqu propos de
ces routes ? Qu'est-ce qui n'est pas respect ?
23. Dans la config BGP de R1, faire :
no synchronization
puis hors mode config :
clear ip bgp *
Regarder de nouveau la table BGP puis la table de routage : le problme persiste t-il ?
24. Entrer :
debug ip bgp ?
Vous voyez les possibilits de voir diffrents types de message pour rsoudre les problmes
lis BGP. Slectionnez updates.
25. Que voyez-vous alors apparatre dans les messages d'updates, quel est le problme
expliquant la non-installation des routes de R3 dans la table de routage de R1 ?
26. Dans une relation IBGP, le next hop n'est pas chang par dfaut, comme avec EBGP. Il faut
alors dans la config BGP de R2 entrer :
neighbor 172.16.12.1 next-hop-self
Lancer une capture wireshark sur l'interface fastethernet de R1. Faire

clear ip bgp *
Vrifier les tables de R1 et observer et dcrire dans la capture le message d'update BGP.
Sur R1 on rcupre en update :

Sources
Cours BGP de Aiman Atta, makeiteasiest.com, online
Cours BGP de Nomi Beo, online

Vous aimerez peut-être aussi