7. How PEs Learn Routes from CEs
7. Comment les PE apprennent les routes depuis les CE (How PEs Learn Routes from CEs)
Un routeur PE raccordé à un VPN particulier doit, pour chaque circuit de raccordement menant à ce VPN, connaître quelles adresses de ce VPN sont accessibles via ce circuit.
Le PE utilise le discriminateur de route (RD) configuré pour convertir ces adresses en adresses VPN-IPv4. Le PE utilise ensuite ces routes VPN-IPv4 comme entrée pour BGP. Les routes d'un site VPN ne sont pas divulguées (leak) dans l'IGP du réseau dorsal.
Les techniques de distribution de routes PE/CE possibles dépendent de si un CE particulier se trouve dans un « VPN de transit » (transit VPN). Par « VPN de transit », on entend un VPN contenant un routeur qui reçoit des routes depuis un « tiers » (c'est-à-dire depuis un routeur qui n'est pas dans ce VPN et qui n'est pas non plus un routeur PE) et redistribue ces routes vers un routeur PE. Un VPN qui n'est pas un VPN de transit est un « VPN terminal » (stub VPN). La grande majorité des VPN (y compris presque tous les réseaux d'entreprise) sont de ce type de « terminal ».
Les techniques de distribution PE/CE possibles sont :
-
On peut utiliser le routage statique (static routing, c'est-à-dire la configuration). (Cela n'est probablement utile que dans un VPN terminal.)
-
Les routeurs PE et CE peuvent être des pairs du protocole RIP (Routing Information Protocol) [RIP], et le CE peut utiliser RIP pour informer le routeur PE de l'ensemble des préfixes d'adresse (address prefix) joignables sur son site. En configurant RIP sur le CE, il faut veiller à ce que les préfixes d'adresse provenant d'autres sites (c'est-à-dire ceux que le routeur CE a appris du routeur PE) ne soient jamais annoncés (advertise) en retour au PE. Plus précisément : si un routeur PE (disons PE1) reçoit une route VPN-IPv4 R1 et en conséquence distribue une route IPv4 R2 à un CE, alors R2 ne doit jamais être distribuée depuis le site de ce CE vers un routeur PE (disons PE2, où PE1 et PE2 peuvent être identiques ou différents), à moins que PE2 ne mappe R2 vers une route VPN-IPv4 différente de R1 (c'est-à-dire ayant un RD différent).
-
Les routeurs PE et CE peuvent être des pairs OSPF (Open Shortest Path First). Le routeur PE étant pair OSPF d'un routeur CE apparaît, du point de vue de ce CE, comme un routeur de zone 0 (area 0). Si un routeur PE est pair OSPF de routeurs CE se trouvant dans différents VPN, ce PE doit bien sûr exécuter plusieurs instances (instance) d'OSPF.
Les routes IPv4 qu'un PE apprend d'un CE via OSPF sont redistribuées en tant que routes VPN-IPv4 dans BGP. L'attribut de communauté étendue (Extended Community) est utilisé pour transporter avec la route toutes les informations nécessaires à ce que la route soit distribuée avec le bon type de LSA OSPF (Link State Advertisement) aux autres routeurs CE du VPN. Le balisage de route OSPF (route tagging) est utilisé pour garantir que les routes reçues du réseau dorsal MPLS/BGP ne soient pas renvoyées vers le réseau dorsal.
La procédure complète d'utilisation d'OSPF entre PE et CE est spécifiée dans [VPN-OSPF] et [OSPF-2547-DNBIT].
-
Les routeurs PE et CE peuvent être des pairs BGP, et le routeur CE peut utiliser BGP (en particulier EBGP) pour informer le routeur PE de l'ensemble des préfixes d'adresse sur son site. (Cette technique peut être utilisée dans un VPN terminal ou un VPN de transit.)
Par rapport aux autres techniques, celle-ci présente plusieurs avantages :
a) Contrairement aux approches IGP, elle n'exige pas que le PE exécute plusieurs instances d'algorithmes de routage pour communiquer avec plusieurs CE.
b) BGP est conçu précisément pour cela : transmettre des informations de routage entre des systèmes fonctionnant dans des domaines d'administration différents.
c) Si le site contient une « passerelle détournée BGP » (BGP backdoor), c'est-à-dire un routeur ayant une connexion BGP avec un routeur situé hors du routeur PE, la procédure fonctionne correctement dans tous les cas. Les autres procédures peuvent fonctionner ou non, selon les circonstances.
d) L'utilisation de BGP permet au CE de transmettre facilement des attributs de route au PE. Un ensemble complet d'attributs et leur utilisation ne relèvent pas du présent document. Quelques exemples d'un tel usage :
- Le CE peut suggérer une cible de route (Route Target) particulière pour chaque route, parmi l'ensemble des cibles que le PE est autorisé à attacher à la route. Le PE attachera alors uniquement la cible suggérée, plutôt que l'ensemble. Cela donne à l'administrateur du CE un certain contrôle dynamique sur la distribution des routes depuis le CE.
- D'autres types d'attributs de communauté étendue peuvent être définis, dans l'intention de les faire passer de manière transparente (c'est-à-dire sans modification par le routeur PE) du CE vers le CE. Cela permettrait à l'administrateur du CE d'implémenter un filtrage de routes supplémentaire, au-delà de celui effectué par le PE, sans coordination avec le SP.En revanche, l'utilisation de BGP peut être nouvelle pour l'administrateur du CE.
Si un site n'est pas dans un VPN de transit, notez qu'il n'a pas besoin d'un numéro de système autonome (ASN) unique. Chaque CE d'un site non terminal peut utiliser le même ASN. Celui-ci peut être choisi dans l'espace d'ASN privé et sera supprimé (strip) par le PE. Les boucles de routage (routing loop) sont évitées par l'utilisation de l'attribut Site of Origin (origine du site).
Que se passe-t-il si un ensemble de sites constitue un VPN de transit ? En général, cela n'arrive que si ce VPN est lui-même le réseau d'un fournisseur d'accès Internet (ISP), celui-ci achetant lui-même un service de réseau dorsal à un autre SP. Ce dernier peut être appelé « opérateur d'opérateurs » (carrier's carrier). Dans ce cas, la meilleure façon de fournir ce VPN est de faire en sorte que les routeurs CE prennent en charge MPLS et utilisent la technique décrite à la section 9.
Lorsque nous n'avons pas besoin de distinguer les différentes façons dont un PE apprend l'existence des préfixes d'adresse présents sur un site donné, nous dirons simplement que le PE a « appris » (learn) ces routes depuis ce site. Cela inclut le cas où le PE a été configuré manuellement avec ces routes.
Avant qu'un PE puisse redistribuer une route VPN-IPv4 qu'il a apprise depuis un site, il doit lui assigner un attribut Route Target (voir section 4.3.1), et il peut lui assigner un attribut Site of Origin (origine du site).
L'attribut Site of Origin (s'il est utilisé) est codé comme une communauté étendue Route Origin [BGP-EXTCOMM]. Cet attribut vise à identifier de manière unique l'ensemble des routes apprises depuis un site particulier. Il est nécessaire dans certains cas pour garantir qu'une route apprise depuis un site particulier via un circuit PE/CE donné ne soit pas redistribuée vers ce site via un autre circuit PE/CE. Cela est particulièrement utile si BGP est utilisé comme protocole PE/CE mais que les différents sites n'ont pas encore reçu d'ASN distincts.