2.6.
ANNONCER DES RESEAUX AVEC BGP
Avec BGP pour que les réseaux puissent dialoguer, il
faut les annoncer de part et d'autre dans les routeurs BGP. Pour annoncer des
réseaux via BGP, il faut utiliser la commande suivante :
network[réseau] [mask [masque
réseau]]
Cette commande (network) n'aura d'effet que si le
réseau que l'on cherche à annoncer est soit connu du routeur par
une interface directement connectée, soit appris de manière
statique ou dynamique. Les réseaux annoncés via la commande
« network » auront pour origine l'AS du routeur sur lequel cette
commande est appliquée.
Il convient de noter que lors de la configuration d'un routeur
BGP, la commande «network » est à utiliser dans la section
« router bgp [numéro d'AS] ».
Ci-dessous nous présentons sur la Figure 17un exemple
concret de ces notions :
Figure 17: Exemple d'annonce d'un réseau avec
BGP (Source [16])
Configuration
Configuration sur le routeur R1
routerbgp1
network193.1.0.0 mask
255.255.255.0
network193.1.1.0 mask
255.255.255.0
neighbor193.49.1.2 remote-as
2
Configuration sur le routeur R2
routerbgp2
network193.2.0.0 mask
255.255.255.0
network193.2.1.0 mask
255.255.255.0
neighbor193.49.1.1 remote-as
1
Plusieurs variantes interviennent dans l'annonce des
réseaux avec BGP sur un routeur. Nous présentons quelques aspects
:
2.6.1. Redistribution
Plutôt que de multiplier les commandes du type «
network », il peut être souhaitable de pouvoir automatiquement
réinjecter tout ou une partie des réseaux d'un IGP (RIP, IS-IS,
OSPF) dans l'EGP : c'est la commande « redistribute » qui remplit ce
rôle. Il est aussi possible de réinjecter dans BGP des «
routes » statiques, mais ces réseaux seront marqués avec une
origine « inconnue » dans la table de routage (réseaux
marqués « ? »).
Par défaut, si aucun filtrage particulier n'est
configuré sur le routeur eBGP, ce dernier va retransmettre à ses
voisins l'intégralité des réseaux connus (en fait tous les
« best-paths») dans sa table de routage (protocole transitif).
D'où, par exemple, la nécessité pour ce routeur eBGP, de
ne pas forcément tout rediffuser à d'autres voisins eBGP. La
fonction «distributelist », associée à la commande
« neighbor », remplit ce rôle:
neighbor[adresse IP du voisin]
distribute-list[numéro d'ACL] [in | out]
2.6.2. Synchronisation
Une des règles de BGP précise qu'un routeur ne
doit pas annoncer, à ses voisins eBGP, de réseaux appris par des
voisins iBGP par exemple, à moins que ces réseaux ne soient
également propagés au sein de l'AS. Ce principe s'appelle la
« synchronisation BGP ».
Il est possible de désactiver la synchronisation BGP
sur un routeur, surtout si un « full-mesh » iBGP est
configuré, garantissant ainsi que la destination reste joignable dans
l'iBGP. Pour désactiver la synchronisation, il faut appliquer la
commande suivante dans la section « router bgp [numéro d'AS]
»:
no synchronisation
|