Tunnels IPv6 sur IPv4
Configuration des tunnels IPv6 pour MPLS
Vous pouvez configurer la tunnelisation IPv6 pour MPLS afin de tunneliser le trafic IPv6 sur un réseau IPv4 basé sur MPLS. Cette configuration vous permet d’interconnecter plusieurs petits réseaux IPv6 sur un cur de réseau basé sur IPv4, ce qui vous permet de fournir un service IPv6 sans avoir à mettre à niveau les commutateurs de votre réseau central. BGP est configuré pour échanger des routes entre les réseaux IPv6, et les données sont tunnelisées entre ces réseaux IPv6 au moyen d’un MPLS basé sur IPv4.
Pour configurer la tunnelisation IPv6 pour MPLS sur votre commutateur EX Series :
Exemple : Tunnelisation du trafic IPv6 sur les réseaux MPLS IPv4
Cet exemple montre comment configurer Junos OS pour tunneliser IPv6 sur un réseau IPv4 basé sur MPLS. Le BGP externe (EBGP) est utilisé entre les équipements de périphérie client (CE) et de périphérie fournisseur (PE). Les appareils CE distants ont des numéros AS différents pour la détection de boucle.
Conditions préalables
Aucune configuration spéciale au-delà de l’initialisation de l’appareil n’est requise avant de configurer cet exemple.
Présentation
Des informations détaillées sur l’implémentation IPv6 sur MPLS par Juniper Networks sont présentées dans les versions Internet suivantes :
-
Internet draft draft-ietf-l3vpn-bgp-ipv6-07.txt, extension BGP-MPLS IP VPN pour VPN IPv6 (expire en janvier 2006)
-
Projet de draft-ooms-v6ops-bgp-tunnel-06.txt Internet, Connexion d’îlots IPv6 sur MPLS IPv4 à l’aide de routeurs IPv6 Provider Edge ( expire en juillet 2006)
Ces brouillons Internet sont disponibles sur le site Web de l’IETF à l’adresse http://www.ietf.org/.
Cet exemple vous montre comment interconnecter deux réseaux IPv6 sur un cur de réseau basé sur IPv4, ce qui vous permet de fournir un service IPv6 sans avoir à mettre à niveau les routeurs de votre réseau central. Le Multiprotocol Border Gateway Protocol (MP-BGP) est configuré pour échanger des routes entre les réseaux IPv6, et les données sont tunnelisées entre ces réseaux IPv6 au moyen d’un MPLS basé sur IPv4.
En Figure 1, les routeurs PE1 et PE2 sont des routeurs BGP à double pile, ce qui signifie qu’ils ont à la fois des piles IPv4 et IPv6. Les routeurs PE relient les réseaux IPv6 au réseau central IPv4 via les routeurs CE (customer edge). Les routeurs CE et PE se connectent via une couche de liaison qui peut transporter le trafic IPv6. Les routeurs PE utilisent IPv6 sur les interfaces orientées routeur CE et utilisent IPv4 et MPLS sur les interfaces orientées cur. Notez que l’un des réseaux IPv6 connectés pourrait être l’Internet IPv6 mondial.

Les deux routeurs PE sont reliés via une session MP-BGP à l’aide d’adresses IPv4. Ils utilisent la session pour échanger des routes IPv6 avec un indicateur de famille d’adresses (AFI) IPv6 (valeur 2) et un AFI (SAFI) ultérieur (valeur 4). Chaque routeur PE définit le saut suivant pour les routes IPv6 annoncées sur cette session vers sa propre adresse IPv4. MP-BGP exige que le saut suivant BGP corresponde à la même famille d’adresses que les informations d’accessibilité de la couche réseau (NLRI), cette adresse IPv4 doit être intégrée dans un format IPv6.
Les routeurs PE peuvent apprendre les routes IPv6 à partir des routeurs CE qui leur sont connectés à l’aide des protocoles de routage Routing Information Protocol next generation (RIPng) ou MP-BGP, ou via une configuration statique. Notez que si BGP est utilisé comme protocole PE-routeur-routeur CE, la session MP-BGP entre le routeur PE et le routeur CE peut se produire via une session IPv4 ou IPv6 Transmission Control Protocol (TCP). De plus, les routes BGP échangées sur cette session auraient une monodiffusion SAFI. Vous devez configurer une stratégie d’exportation pour transmettre les routes entre IBGP et EBGP, ainsi qu’entre BGP et tout autre protocole.
Les LSP MPLS des routeurs PE sont acheminés vers les adresses IPv4 des uns et des autres. IPv4 fournit la signalisation aux LSP au moyen de LDP ou RSVP. Ces LSP sont utilisés pour résoudre les adresses next-hop des routes IPv6 apprises à partir de MP-BGP. Les sauts suivants utilisent des adresses IPv6 mappées IPv4, tandis que les LSP utilisent des adresses IPv4.
Les routeurs PE s’annoncent toujours des routes IPv6 à l’aide d’une valeur d’étiquette de 2, l’étiquette nulle explicite pour IPv6 telle que définie dans la RFC 3032, MPLS Label Stack Encoding. Par conséquent, chacun des sauts suivants de transfert pour les routes IPv6 apprises à partir de routeurs PE distants envoie normalement deux étiquettes. L’étiquette intérieure est 2 (cette étiquette peut être différente si le routeur PE publicitaire n’est pas une plate-forme de routage Juniper Networks) et l’étiquette extérieure est l’étiquette LSP. S’il s’agit d’un LSP à saut unique, seule l’étiquette 2 est envoyée.
Il est également possible pour les routeurs PE d’échanger des routes IPv6 simples à l’aide de la monodiffusion SAFI. Cependant, il y a un avantage majeur à échanger des routes IPv6 étiquetées. L’avant-dernier saut du routeur d’un LSP MPLS peut afficher l’étiquette externe, puis envoyer le paquet avec l’étiquette interne en tant que paquet MPLS. Sans l’étiquette interne, le routeur à l’avant-dernier saut devrait découvrir si le paquet est un paquet IPv4 ou IPv6 pour définir correctement le champ de protocole dans l’en-tête de couche 2.
Lorsque le routeur Figure 1 PE1 reçoit un paquet IPv6 du routeur CE1, il effectue une recherche dans la table de transfert IPv6. Si la destination correspond à un préfixe appris du routeur CE2, aucune étiquette n’a besoin d’être envoyée et le paquet est simplement envoyé au routeur CE2. Si la destination correspond à un préfixe appris à partir du routeur PE2, le routeur PE1 envoie deux étiquettes au paquet et l’envoie au routeur fournisseur. L’étiquette intérieure est 2 et l’étiquette extérieure est l’étiquette LSP pour le routeur PE2.
Chaque routeur fournisseur du réseau du fournisseur de services traite le paquet comme n’importe quel paquet MPLS, en échangeant des étiquettes lorsqu’il passe d’un routeur fournisseur à l’autre. L’avant-dernier saut du routeur fournisseur du LSP retire l’étiquette extérieure et envoie le paquet au routeur PE2. Lorsque le routeur PE2 reçoit le paquet, il reconnaît l’étiquette NULL explicite IPv6 sur le paquet (étiquette 2). Il affiche cette étiquette et le traite comme un paquet IPv6, en effectuant une recherche dans la table de transfert IPv6 et en transférant le paquet au routeur CE3.
Cet exemple inclut les paramètres suivants :
-
En plus de configurer l’instruction
family inet6
sur toutes les interfaces orientées routeur CE, vous devez également configurer l’instruction sur toutes les interfaces orientées cur exécutant MPLS. Les deux configurations sont nécessaires, car le routeur doit être capable de traiter tous les paquets IPv6 qu’il reçoit sur ces interfaces. Vous ne devriez pas voir de trafic IPv6 normal arriver sur ces interfaces, mais vous recevrez des paquets MPLS étiquetés avec le label 2. Même si les paquets MPLS Label 2 sont envoyés en IPv4, ils sont traités comme des paquets IPv6 natifs. -
Vous activez la tunnelisation IPv6 en incluant l’instruction
ipv6-tunneling
dans la configuration des routeurs PE. Cette instruction permet de résoudre les routes IPv6 sur un réseau MPLS en convertissant toutes les routes stockées dans la table de routage inet.3 en adresses IPv6 mappées IPv4, puis en les copiant dans la table de routage inet6.3. Cette table de routage peut être utilisée pour résoudre les sauts suivants pour les routes inet6 et inet6-vpn.REMARQUE :BGP exécute automatiquement sa stratégie d’importation, même lors de la copie de routes d’un groupe de tables de routage principal vers un groupe de tables de routage secondaire. Si des routes étiquetées IPv4 proviennent d’une session BGP (par exemple, lorsque vous avez configuré l’instruction
labeled-unicast
au niveau de la[edit protocols bgp family inet]
hiérarchie sur le routeur PE), la stratégie d’importation du voisin BGP accepte également les routes IPv6, car la stratégie d’importation du voisin est exécutée lors de l’opération de copie vers la table de routage inet6.3. -
Lorsque vous configurez MP-BGP pour transporter le trafic IPv6, l’étiquette MPLS IPv4 est supprimée au niveau du routeur PE de destination. Le paquet IPv6 restant sans étiquette peut ensuite être transféré au réseau IPv6. Pour ce faire, incluez l’instruction
explicit-null
dans la configuration BGP.
Configuration
Configuration rapide de l’interface de ligne de commande
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, puis copiez et collez les commandes dans l’interface de ligne de commande au niveau de la [edit]
hiérarchie.
Appareil PE1
set interfaces fe-1/2/0 unit 0 family inet6 address ::10.1.1.2/126 set interfaces fe-1/2/0 unit 0 family mpls set interfaces fe-1/2/1 unit 0 family inet address 10.1.1.5/30 set interfaces fe-1/2/1 unit 0 family inet6 set interfaces fe-1/2/1 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.1.2/32 set protocols mpls ipv6-tunneling set protocols mpls interface fe-1/2/0.0 set protocols mpls interface fe-1/2/1.0 set protocols bgp group toCE1 type external set protocols bgp group toCE1 local-address ::10.1.1.2 set protocols bgp group toCE1 family inet6 unicast set protocols bgp group toCE1 export send-bgp6 set protocols bgp group toCE1 peer-as 65001 set protocols bgp group toCE1 neighbor ::10.1.1.1 set protocols bgp group toPE2 type internal set protocols bgp group toPE2 local-address 10.1.1.2 set protocols bgp group toPE2 family inet6 labeled-unicast explicit-null set protocols bgp group toPE2 export next-hop-self set protocols bgp group toPE2 export send-v6 set protocols bgp group toPE2 neighbor 10.1.1.4 set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ldp interface fe-1/2/1.0 set policy-options policy-statement next-hop-self then next-hop self set policy-options policy-statement send-bgp6 from family inet6 set policy-options policy-statement send-bgp6 from protocol bgp set policy-options policy-statement send-bgp6 then accept set policy-options policy-statement send-v6 from family inet6 set policy-options policy-statement send-v6 from protocol bgp set policy-options policy-statement send-v6 from protocol direct set policy-options policy-statement send-v6 then accept set routing-options router-id 10.1.1.2 set routing-options autonomous-system 65002
Appareil PE2
set interfaces fe-1/2/0 unit 0 family inet address 10.1.1.10/30 set interfaces fe-1/2/0 unit 0 family inet6 set interfaces fe-1/2/0 unit 0 family mpls set interfaces fe-1/2/1 unit 0 family inet6 address ::10.1.1.13/126 set interfaces fe-1/2/1 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.1.4/32 set protocols mpls ipv6-tunneling set protocols mpls interface fe-1/2/0.0 set protocols mpls interface fe-1/2/1.0 set protocols bgp group toPE1 type internal set protocols bgp group toPE1 local-address 10.1.1.4 set protocols bgp group toPE1 family inet6 labeled-unicast explicit-null set protocols bgp group toPE1 export next-hop-self set protocols bgp group toPE1 export send-v6 set protocols bgp group toPE1 neighbor 10.1.1.2 set protocols bgp group toCE3 type external set protocols bgp group toCE3 local-address ::10.1.1.13 set protocols bgp group toCE3 family inet6 unicast set protocols bgp group toCE3 export send-bgp6 set protocols bgp group toCE3 peer-as 65003 set protocols bgp group toCE3 neighbor ::10.1.1.14 set protocols ospf area 0.0.0.0 interface fe-1/2/0.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ldp interface fe-1/2/0.0 set policy-options policy-statement next-hop-self then next-hop self set policy-options policy-statement send-bgp6 from family inet6 set policy-options policy-statement send-bgp6 from protocol bgp set policy-options policy-statement send-bgp6 then accept set policy-options policy-statement send-v6 from family inet6 set policy-options policy-statement send-v6 from protocol bgp set policy-options policy-statement send-v6 from protocol direct set policy-options policy-statement send-v6 then accept set routing-options router-id 10.1.1.4 set routing-options autonomous-system 65002
Appareil P
set interfaces fe-1/2/0 unit 0 family inet address 10.1.1.6/30 set interfaces fe-1/2/0 unit 0 family inet6 set interfaces fe-1/2/0 unit 0 family mpls set interfaces fe-1/2/1 unit 0 family inet address 10.1.1.9/30 set interfaces fe-1/2/1 unit 0 family inet6 set interfaces fe-1/2/1 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.1.3/32 set protocols mpls interface fe-1/2/0.0 set protocols mpls interface fe-1/2/1.0 set protocols ospf area 0.0.0.0 interface fe-1/2/0.0 set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ldp interface fe-1/2/0.0 set protocols ldp interface fe-1/2/1.0 set routing-options router-id 10.1.1.3 set routing-options autonomous-system 65002
Appareil CE1
set interfaces fe-1/2/0 unit 0 family inet6 address ::10.1.1.1/126 set interfaces lo0 unit 0 family inet6 address ::10.255.1.1/128 set protocols bgp group toPE1 type external set protocols bgp group toPE1 local-address ::10.1.1.1 set protocols bgp group toPE1 family inet6 unicast set protocols bgp group toPE1 export send-v6 set protocols bgp group toPE1 peer-as 65002 set protocols bgp group toPE1 neighbor ::10.1.1.2 set policy-options policy-statement send-v6 from family inet6 set policy-options policy-statement send-v6 from protocol direct set policy-options policy-statement send-v6 then accept set routing-options router-id 10.255.1.1 set routing-options autonomous-system 65001
Dispositif CE3
set interfaces fe-1/2/0 unit 0 family inet6 address ::10.1.1.14/126 set interfaces lo0 unit 0 family inet6 address ::10.255.1.5/128 set protocols bgp group toPE2 type external set protocols bgp group toPE2 local-address ::10.1.1.14 set protocols bgp group toPE2 family inet6 unicast set protocols bgp group toPE2 export send-v6 set protocols bgp group toPE2 peer-as 65002 set protocols bgp group toPE2 neighbor ::10.1.1.13 set policy-options policy-statement send-v6 from family inet6 set policy-options policy-statement send-v6 from protocol direct set policy-options policy-statement send-v6 then accept set routing-options router-id 10.255.1.5 set routing-options autonomous-system 65003
Configuration de l’équipement PE1
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour plus d’informations sur la navigation dans l’interface de ligne de commande, reportez-vous à la section Utilisation de l’éditeur CLI en mode configuration du Guide de l’utilisateur de l’interface de ligne de commande Junos OS.
Pour configurer l’appareil PE1 :
-
Configurez les interfaces.
[edit interfaces] user@PE1# set fe-1/2/0 unit 0 family inet6 address ::10.1.1.2/126 user@PE1# set fe-1/2/0 unit 0 family mpls user@PE1# set fe-1/2/1 unit 0 family inet address 10.1.1.5/30 user@PE1# set fe-1/2/1 unit 0 family inet6 user@PE1# set fe-1/2/1 unit 0 family mpls user@PE1# set lo0 unit 0 family inet address 10.1.1.2/32
-
Configurez MPLS sur les interfaces.
[edit protocols mpls] user@PE1# set ipv6-tunneling user@PE1# set interface fe-1/2/0.0 user@PE1# set interface fe-1/2/1.0
-
Configurez BGP.
[edit protocols bgp] user@PE1# set group toCE1 type external user@PE1# set group toCE1 local-address ::10.1.1.2 user@PE1# set group toCE1 family inet6 unicast user@PE1# set group toCE1 export send-bgp6 user@PE1# set group toCE1 peer-as 65001 user@PE1# set group toCE1 neighbor ::10.1.1.1 user@PE1# set group toPE2 type internal user@PE1# set group toPE2 local-address 10.1.1.2 user@PE1# set group toPE2 family inet6 labeled-unicast explicit-null user@PE1# set group toPE2 export next-hop-self user@PE1# set group toPE2 export send-v6 user@PE1# set group toPE2 neighbor 10.1.1.4
-
Configurer OSPF
[edit protocols ospf area 0.0.0.0] user@PE1# set interface fe-1/2/1.0 user@PE1# set interface lo0.0 passive
-
Configurez un protocole de signalisation.
[edit protocols] user@PE1# set ldp interface fe-1/2/1.0
-
Configurez les stratégies de routage.
[edit policy-options] user@PE1# set policy-statement next-hop-self then next-hop self user@PE1# set policy-statement send-bgp6 from family inet6 user@PE1# set policy-statement send-bgp6 from protocol bgp user@PE1# set policy-statement send-bgp6 then accept user@PE1# set policy-statement send-v6 from family inet6 user@PE1# set policy-statement send-v6 from protocol bgp user@PE1# set policy-statement send-v6 from protocol direct user@PE1# set policy-statement send-v6 then accept
-
Configurez l’ID du routeur et le numéro du système autonome (AS).
[edit routing-options] user@PE1# set router-id 10.1.1.2 user@PE1# set autonomous-system 675002
Résultats
À partir du mode de configuration, confirmez votre configuration en saisissant les show interfaces
commandes , show policy-options
, show protocols
et show routing-options
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de cet exemple pour corriger la configuration.
user@R1# show interfaces fe-1/2/0 { unit 0 { family inet6 { address ::10.1.1.2/126; } family mpls; } } fe-1/2/1 { unit 0 { family inet { address 10.1.1.5/30; } family inet6; family mpls; } } lo0 { unit 0 { family inet { address 10.1.1.2/32; } } }
user@R1# show policy-options policy-statement next-hop-self { then { next-hop self; } } policy-statement send-bgp6 { from { family inet6; protocol bgp; } then accept; } policy-statement send-v6 { from { family inet6; protocol [ bgp direct ]; } then accept; }
user@R1# show protocols mpls { ipv6-tunneling; interface fe-1/2/0.0; interface fe-1/2/1.0; } bgp { group toCE1 { type external; local-address ::10.1.1.2; family inet6 { unicast; } export send-bgp6; peer-as 65001; neighbor ::10.1.1.1; } group toPE2 { type internal; local-address 10.1.1.2; family inet6 { labeled-unicast { explicit-null; } } export [ next-hop-self send-v6 ]; neighbor 10.1.1.4; } } ospf { area 0.0.0.0 { interface fe-1/2/1.0; interface lo0.0 { passive; } } } ldp { interface fe-1/2/1.0; }
user@R1# show routing-options router-id 10.1.1.2; autonomous-system 65002;
Si vous avez terminé de configurer l’appareil, passez commit
en mode de configuration. Configurez les autres périphériques de la topologie, comme indiqué à la .Configuration rapide de l’interface de ligne de commande
Vérification
Vérifiez que la configuration fonctionne correctement.
Vérification de la connectivité des appareils CE
But
Assurez-vous que le tunnel fonctionne.
Action
À partir du mode opérationnel, entrez la ping
commande.
user@CE1> ping ::10.1.1.14 PING6(56=40+8+8 bytes) ::10.1.1.1 --> ::10.1.1.14 16 bytes from ::10.1.1.14, icmp_seq=0 hlim=61 time=10.687 ms 16 bytes from ::10.1.1.14, icmp_seq=1 hlim=61 time=9.239 ms 16 bytes from ::10.1.1.14, icmp_seq=2 hlim=61 time=1.842 ms
user@CE3> ping ::10.1.1.1 PING6(56=40+8+8 bytes) ::10.1.1.14 --> ::10.1.1.1 16 bytes from ::10.1.1.1, icmp_seq=0 hlim=61 time=1.484 ms 16 bytes from ::10.1.1.1, icmp_seq=1 hlim=61 time=1.338 ms 16 bytes from ::10.1.1.1, icmp_seq=2 hlim=61 time=1.351 ms
Sens
Les appareils IPv6 CE peuvent communiquer via le réseau IPv4 central.