Vous êtes sur la page 1sur 8

Chapter69.LeroutagedynamiqueavecBGP

Chapter69.LeroutagedynamiqueavecBGP

RevisionHistory

Revision$Revision:1.5$

$Date:2005/08/0309:29:16$

TableofContents

Introduction

Lesgrandsprincipes

Placeàlapratique

CohabitationentreBGPetlesIGP

Conclusion

Abstract

InitiationauroutageBGP

Introduction

Internetreliedesréseauxappartenantàdesacteurs(entreprises,administrations,opérateursde télécommunication,fournisseursd'accès )trèsdifférents.Ilestpeuprobablequ'unconsensusse dégagenaturellementautourd'unmêmealgorithmederoutagedynamiqueetd'unemêmemétrique. Ajoutonsquedesaccordssontpassésentrecesacteursafind'acheminerletraficdansl'Internetet quecelui­cifranchitdesfrontières,cequiimposederespecterlesréglementationslocales.Le protocoleBGP(BorderGatewayProtocol)aétéconçupourrépondreàcesproblèmes.Comme toujours,nousallonsaborderbrièvementsonfonctionnementavantdepasseràunemiseenpratique avecZebra.

Lesgrandsprincipes

BGPacheminelesinformationsderoutageentrelesréseauxreliésàInternet.

Leconceptdesystèmeautonome

Auseind'unemêmeorganisation,lesdécisionsconcernantlatopologieoulapolitiquederoutage sont,engénéral,prisesparuneautoritéunique.Parconséquent,leroutageàl'intérieurde l'organisationestbasésurlaconfianceetunprotocoledetypeIGPcommeOSPFestmisenoeuvre. Unréseaufonctionnantsousuneautoritéuniqueestappeléunsystèmeautonome(AS).Enpratique, unASregroupeunouplusieursréseauxetunouplusieursrouteursainsiquelemontrel'exemplede

lafigure1:

Figure69.1.Unsystèmeautonomeconstituéderéseaux

LesASsontidentifiésparunnumérosur16bitsuniqueattribuéparlesmêmesorganismesqui

LesASsontidentifiésparunnumérosur16bitsuniqueattribuéparlesmêmesorganismesqui

affectentlesadressesIP.Ilexisteuneplagedenumérosd'ASprivésde64512à65535pourceux

quinepossèdentpasdenumérod'ASpublic.

Al'intérieurdevotreAS,vouspouvezbienfairecequevousvoulez.Vouspréféreztelprotocolede

routage?Vousestimezquetellemétriqueestpluspertinente?Tantmieux,celaneregardeque

vous.Laseulecontrainte,c'estquevousdevrezdésignerunouplusieursrouteurs,àlafrontièrede

votreAS,pourpropagerlesinformationsd'accessibilitédevosréseauxetcollecterlesinformations

d'accessibilitédesautresASBR.

Parexemple,sil'onreprendlatopologieprésentéedanslaséquencesurOSPF,quel'onenfaitun

AS,onobtiendrait:

Figure69.2.UnASdécoupéenzonesOSPF

AS,onobtiendrait: Figure69.2.UnASdécoupéenzonesOSPF

CesystèmeautonomeutiliseOSPFentantqu'IGP.Ilestdécoupéentroiszones.R4estlerouteurde

borduredezone.Celui­cidoitfonctionnersousBGP.

Lespolitiquesderoutage

Internetestunmaillagederéseaux.Celasignifiequeplusieurscheminsexistententredeuxréseaux

d'extrémité(figure3).Maisceux­cinesontpastouséquivalents.

Figure69.3.Réseauxd'AS

Eneffet,imaginezvosdatagrammescirculantdanscettejunglecruelleetbarbarequ'estInternet.

Eneffet,imaginezvosdatagrammescirculantdanscettejunglecruelleetbarbarequ'estInternet.

Vouspréfèrerezpeutêtrequ'ilstransitentpartelAS,carl'administrateurestunpoteouquevous

aveznégociéuntarifavantageux.Vousrefuserezpeut­êtrequ'ilstransitentpartelAScarvosflux

sontincompatiblesaveclalégislationenvigueurdanslepaysoupourtouteautreconsidération

politique,économiqueoudesécuritéquel'onpeutimaginer.Danscecas,vousaurezbesoinde

définirunepolitiquederoutagesurInternet.BGPvousrendraceservice.

Dansleréseau,l'administrateurdel'AS600définitunepolitiquederoutage.Ilveutjoindrel'AS200en

passantparlesAS300et100.

LesinformationsderoutageéchangéesparBGP

UnedesparticularitésdeBGP­IV(RFC1771)estqu'ils'appuiesurlacoucheTCP(port179),cequi

permetdes'affranchirdelanécessitédesupporterlesfonctionsdefragmentation,deretransmission,

d'acquittementetdeséquencement.

DeuxrouteursBGPs'échangentdesmessagespourouvriretmaintenirlaconnexion.Lepremierflot

dedonnéesestlatableentièrederoutage.Ensuite,desmisesàjoursincrémentiellessontenvoyées

lorsquelatablederoutagechange:BGPnenécessitepasdemisesàjourpériodiquesdestablesde

routage.Parcontre,unrouteurBGPdoitretenirlatotalitédestablesderoutagecourantesdetous

sespairsdurantletempsdelaconnexion.Desmessages«keepalive»sontenvoyéspériodiquement

pourmaintenirlaconnexion.

BGPestunprotocoledetype"PathVector".Lesrouteurss'échangentdesinformationsdutype:

AdresseIPduréseaude

destination

AdresseIPduprochainrouteur ListedesAStraverséspouratteindre

(nexthop)

leréseau

Onconstatequ'avecBGP,lagranularitéduroutageestl'AS.Pardéfaut,lorsqueplusieursroute

existententredeuxAS,BGPchoisitlaroutequitraverselemoinsd'AS.

QuandutiliserBGP?

Ceprotocoleestgénéralementutiliséparlesfournisseursd'accèsàInternet,lesadministrateursdes

pointsd'échange(IXP)etlesadministrateursdesystèmesautonomesquisouhaitentmettreen

oeuvreleurproprepolitiquederoutage.

Placeàlapratique

Voyonssurquelletopologienousallonstravailler:

Figure69.4.Topologie

Nousavonstroissystèmesautonomesnumérotés10,20et30.Dansunsoucidesimplification,

Nousavonstroissystèmesautonomesnumérotés10,20et30.Dansunsoucidesimplification,

chaquesystèmeautonomeaunetopologierelativementsimple.Decefait,aucunIGPn'estutilisé.On

constatequechaquerouteurestunASBR.L'AS20auneparticularitécarpourlesAS10et30,c'est

unASdetransit.Nousreviendronssurcepointdanslamiseenoeuvre.

Tâchesdeconfiguration

Surchaquerouteur,ilfaudraréaliserlestâchessuivantes:

0.préparerdesfichiers et/ rudimentaires,necomportant quelenomdel'hôteetlemotdepassepouraccéderàlaconsoled'administration.Ensuite,dansle shellLinux,ilfautlancerlesdémonszebraet dansl'ordre;

1. activerleprocessusderoutageBGPenindiquantdansquelASdesituelerouteur(commande

2. spécifierlesroutesàannoncerviaBGP(commande

3. établirunerelationaveclesrouteursvoisins(commande

).

Situationdedépart

Vousdevezcréerdesfichiersdeconfigurationpourzebra( )etbgpd

( )rudimentairessurchaquerouteur.Parexemple,pourR1:

­fichierzebra.conf:

­fichierbgpd.conf:

Vousdevezensuitedémarrer(ouredémarrer),lesdeuxdémonszebraetbgpdsurchaquerouteur.

Enfin,survousentrezdansleterminald'administrationdebgpdvialeporttelnet2605.Parexemple,

surR1:

Linux#telnetlocalhost2605Hello,thisiszebra(version0.91a).Copyright1996­2001Kunihiro

Ishiguro.UserAccessVerificationPassword:R1(BGP)>enableR1(BGP)#

Sivousavezenviedesuivreprécisémentleséchangesdemessagesentrerouteurs,Zebrapropose unmécanismededébogagegrâceàlacommande .Supposonsquenousvoulionsgarderune

tracedetouteslesmisesàjourd'informationsderoutageBGPémisesetreçuesparR1:

Ilfauts'assurerquelerépertoire existe.

Activationduprocessusderoutage

Danslemode«config»,nousallonsactiverleprocessusBGPenn'oubliantpasd'indiquerlenuméro

d'AS.Parexemple,surR1:

Spécificationdesroutesàannoncer

PourR1,leseulréseauquel'onsouhaiteannoncerviaBGPauxautresrouteursest191.10.0.0/24

carilcontientdesordinateurs:

Cettecommandeestàrenouvelerautantdefoisqu'ilyaderéseauxàannoncer.Dansnotre

exemple,nousavonschoisivolontairementdenepasannoncerleréseau10.0.0.0/8carcelui­cine

contientquedesrouteurs.Vousnoterezaupassagequecettecommanden'apaslamêmevocation

quedansRIPouOSPF.

Etablissementd'uneconnexionaveclesvoisins

Ilfautdistinguerdeuxcas:monvoisinest­ildansunautreASoudanslemêmeASquemoi?

1.CasoùlevoisinestdansunautreAS:

Jerappelleque"unvoisin"estunrouteuraveclequelonestimmédiatementconnecté.Ilfautindiquer sonadresseIPainsiquesonnumérod'AS.DanslejargonBGP,uneconnexionentredeuxrouteurs

BGPs'appellepeering.SurR1,onsaisitlacommande:

Cettecommandeestàrenouvelerautantdefoisqu'ilyaderouteursBGPimmédiatementconnectés

(etavecquionsouhaiteéchangerdesinformationsderoutagebiensûr).

2.CasoùlevoisinestdanslemêmeAS:

L'AS20estparticuliercarilvéhiculedesdonnéesquineluisontpasdestinées,enparticulierles

informationsderoutageenprovenanceetàdestinationdesAS10et30.Eneffet,pourquel'AS30

connaissel'existenceduréseau191.10.0.0/24,R2doitrécupérercetteinformationauprèsdeR1puis

latransmettreàR3quilui­mêmelatransmettraàR4.R2etR3étantdanslemêmeAS,un"sous­

protocole"deBGPappeléiBGPestmisenoeuvreautomatiquementparlerouteur.Mais,celui­ciala particularitédenepasmodifierlesnexthoplorsqu'ilrelaiedesinformationsderoutage.Ainsi,sans

intervention,R4apprendraitquelenexthoppourjoindre192.10.0.0/24est10.0.0.1.Or,celui­cin'est

pasjoignabledepuisl'AS30(puisquenousnefaisonspasde ).Pourpallieràcette lacune,ilexisteladirective .AinsisurR2etsurR3nousréaliseronslesconfigurations suivantes:

Affichagedelaconfiguration

AffichonslaconfigurationcomplètedeR1:

AffichonslaconfigurationcomplètedeR2:

J'espèrequevousavezlamêmeconfiguration.Siunecommandeestincorrecte,vousdevezfaire

commesivousvouliezlasaisirànouveaumaisenlafaisantprécéderdeno.

Pourenregistrerlaconfiguration,jevousrappellequel'onsaisit:

Parsymétrie,vousdevezêtreenmesuredeconfigurerlesautresrouteursduréseau.

Affichagedel'étatdesrouteurs

Ledébogage

Sivousavezactivéledébogage,lefichierdelogdoitvousrévélerdesinformationsdecestyle:

Onvoitlesannoncesderoutesémises(sendUPDATE)etreçues(recvUPDATE)parR1.Sivotre

routagenefonctionnepas,voustrouverezdanslesjournauxtouteslesinformationsnécessairesàla

résolutiondeproblèmes.

Latablederoutage

Observons,parexemple,latableBGPcalculéeparR2:

 

Lapremièrecolonneindiquesilarouteestvalide(*),siBGPconsidèrequec'estlameilleure(>)etsi

elleprovientd'unrouteurinterne(ipourinternal)àl'AS.LesparamètresMetric,LocPrf(Local

Preference)etWeightsontutilisésparBGPpourlirelameilleurerouteversunedestination.BGP

appliquel'algorithme(simplifié)suivant:

1. BGPchoisitlarouteavecleplusgrandpoids(weight).Pardéfaut,uneroutedirectement

connectéesevoitattribuerlepoids32768;

2. Siunerouten'esttoujourspaschoisie,BGPchoisitcelleaveclaplusgrande"préférence locale".Pardéfaut,unerouteissued'unrouteurinterneàl'ASsevoitattribuerunepréférence

localede100;

3. Siunerouten'esttoujourspaschoisie,BGPchoisituneroutedetype"internal";

4. Siunerouten'esttoujourspaschoisie,BGPretienslarouteaveclechemin(As­Path)leplus

court;

5. Siunerouten'esttoujourspaschoisie,BGPchoisitlarouteaveclamétriquelaplusfaible.

LacolonnePathindiquelalistedessystèmesautonomesàtraverseravantd'atteindreleréseau.Lei

indiqueiciquelesroutessontdetypeIGP.Enfait,BGPregroupesouscetermelesroutesstatiques

etdécouvertesparunprotocoledynamiquetelRIPouOSPF.

Vouspouvezobtenirdesinformationsdétailléessurunerouteparticulièreentapant:

Informationssurlesvoisins

Zebraproposedenombreusescommandespermettantdeconnaîtrel'étatdesvoisins.Parmilesplus

intéressantes,ontrouve:

showipbgpneighbors

Donnedenombreusessurlaconnexionaveclesvoisins

showipbgpsummary

Synthétiselesinformationsci­dessusdansuntableau

showipbgp<IP_voisin>routes

Routesdécouvertesàpartirdecevoisin

showipbgp<IP_voisin>advertised­routesRoutesannoncéesàcevoisin

CohabitationentreBGPetlesIGP

ZebrapeuttoutàfaitannoncerdesroutesdynamiquesviaBGP(commande ).Toutefois, cettefonctionnalitéestàenvisageravecbeaucoupdeprudencecartoutechangementdetopologie seravisibleàl'extérieurdusystèmeautonome.

Conclusion

CIDR

Routeserver

Routereflector

Cluster

Chapter68.Leroutagedynamique

avecOSPF

Home

Chapter70.TPsurleroutagestatique

avecZebra