Connexion de VPN de couche 3 à des VPN de couche 2
Présentation de l’interconnexion des VPN de couche 2 avec les VPN de couche 3
À mesure que la demande en services MPLS de couche 2 augmente, les fournisseurs de services doivent relever de nouveaux défis : interagir avec les services de couche 2 et de couche 3 et offrir à leurs clients des services à valeur ajoutée. Junos OS dispose de diverses fonctionnalités pour répondre aux besoins des fournisseurs de services. L’une de ces fonctionnalités est l’utilisation d’une interface de tunnel logique. Cette fonctionnalité de Junos OS utilise un PIC de tunnel pour boucler les paquets sortants et sortants du moteur de transfert de paquets afin de relier le réseau de couche 2 au réseau de couche 3. La solution est limitée par les contraintes de bande passante du tunnel logique imposées par le PIC du tunnel.
Interconnexion des VPN de couche 2 avec les applications VPN de couche 3
L’interconnexion d’un VPN de couche 2 à un VPN de couche 3 offre les avantages suivants :
Une ligne d’accès unique pour fournir plusieurs services : les VPN traditionnels sur des circuits de couche 2 nécessitent le provisionnement et la maintenance de réseaux distincts pour les services IP et pour les services VPN. En revanche, les VPN de couche 2 permettent de partager l'infrastructure réseau centrale d'un fournisseur entre les services IP et VPN de couche 2, réduisant ainsi le coût de fourniture de ces services.
Flexibilité : le fournisseur de services peut prendre en charge de nombreux types de réseaux différents. Si tous les sites d’un VPN appartiennent à la même entreprise, il s’agit d’un intranet. Si plusieurs sites appartiennent à différentes entreprises, le VPN est un extranet. Un site peut être situé dans plusieurs VPN.
Large éventail de stratégies possibles : vous pouvez attribuer à chaque site d’un VPN un chemin différent de tous les autres sites, ou vous pouvez forcer le trafic entre certaines paires de sites acheminés via un site tiers et ainsi faire passer un certain trafic à travers un pare-feu.
Réseau évolutif : cette conception améliore l'évolutivité, car elle élimine le besoin de routeurs PE (Provider Edge) pour gérer toutes les routes VPN du fournisseur de services. Chaque routeur PE gère une table VRF pour chacun de ses sites directement connectés. Chaque connexion client (par exemple, un circuit virtuel permanent de relais de trames, un circuit virtuel permanent ATM ou un VLAN) est mappée à une table VRF spécifique. Il s’agit donc d’un port sur le routeur PE et non d’un site associé à une table VRF. Plusieurs ports d’un routeur PE peuvent être associés à une seule table VRF. C’est la capacité des routeurs PE à gérer plusieurs tables de transfert qui prend en charge la ségrégation des informations de routage par VPN.
Utilisation de réflecteurs de route : les routeurs de périphérie du fournisseur peuvent maintenir des sessions IBGP vers des réflecteurs de routage au lieu d’un maillage complet de sessions IBGP. Le déploiement de plusieurs réflecteurs de route améliore l’évolutivité du modèle RFC 2547bis, car il élimine le besoin d’un seul composant réseau pour gérer toutes les routes VPN.
Plusieurs VPN sont séparés et distincts les uns des autres : les routeurs de périphérie client ne s’appairent pas les uns aux autres. Deux sites disposent d’une connectivité IP uniquement sur la dorsale commune, et seulement s’il existe un VPN qui contient les deux sites. Cette fonctionnalité permet de garder les VPN séparés et distincts l’un de l’autre, même si deux VPN ont un espace d’adressage qui se chevauche.
Simple d’utilisation pour les clients : les clients peuvent obtenir des services de dorsale IP auprès d’un fournisseur de services, sans avoir besoin d’entretenir leur propre réseau dorsal
Exemple : Interconnexion d’un VPN de couche 2 avec un VPN de couche 3
Cet exemple fournit une procédure pas à pas et des commandes pour interconnecter et vérifier un VPN de couche 2 avec un VPN de couche 3. Il contient les sections suivantes :
Exigences
Cet exemple utilise les composants matériels et logiciels suivants :
Junos OS version 9.3 ou ultérieure
Cinq routeurs MX Series
Trois routeurs M Series
Deux routeurs T Series
Vue d’ensemble et topologie
Un VPN de couche 2 est un type de réseau privé virtuel (VPN) qui utilise des étiquettes MPLS pour transporter les données. La communication s’effectue entre les routeurs PE (Provider Edge).
Les VPN de couche 2 utilisent BGP comme protocole de signalisation. Par conséquent, leur conception est plus simple et nécessitent moins de frais de provisionnement que les VPN traditionnels sur des circuits de couche 2. La signalisation BGP permet également la découverte automatique des homologues VPN de couche 2. Les VPN de couche 2 peuvent être équipés d’un maillage complet ou d’une topologie en étoile. Dans le réseau central, le mécanisme de tunnelisation est généralement MPLS. Toutefois, les VPN de couche 2 peuvent également utiliser d’autres protocoles de tunnelisation, tels que GRE.
Les VPN de couche 3 sont basés sur les VPN IP BGP/MPLS RFC 2547bis, RFC 2547bis. La RFC 2547bis définit un mécanisme par lequel les fournisseurs de services peuvent utiliser leurs dorsales IP pour fournir des services VPN à leurs clients. Un VPN de couche 3 est un ensemble de sites qui partagent des informations de routage communes et dont la connectivité est contrôlée par un ensemble de stratégies. Les sites qui composent un VPN de couche 3 sont connectés via la dorsale Internet publique existante d’un fournisseur. Les VPN RFC 2547bis sont également connus sous le nom de VPN BGP/VPN MPLS, car BGP est utilisé pour distribuer les informations de routage VPN sur la dorsale du fournisseur, et MPLS est utilisé pour transférer le trafic VPN à travers la dorsale vers des sites VPN distants.
Les réseaux des clients, parce qu’ils sont privés, peuvent utiliser soit des adresses publiques, soit des adresses privées, telles que définies dans la RFC 1918, Allocation d’adresses pour les Internets privés. Lorsque les réseaux des clients qui utilisent des adresses privées se connectent à l’infrastructure Internet publique, les adresses privées peuvent chevaucher les mêmes adresses privées que celles utilisées par d’autres utilisateurs du réseau. Les VPN MPLS/BGP résolvent ce problème en ajoutant un séparateur de route. Un séparateur de route est un préfixe d’identifiant VPN qui est ajouté à chaque adresse à partir d’un site VPN particulier, créant ainsi une adresse unique à la fois dans le VPN et sur Internet.
De plus, chaque VPN possède sa propre table de routage spécifique au VPN qui contient uniquement les informations de routage de ce VPN. Pour séparer les routes d’un VPN des routes de l’Internet public ou de celles d’autres VPN, le routeur PE crée une table de routage distincte pour chaque VPN, appelée table de routage et de transfert VPN (VRF). Le routeur PE crée une table VRF pour chaque VPN disposant d’une connexion à un routeur CE (Customer Edge). Tout client ou site appartenant au VPN ne peut accéder qu’aux routes de ce VPN dans les tables VRF. Chaque table VRF est associée à un ou plusieurs attributs de communauté étendue qui identifient la route comme appartenant à un ensemble spécifique de routeurs. L’un d’entre eux, l’attribut route target , identifie un ensemble de sites (tables VRF) auxquels un routeur PE distribue des routes. Le routeur PE utilise la cible de route pour contraindre l’importation de routes distantes dans ses tables VRF.
Lorsqu’un routeur PE entrant reçoit des routes annoncées à partir d’un routeur CE directement connecté, il compare la route reçue à la stratégie d’exportation VRF de ce VPN.
S’il correspond, la route est convertie au format VPN-IPv4, c’est-à-dire que le distingueur de route est ajouté à la route. Le routeur PE annonce ensuite le routage au format VPN-IPv4 aux routeurs PE distants. Il associe également une cible de route à chaque route apprise à partir des sites directement connectés. La cible de route attachée à la route est basée sur la valeur de la stratégie de cible d’exportation configurée de la table VRF. Les routes sont ensuite distribuées à l’aide de sessions IBGP, qui sont configurées dans le réseau central du fournisseur.
Si la route du routeur CE ne correspond pas, elle n’est pas exportée vers d’autres routeurs PE, mais elle peut toujours être utilisée localement pour le routage, par exemple, si deux routeurs CE dans le même VPN sont directement connectés au même routeur PE.
Lorsqu’un routeur PE sortant reçoit une route, il la compare à la stratégie d’importation de la session IBGP entre les routeurs PE. S’il est accepté, le routeur place la route dans sa table bgp.l3vpn.0. Dans le même temps, le routeur compare la route à la stratégie d’importation VRF du VPN. S’il correspond, le séparateur de route est supprimé de la route et la route est placée dans la table VRF (la routing-instance-nametable .inet.0) au format IPv4.
Topologie
La figure 1 montre la topologie physique d’une interconnexion VPN de couche 2 à VPN de couche 3.
de couche 3
La topologie logique d’une interconnexion VPN de couche 2 à VPN de couche 3 est illustrée en figure 2.
de couche 3
Les définitions suivantes décrivent la signification des abréviations de dispositif utilisées dans les figures 1 et 2.
Périphérique de périphérie client (CE) : périphérique situé dans les locaux du client qui fournit un accès au VPN du fournisseur de services via une liaison de données vers un ou plusieurs routeurs de périphérie du fournisseur (PE).
En règle générale, le périphérique CE est un routeur IP qui établit une contiguïté avec ses routeurs PE directement connectés. Une fois la contiguïté établie, le routeur CE annonce les routes VPN locales du site au routeur PE et apprend les routes VPN distantes à partir du routeur PE.
Périphérique de périphérie du fournisseur (PE) : équipement, ou ensemble d'appareils, à la périphérie du réseau du fournisseur qui présente la vue du fournisseur sur le site du client.
Les routeurs PE échangent des informations de routage avec les routeurs CE. Les routeurs PE connaissent les VPN qui s’y connectent, et les routeurs PE maintiennent l’état VPN. Un routeur PE n’est nécessaire que pour gérer les routes VPN des VPN auxquels il est directement connecté. Après avoir appris les routes VPN locales des routeurs CE, un routeur PE échange des informations de routage VPN avec d’autres routeurs PE utilisant IBGP. Enfin, lorsque MPLS est utilisé pour transférer le trafic de données VPN sur la dorsale du fournisseur, le routeur PE entrant fonctionne comme le routeur de commutation d’étiquettes d’entrée (LSR) et le routeur PE de sortie fonctionne comme le LSR de sortie.
Équipement fournisseur (P) : équipement qui fonctionne à l'intérieur du réseau central du fournisseur et qui ne s'interface pas directement avec un CE.
Bien que le périphérique P soit un élément clé de la mise en œuvre des VPN pour les clients du fournisseur de services et qu’il puisse fournir le routage pour de nombreux tunnels exploités par le fournisseur appartenant à différents VPN, il n’est pas lui-même compatible VPN et ne conserve pas l’état VPN. Son rôle principal est de permettre au fournisseur de services de faire évoluer ses offres VPN, par exemple en agissant comme point d’agrégation pour plusieurs routeurs PE.
Les routeurs P fonctionnent comme des LSR de transit MPLS lors du transfert de trafic de données VPN entre les routeurs PE. Les routeurs P ne sont nécessaires que pour gérer les routes vers les routeurs PE du fournisseur ; ils ne sont pas tenus de gérer des informations de routage VPN spécifiques pour chaque site client.
Configuration
Pour interconnecter un VPN de couche 2 à un VPN de couche 3, effectuez les tâches suivantes :
Configuration des protocoles et interfaces de base
Procédure étape par étape
Sur chaque routeur PE et P, configurez OSPF avec des extensions d’ingénierie de trafic sur toutes les interfaces. Désactivez OSPF sur l’interface fxp0.0.
[edit protocols] ospf { traffic-engineering; area 0.0.0.0 { interface all; interface fxp0.0 { disable; } } }Sur tous les routeurs centraux, activez MPLS sur toutes les interfaces. Désactivez MPLS sur l’interface fxp0.0.
[edit protocols] mpls { interface all; interface fxp0.0 { disable; } }Sur tous les routeurs centraux, créez un groupe homologue pair BGP interne et spécifiez l’adresse du réflecteur de route (192.0.2.7) comme adresse de voisinage. Activez également BGP pour transporter les messages d’informations d’accessibilité de la couche réseau (NLRI) VPLS de couche 2 pour ce groupe homologue en incluant l’instruction
signalingau niveau hiérarchique[edit protocols bgp group group-name family l2vpn].[edit protocols] bgp { group RR { type internal; local-address 192.0.2.2; family l2vpn { signaling; } neighbor 192.0.2.7; } }Sur le routeur PE3, créez un groupe homologue pair BGP interne et spécifiez l’adresse IP du réflecteur de route (192.0.2.7) comme adresse de voisinage. Activez BGP pour transporter les messages NLRI VPLS de couche 2 pour ce groupe homologue et activez le traitement des adresses VPN-IPv4 en incluant l’instruction au niveau de la
unicast[edit protocols bgp group group-name family inet-vpn]hiérarchie.[edit protocols] bgp { group RR { type internal; local-address 192.0.2.3; family inet-vpn { unicast; } family l2vpn { signaling; } neighbor 192.0.2.7; } }Pour le domaine VPN de couche 3 sur les routeurs PE3 et PE5, activez RSVP sur toutes les interfaces. Désactivez RSVP sur l’interface fxp0.0.
[edit protocols] rsvp { interface all; interface fxp0.0 { disable; } }Sur les routeurs PE3 et PE5, créez des chemins de commutation d’étiquettes (LSP) vers le réflecteur de route et les autres routeurs PE. L’exemple suivant montre la configuration sur le routeur PE5.
[edit protocols] mpls { label-switched-path to-RR { to 192.0.2.7; } label-switched-path to-PE2 { to 192.0.2.2; } label-switched-path to-PE3 { to 192.0.2.3; } label-switched-path to-PE4 { to 192.0.2.4; } label-switched-path to-PE1 { to 192.0.2.1; } }Sur les routeurs PE1, PE2, PE3 et PE5, configurez les interfaces centrales avec une adresse IPv4 et activez la famille d’adresses MPLS. L’exemple suivant montre la configuration de l’interface xe-0/1/0 sur le routeur PE2.
[edit] interfaces { xe-0/1/0 { unit 0 { family inet { address 10.10.2.2/30; } family mpls; } } }Sur les routeurs PE2 et PE3, configurez LDP pour le protocole de signalisation MPLS VPN de couche 2 pour toutes les interfaces. Désactivez LDP sur l’interface fxp0.0. (Vous pouvez également utiliser RSVP.)
[edit protocols] ldp { interface all; interface fxp0.0 { disable; } }Sur le réflecteur de route, créez un groupe d’homologues pair BGP interne et spécifiez les adresses IP des routeurs PE en tant que voisins.
[edit] protocols { bgp { group RR { type internal; local-address 192.0.2.7; family inet { unicast; } family inet-vpn { unicast; } family l2vpn { signaling; } cluster 192.0.2.7; neighbor 192.0.2.1; neighbor 192.0.2.2; neighbor 192.0.2.4; neighbor 192.0.2.5; neighbor 192.0.2.3; } } }Sur le réflecteur de route, configurez les LSP MPLS vers les routeurs PE3 et PE5 pour résoudre les sauts BGP suivants à partir de la table de routage inet.3.
[edit] protocols { mpls { label-switched-path to-pe3 { to 192.0.2.3; } label-switched-path to-pe5 { to 192.0.2.5; } interface all; } }
Configuration des interfaces VPN
Procédure étape par étape
Le routeur PE2 est l’une des extrémités du VPN de couche 2. Le routeur PE3 effectue l’assemblage VPN de couche 2 entre le VPN de couche 2 et le VPN de couche 3. Le routeur PE3 utilise l’interface de tunnel logique (interface LT) configurée avec différentes unités d’interface logique appliquées sous deux instances VPN de couche 2 différentes. Le paquet est bouclé via l’interface LT configurée sur le routeur PE3. La configuration du routeur PE5 contient l’interface PE-CE.
Sur le routeur PE2, configurez l’encapsulation de l’interface ge-1/0/2. Incluez l’instruction encapsulation et spécifiez l’option
ethernet-ccc(vlan-cccl’encapsulation est également prise en charge) au niveau de la[edit interfaces ge-1/0/2]hiérarchie. L’encapsulation doit être la même dans l’ensemble d’un domaine VPN de couche 2 (routeurs PE2 et PE3). Configurez également l’interface lo0.[edit] interfaces { ge-1/0/2 { encapsulation ethernet-ccc; unit 0; } lo0 { unit 0 { family inet { address 192.0.2.2/24; } } } }Sur le routeur PE2, configurez l’instance de routage au niveau de la hiérarchie [
edit routing-instances]. Configurez également le protocole VPN de couche 2 au niveau de la hiérarchie [edit routing-instances routing-instances-name protocols]. Configurez l’ID du site distant sur 3. L’ID de site 3 représente le routeur PE3 (Hub-PE). Le VPN de couche 2 utilise LDP comme protocole de signalisation. N’oubliez pas que dans l’exemple suivant, l’instance de routage et le protocole sont nommésl2vpn.[edit] routing-instances {l2vpn{ # routing instance instance-type l2vpn; interface ge-1/0/2.0; route-distinguisher 65000:2; vrf-target target:65000:2; protocols {l2vpn{ # protocol encapsulation-type ethernet; site CE2 { site-identifier 2; interface ge-1/0/2.0 { remote-site-id 3; } } } } } }Sur le routeur PE5, configurez l’interface Ethernet Gigabit pour la liaison
ge-2/0/0PE-CE et configurez l’interfacelo0.[edit interfaces] ge-2/0/0 { unit 0 { family inet { address 198.51.100.8/24; } } } lo0 { unit 0 { } }Sur le routeur PE5, configurez l’instance de routage VPN de couche 3 (
L3VPN) au niveau de la[edit routing-instances]hiérarchie. Configurez également BGP au niveau de la[edit routing-instances L3VPN protocols]hiérarchie.[edit] routing-instances { L3VPN { instance-type vrf; interface ge-2/0/0.0; route-distinguisher 65000:5; vrf-target target:65000:2; vrf-table-label; protocols { bgp { group ce5 { neighbor 198.51.100.2 { peer-as 200; } } } } } }Dans un routeur MX Series, tel que le routeur PE3, vous devez créer l’interface des services de tunnel à utiliser pour les services de tunnel. Pour créer l’interface du service de tunnel, incluez l’instruction
bandwidthet spécifiez la quantité de bande passante à réserver pour les services de tunnel en gigabits par seconde au niveau de la[edit chassis fpc slot-number pic slot-number tunnel-services]hiérarchie.[edit] chassis { dump-on-panic; fpc 1 { pic 1 { tunnel-services { bandwidth 1g; } } } }Sur le routeur PE3, configurez l’interface Gigabit Ethernet.
Incluez l’instruction
addressau niveau de la[edit interfaces ge-1/0/1.0 family inet]hiérarchie et spécifiez-la198.51.100.9/24comme adresse IP.[edit] interfaces { ge-1/0/1 { unit 0 { family inet { address 198.51.100.9/24; } } } }Sur le routeur PE3, configurez l’interface du
lt-1/1/10.0tunnel logique au niveau de la[edit interfaces lt-1/1/10 unit 0]hiérarchie. Le routeur PE3 est le routeur qui relie le VPN de couche 2 au VPN de couche 3 à l’aide de l’interface de tunnel logique. C’est la configuration des interfaces de l’unité homologue qui établit l’interconnexion.Pour configurer l’interface, incluez l’instruction
encapsulationet spécifiez l’optionethernet-ccc. Incluez l’instructionpeer-unitet spécifiez l’unité1d’interface logique en tant qu’interface de tunnel homologue. Incluez l’instructionfamilyet spécifiez l’optionccc.[edit] interfaces { lt-1/1/10 { unit 0 { encapsulation ethernet-ccc; peer-unit 1; family ccc; } } }Sur le routeur PE3, configurez l’interface du
lt-1/1/10.1tunnel logique au niveau de la[edit interfaces lt-1/1/10 unit 1]hiérarchie.Pour configurer l’interface, incluez l’instruction
encapsulationet spécifiez l’optionethernet. Incluez l’instructionpeer-unitet spécifiez l’unité0d’interface logique en tant qu’interface de tunnel homologue. Incluez l’instructionfamilyet spécifiez l’optioninet. Incluez l’instructionaddressau niveau de la[edit interfaces lt-1/1/10 unit 0]hiérarchie et spécifiez-la198.51.100.7/24comme adresse IPv4.[edit] interfaces { lt-1/1/10 { unit 1 { encapsulation ethernet; peer-unit 0; family inet { address 198.51.100.7/24; } } } }Sur le routeur PE3, ajoutez l’unité d’interface
lt1 à l’instance de routage au niveau de la[edit routing-instances L3VPN]hiérarchie. Configurez le type d’instance commevrfavecltl’unité homologue 1 en tant qu’interface PE-CE pour terminer le VPN de couche 2 sur le routeur PE2 dans le VPN de couche 3 sur le routeur PE3.[edit] routing-instances { L3VPN { instance-type vrf; interface ge-1/0/1.0; interface lt-1/1/10.1; route-distinguisher 65000:33; vrf-target target:65000:2; vrf-table-label; protocols { bgp { export direct; group ce3 { neighbor 198.51.100.10 { peer-as 100; } } } } } }Sur le routeur PE3, ajoutez l’unité d’interface
lt0 à l’instance de routage au niveau de la[edit routing-instances protocols l2vpn]hiérarchie. Configurez également la même cible vrf pour les instances de routage VPN de couche 2 et VPN de couche 3, afin que les routes puissent être divulguées entre les instances. L’exemple de configuration de l’étape précédente montre la cible vrf pour l’instance deL3VPNroutage. L’exemple suivant montre la cible vrf pour l’instancel2vpnde routage.[edit] routing-instances { l2vpn { instance-type l2vpn; interface lt-1/1/10.0; route-distinguisher 65000:3; vrf-target target:65000:2; protocols { l2vpn { encapsulation-type ethernet; site CE3 { site-identifier 3; interface lt-1/1/10.0 { remote-site-id 2; } } } } } }Sur le routeur PE3, configurez l’instruction
policy-statementpour exporter les routes apprises de l’unité d’interface 1 directement connectéeltvers tous les routeurs CE pour la connectivité, si nécessaire.[edit] policy-options { policy-statement direct { term 1 { from protocol direct; then accept; } } }
Résultats
La sortie suivante montre la configuration complète du routeur PE2 :
Routeur PE2
interfaces {
xe-0/1/0 {
unit 0 {
family inet {
address 10.10.2.2/30;
}
family mpls;
}
}
xe-0/2/0 {
unit 0 {
family inet {
address 10.10.5.1/30;
}
family mpls;
}
}
xe-0/3/0 {
unit 0 {
family inet {
address 10.10.4.1/30;
}
family mpls;
}
}
ge-1/0/2 {
encapsulation ethernet-ccc;
unit 0;
}
fxp0 {
apply-groups [ re0 re1 ];
}
lo0 {
unit 0 {
family inet {
address 192.0.2.2/24;
}
}
}
}
routing-options {
static {
route 172.0.0.0/8 next-hop 172.19.59.1;
}
autonomous-system 65000;
}
protocols {
mpls {
interface all;
interface fxp0.0 {
disable;
}
}
bgp {
group RR {
type internal;
local-address 192.0.2.2;
family l2vpn {
signaling;
}
neighbor 192.0.2.7;
}
}
ospf {
traffic-engineering;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
}
}
ldp {
interface all;
interface fxp0.0 {
disable;
}
}
}
routing-instances {
l2vpn {
instance-type l2vpn;
interface ge-1/0/2.0;
route-distinguisher 65000:2;
vrf-target target:65000:2;
protocols {
l2vpn {
encapsulation-type ethernet;
site CE2 {
site-identifier 2;
interface ge-1/0/2.0 {
remote-site-id 3;
}
}
}
}
}
}
La sortie suivante montre la configuration finale du routeur PE5 :
Routeur PE5
interfaces {
ge-0/0/0 {
unit 0 {
family inet {
address 10.10.4.2/30;
}
family mpls;
}
}
xe-0/1/0 {
unit 0 {
family inet {
address 10.10.6.2/30;
}
family mpls;
}
}
ge-1/0/0 {
unit 0 {
family inet {
address 10.10.9.1/30;
}
family mpls;
}
}
xe-1/1/0 {
unit 0 {
family inet {
address 10.10.3.2/30;
}
family mpls;
}
}
ge-2/0/0 {
unit 0 {
family inet {
address 198.51.100.8/24;
}
}
}
lo0 {
unit 0 {
family inet {
address 192.0.2.5/24;
}
}
}
}
routing-options {
static {
route 172.0.0.0/8 next-hop 172.19.59.1;
}
autonomous-system 65000;
}
protocols {
rsvp {
interface all {
link-protection;
}
interface fxp0.0 {
disable;
}
}
mpls {
label-switched-path to-RR {
to 192.0.2.7;
}
label-switched-path to-PE2 {
to 192.0.2.2;
}
label-switched-path to-PE3 {
to 192.0.2.3;
}
label-switched-path to-PE4 {
to 192.0.2.4;
}
label-switched-path to-PE1 {
to 192.0.2.1;
}
interface all;
interface fxp0.0 {
disable;
}
}
bgp {
group to-rr {
type internal;
local-address 192.0.2.5;
family inet-vpn {
unicast;
}
family l2vpn {
signaling;
}
neighbor 192.0.2.7;
}
}
ospf {
traffic-engineering;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
}
}
ldp {
interface all;
interface fxp0.0 {
disable;
}
}
}
routing-instances {
L3VPN {
instance-type vrf;
interface ge-2/0/0.0;
route-distinguisher 65000:5;
vrf-target target:65000:2;
vrf-table-label;
protocols {
bgp {
group ce5 {
neighbor 198.51.100.2 {
peer-as 200;
}
}
}
}
}
}
La sortie suivante montre la configuration finale du routeur PE3 :
Routeur PE3
chassis {
dump-on-panic;
fpc 1 {
pic 1 {
tunnel-services {
bandwidth 1g;
}
}
}
network-services ip;
}
interfaces {
ge-1/0/1 {
unit 0 {
family inet {
address 198.51.100.9/24;
}
}
}
lt-1/1/10 {
unit 0 {
encapsulation ethernet-ccc;
peer-unit 1;
family ccc;
}
unit 1 {
encapsulation ethernet;
peer-unit 0;
family inet {
address 198.51.100.7/24;
}
}
}
xe-2/0/0 {
unit 0 {
family inet {
address 10.10.20.2/30;
}
family mpls;
}
}
xe-2/1/0 {
unit 0 {
family inet {
address 10.10.6.1/30;
}
family mpls;
}
}
xe-2/2/0 {
unit 0 {
family inet {
address 10.10.5.2/30;
}
family mpls;
}
}
xe-2/3/0 {
unit 0 {
family inet {
address 10.10.1.2/30;
}
family mpls;
}
}
lo0 {
unit 0 {
family inet {
address 192.0.2.3/24;
}
}
}
}
routing-options {
static {
route 172.0.0.0/8 next-hop 172.19.59.1;
}
autonomous-system 65000;
}
protocols {
rsvp {
interface all;
interface fxp0.0 {
disable;
}
}
mpls {
label-switched-path to-RR {
to 192.0.2.7;
}
label-switched-path to-PE2 {
to 192.0.2.2;
}
label-switched-path to-PE5 {
to 192.0.2.5;
}
label-switched-path to-PE4 {
to 192.0.2.4;
}
label-switched-path to-PE1 {
to 192.0.2.1;
}
interface all;
interface fxp0.0 {
disable;
}
}
bgp {
group RR {
type internal;
local-address 192.0.2.3;
family inet-vpn {
unicast;
}
family l2vpn {
signaling;
}
neighbor 192.0.2.7;
}
}
ospf {
traffic-engineering;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
}
}
ldp {
interface all;
interface fxp0.0 {
disable;
}
}
}
policy-options {
policy-statement direct {
term 1 {
from protocol direct;
then accept;
}
}
}
routing-instances {
L3VPN {
instance-type vrf;
interface ge-1/0/1.0;
interface lt-1/1/10.1;
route-distinguisher 65000:33;
vrf-target target:65000:2;
vrf-table-label;
protocols {
bgp {
export direct;
group ce3 {
neighbor 198.51.100.10 {
peer-as 100;
}
}
}
}
}
l2vpn {
instance-type l2vpn;
interface lt-1/1/10.0;
route-distinguisher 65000:3;
vrf-target target:65000:2;
protocols {
l2vpn {
encapsulation-type ethernet;
site CE3 {
site-identifier 3;
interface lt-1/1/10.0 {
remote-site-id 2;
}
}
}
}
}
}
Vérification
Vérifiez l’interconnexion VPN de couche 2 à VPN de couche 3 :
- Vérification de l’interface VPN PE2 du routeur
- Vérification de l’interface VPN PE3 du routeur
- Vérification de la connectivité de bout en bout entre le routeur CE2 et le routeur CE5 et le routeur CE3
Vérification de l’interface VPN PE2 du routeur
But
Vérifiez que le VPN de couche 2 fonctionne bien au niveau de l’interface PE2 du routeur et que toutes les routes sont présentes.
Action
Utilisez la
show l2vpn connectionscommande pour vérifier que l’ID du site de connexion est 3 pour le routeur PE3 et que l’état estUp.user@PE2> show l2vpn connections Layer-2 VPN connections: Legend for connection status (St) EI -- encapsulation invalid NC -- interface encapsulation not CCC/TCC/VPLS EM -- encapsulation mismatch WE -- interface and instance encaps not same VC-Dn -- Virtual circuit down NP -- interface hardware not present CM -- control-word mismatch -> -- only outbound connection is up CN -- circuit not provisioned <- -- only inbound connection is up OR -- out of range Up -- operational OL -- no outgoing label Dn -- down LD -- local site signaled down CF -- call admission control failure RD -- remote site signaled down SC -- local and remote site ID collision LN -- local site not designated LM -- local site ID not minimum designated RN -- remote site not designated RM -- remote site ID not minimum designated XX -- unknown connection status IL -- no incoming label MM -- MTU mismatch MI -- Mesh-Group ID not available BK -- Backup connection ST -- Standby connection PF -- Profile parse failure PB -- Profile busy RS -- remote site standby Legend for interface status Up -- operational Dn -- down Instance: l2vpn Local site: CE2 (2) connection-site Type St Time last up # Up trans 3 rmt Up Jan 7 14:14:37 2010 1 Remote PE: 192.0.2.3, Negotiated control-word: Yes (Null) Incoming label: 800000, Outgoing label: 800001 Local interface: ge-1/0/2.0, Status: Up, Encapsulation: ETHERNETUtilisez la
show route tablecommande pour vérifier que la route VPN de couche 2 est présente et qu’il y a un prochain saut de10.10.5.2via l’interfacexe-0/2/0.0. La sortie suivante vérifie que les routes VPN de couche 2 sont présentes dans la table l2vpn.l2vpn.0. Une sortie similaire doit s’afficher pour le routeur PE3.user@PE2> show route table l2vpn.l2vpn.0 l2vpn.l2vpn.0: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 65000:2:2:3/96 *[L2VPN/170/-101] 02:40:35, metric2 1 Indirect 65000:3:3:1/96 *[BGP/170] 02:40:35, localpref 100, from 192.0.2.7 AS path: I > to 10.10.5.2 via xe-0/2/0.0Vérifiez que le routeur PE2 dispose d’une étiquette MPLS VPN de couche 2 pointant vers l’étiquette LDP du routeur PE3 dans les deux sens (PUSH et POP).
user@PE2> show route table mpls.0 mpls.0: 13 destinations, 13 routes (13 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 0 *[MPLS/0] 1w3d 08:57:41, metric 1 Receive 1 *[MPLS/0] 1w3d 08:57:41, metric 1 Receive 2 *[MPLS/0] 1w3d 08:57:41, metric 1 Receive 300560 *[LDP/9] 19:45:53, metric 1 > to 10.10.2.1 via xe-0/1/0.0, Pop 300560(S=0) *[LDP/9] 19:45:53, metric 1 > to 10.10.2.1 via xe-0/1/0.0, Pop 301008 *[LDP/9] 19:45:53, metric 1 > to 10.10.4.2 via xe-0/3/0.0, Swap 299856 301536 *[LDP/9] 19:45:53, metric 1 > to 10.10.4.2 via xe-0/3/0.0, Pop 301536(S=0) *[LDP/9] 19:45:53, metric 1 > to 10.10.4.2 via xe-0/3/0.0, Pop 301712 *[LDP/9] 16:14:52, metric 1 > to 10.10.5.2 via xe-0/2/0.0, Swap 315184 301728 *[LDP/9] 16:14:52, metric 1 > to 10.10.5.2 via xe-0/2/0.0, Pop 301728(S=0) *[LDP/9] 16:14:52, metric 1 > to 10.10.5.2 via xe-0/2/0.0, Pop 800000 *[L2VPN/7] 02:40:35 > via ge-1/0/2.0, Pop Offset: 4 ge-1/0/2.0 *[L2VPN/7] 02:40:35, metric2 1 > to 10.10.5.2 via xe-0/2/0.0, Push 800001 Offset: -4
Signification
L’instance l2vpn de routage se trouve au niveau de l’interface ge-1/0/2 et la route VPN de couche 2 est indiquée dans le tableau l2vpn.l2vpn.0. Le tableau mpls.0 indique les routes VPN de couche 2 utilisées pour transférer le trafic à l’aide d’une étiquette LDP.
Vérification de l’interface VPN PE3 du routeur
But
Vérifiez que la connexion VPN de couche 2 des routeurs PE2 et PE3 fonctionne Up bien.
Action
Vérifiez que la session BGP avec le réflecteur de route pour la famille
l2vpn-signalinget la familleinet-vpnest établie.user@PE3> show bgp summary Groups: 2 Peers: 2 Down peers: 0 Table Tot Paths Act Paths Suppressed History Damp State Pending bgp.l2vpn.0 1 1 0 0 0 0 bgp.L3VPN.0 1 1 0 0 0 0 Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active /Received/Accepted/Damped... 192.0.2.7 65000 2063 2084 0 1 15:35:16 Establ bgp.l2vpn.0: 1/1/1/0 bgp.L3VPN.0: 1/1/1/0 L3VPN.inet.0: 1/1/1/0 l2vpn.l2vpn.0: 1/1/1/0
La sortie suivante vérifie la route VPN de couche 2 et l’étiquette qui lui est associée.
user@PE3> show route table l2vpn.l2vpn.0 detail l2vpn.l2vpn.0: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden) 65000:2:2:3/96 (1 entry, 1 announced) *BGP Preference: 170/-101 Route Distinguisher: 65000:2 Next hop type: Indirect Next-hop reference count: 4 Source: 192.0.2.7 Protocol next hop: 192.0.2.2 Indirect next hop: 2 no-forward State: <Secondary Active Int Ext> Local AS: 65000 Peer AS: 65000 Age: 2:45:52 Metric2: 1 Task: BGP_65000.192.0.2.7+60585 Announcement bits (1): 0-l2vpn-l2vpn AS path: I (Originator) Cluster list: 192.0.2.7 AS path: Originator ID: 192.0.2.2 Communities: target:65000:2 Layer2-info: encaps:ETHERNET, control flags:Control-Word, mtu: 0, site preference: 100 Accepted Label-base: 800000, range: 2, status-vector: 0x0 Localpref: 100 Router ID: 192.0.2.7 Primary Routing Table bgp.l2vpn.0La sortie suivante montre la route MPLS.0 L2VPN dans la table de routage mpls.0.
user@PE3> show route table mpls.0 mpls.0: 21 destinations, 21 routes (21 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 0 *[MPLS/0] 1w3d 09:05:41, metric 1 Receive 1 *[MPLS/0] 1w3d 09:05:41, metric 1 Receive 2 *[MPLS/0] 1w3d 09:05:41, metric 1 Receive 16 *[VPN/0] 15:59:24 to table L3VPN.inet.0, Pop 315184 *[LDP/9] 16:21:53, metric 1 > to 10.10.20.1 via xe-2/0/0.0, Pop 315184(S=0) *[LDP/9] 16:21:53, metric 1 > to 10.10.20.1 via xe-2/0/0.0, Pop 315200 *[LDP/9] 01:13:44, metric 1 to 10.10.20.1 via xe-2/0/0.0, Swap 625297 > to 10.10.6.2 via xe-2/1/0.0, Swap 299856 315216 *[LDP/9] 16:21:53, metric 1 > to 10.10.6.2 via xe-2/1/0.0, Pop 315216(S=0) *[LDP/9] 16:21:53, metric 1 > to 10.10.6.2 via xe-2/1/0.0, Pop 315232 *[LDP/9] 16:21:45, metric 1 > to 10.10.1.1 via xe-2/3/0.0, Pop 315232(S=0) *[LDP/9] 16:21:45, metric 1 > to 10.10.1.1 via xe-2/3/0.0, Pop 315248 *[LDP/9] 16:21:53, metric 1 > to 10.10.5.1 via xe-2/2/0.0, Pop 315248(S=0) *[LDP/9] 16:21:53, metric 1 > to 10.10.5.1 via xe-2/2/0.0, Pop 315312 *[RSVP/7] 15:02:40, metric 1 > to 10.10.6.2 via xe-2/1/0.0, label-switched-path to-pe5 315312(S=0) *[RSVP/7] 15:02:40, metric 1 > to 10.10.6.2 via xe-2/1/0.0, label-switched-path to-pe5 315328 *[RSVP/7] 15:02:40, metric 1 > to 10.10.20.1 via xe-2/0/0.0, label-switched-path to-RR 315360 *[RSVP/7] 15:02:40, metric 1 > to 10.10.20.1 via xe-2/0/0.0, label-switched-path to-RR 316272 *[RSVP/7] 01:13:27, metric 1 > to 10.10.6.2 via xe-2/1/0.0, label-switched-path Bypass->10.10.9.1 316272(S=0) *[RSVP/7] 01:13:27, metric 1 > to 10.10.6.2 via xe-2/1/0.0, label-switched-path Bypass->10.10.9.1 800001 *[L2VPN/7] 02:47:33 > via lt-1/1/10.0, Pop Offset: 4 lt-1/1/10.0 *[L2VPN/7] 02:47:33, metric2 1 > to 10.10.5.1 via xe-2/2/0.0, Push 800000 Offset: -4Utilisez la
show route table mpls.0commande avec l’option permettant d’afficher les attributs BGP de la route, tels que le type de saut suivant et lesdetailopérations d’étiquette.user@PE5> show route table mpls.0 detail lt-1/1/10.0 (1 entry, 1 announced) *L2VPN Preference: 7 Next hop type: Indirect Next-hop reference count: 2 Next hop type: Router, Next hop index: 607 Next hop: 10.10.5.1 via xe-2/2/0.0, selected Label operation: Push 800000 Offset: -4 Protocol next hop: 192.0.2.2 Push 800000 Offset: -4 Indirect next hop: 8cae0a0 1048574 State: <Active Int> Age: 2:46:34 Metric2: 1 Task: Common L2 VC Announcement bits (2): 0-KRT 2-Common L2 VC AS path: I Communities: target:65000:2 Layer2-info: encaps:ETHERNET, control flags:Control-Word, mtu: 0, site preference: 100
Vérification de la connectivité de bout en bout entre le routeur CE2 et le routeur CE5 et le routeur CE3
But
Vérifiez la connectivité entre les routeurs CE2, CE3 et CE5.
Action
Envoyez une requête ping à l’adresse IP du routeur CE3 à partir du routeur CE2.
user@CE2> ping 198.51.100.10 # CE3 IP address PING 198.51.100.10 (198.51.100.10): 56 data bytes 64 bytes from 198.51.100.10: icmp_seq=0 ttl=63 time=0.708 ms 64 bytes from 198.51.100.10: icmp_seq=1 ttl=63 time=0.610 ms
Envoyez une requête ping à l’adresse IP du routeur CE5 à partir du routeur CE2.
user@CE2> ping 198.51.100.2 # CE5 IP address PING 198.51.100.2 (198.51.100.2): 56 data bytes 64 bytes from 198.51.100.2: icmp_seq=0 ttl=62 time=0.995 ms 64 bytes from 198.51.100.2: icmp_seq=1 ttl=62 time=1.005 ms