
En parallèle de ce site, je suis en train de monter un Lab IPv6 qui sera actif à partir de fin Septembre 2013 (plus d’infos). Et pour pouvoir travailler tranquillement j’ai mis en place une maquette avec un réseau VPN MPLS type Opérateur Télécom. La tâche étant assez fastidieuse, je vais capitaliser, ici, ce que j’ai pu faire sur cette maquette pour quelle soit fonctionnelle. Pour celles et ceux qui souhaitent en apprendre plus sur la technologie MPLS, je vous conseille vivement ce site : lien.
Tout d’abord voici la topologie de la maquette :
Nous avons donc les éléments suivants :
- 2 routeurs cœur de réseau opérateur (P1 et P2)
- 3 routeur en périphérie du réseau opérateur (PE1, PE2 et PE3)
- 1 routeur PEERING interconnecté au réseau opérateur (pour les interconnexions vers Internet)
- 2 clients possédant chacun 3 sites différents
- Le Client 1 possède 3 routeurs fournis par l’opérateur (C1-S0, C1-S1 et C1-S2)
- Le Client 2 possède 3 routeurs fournis par l’opérateur (C2-S0, C2-S1, C2-S2)
Configuration du réseau interne de l’opérateur
Avant d’avoir des clients, il faut bien configurer le réseau de l’opérateur Télécom. Voici donc comment j’ai procédé :
- Routage interne par le biais du protocole OSPF : N° de processus 1, zone primaire area 0
- Chaque routeur du réseau opérateur possède une Loopback avec une adresse type 10.100.0.x/32
- Les interconnexions entre les routeurs du réseau opérateur se feront avec des adresses type 10.0.100.x/30
Pour commencer il faut configurer les différentes interfaces de chaque routeur puis configurer le protocole OSPF.
Routeur P1 :
interface Loopback0 description *** LOOPBACK MGNT - OSPF *** ip address 10.100.0.254 255.255.255.255 ! interface Ethernet0/1 description *** VERS P2 - 10.0.100.2/30 *** ip address 10.0.100.1 255.255.255.252 ! interface Ethernet0/2 description *** VERS PE1 - 10.0.100.6/30 *** ip address 10.0.100.5 255.255.255.252 ! interface Ethernet0/3 description *** VERS PE3 - 10.0.100.14/30 *** ip address 10.0.100.13 255.255.255.252 ! router ospf 1 router-id 10.100.0.254 log-adjacency-changes network 10.0.100.0 0.0.0.3 area 0 network 10.0.100.4 0.0.0.3 area 0 network 10.0.100.12 0.0.0.3 area 0 network 10.100.0.254 0.0.0.0 area 0
Routeur P2 :
interface Loopback0 description *** LOOPBACK MGNT - OSPF *** ip address 10.100.0.253 255.255.255.255 ! interface Ethernet0/0 description *** VERS P1 - 10.0.100.1/30 *** ip address 10.0.100.2 255.255.255.252 ! interface Ethernet0/1 description *** VERS PE2 - 10.0.100.10/30 *** ip address 10.0.100.9 255.255.255.252 ! router ospf 1 router-id 10.100.0.253 log-adjacency-changes network 10.0.100.0 0.0.0.3 area 0 network 10.0.100.8 0.0.0.3 area 0 network 10.100.0.253 0.0.0.0 area 0
Routeur PE1 :
interface Loopback0 description *** LOOPBACK MGNT - OSPF *** ip address 10.100.0.1 255.255.255.255 ! interface Ethernet0/0 description *** VERS P1 - 10.0.100.5/30 *** ip address 10.0.100.6 255.255.255.252 ! router ospf 1 router-id 10.100.0.1 log-adjacency-changes network 10.0.100.4 0.0.0.3 area 0 network 10.100.0.1 0.0.0.0 area 0
Routeur PE2 :
interface Loopback0 description *** LOOPBACK MGNT - OSPF *** ip address 10.100.0.2 255.255.255.255 ! interface Ethernet0/0 description *** VERS P2 - 10.0.100.9/30 *** ip address 10.0.100.10 255.255.255.252 ! router ospf 1 router-id 10.100.0.2 log-adjacency-changes network 10.0.100.8 0.0.0.3 area 0 network 10.100.0.2 0.0.0.0 area 0
Routeur PE3 :
interface Loopback0 description *** LOOPBACK MGNT - OSPF *** ip address 10.100.0.3 255.255.255.255 ! interface Ethernet0/0 description *** VERS P1 - 10.0.100.13/30 *** ip address 10.0.100.14 255.255.255.252 ! router ospf 1 router-id 10.100.0.3 log-adjacency-changes network 10.0.100.12 0.0.0.3 area 0 network 10.100.0.3 0.0.0.0 area 0
Le réseau de l’opérateur est maintenant interconnecté en interne et l’ensemble des routeurs peuvent communiquer entre-eux. Cette étape est cruciale pour la suite des opérations.
Configuration du MPLS
Nous allons maintenant préparer les routeurs opérateur pour qu’ils supportent l’utilisation du protocole MPLS. Pour bien configurer l’ensemble, il faut uniquement déclarer les interfaces qui seront interconnectées vers le réseau MPLS.
Routeur P1 :
ip cef mpls ldp advertise-labels mpls ldp router-id Loopback0 force ! interface Ethernet0/1 mpls ip ! interface Ethernet0/2 mpls ip ! interface Ethernet0/3 mpls ip
Routeur P2 :
ip cef mpls ldp advertise-labels mpls ldp router-id Loopback0 force ! interface Ethernet0/0 mpls ip ! interface Ethernet0/1 mpls ip
Routeur PE1 :
ip cef mpls ldp advertise-labels mpls ldp router-id Loopback0 force ! interface Ethernet0/0 mpls ip
Routeur PE2 :
ip cef mpls ldp advertise-labels mpls ldp router-id Loopback0 force ! interface Ethernet0/0 mpls ip
Routeur PE3 :
ip cef mpls ldp advertise-labels mpls ldp router-id Loopback0 force ! interface Ethernet0/0 mpls ip
Nos routeurs sont maintenant prêts à assurer de la commutation de labels.
Configuration des VRF
L’utilisation des VRF permet de créer une interconnexion directe logique entre les sites distants d’un même client (ce qui isole son trafic par rapport aux autres clients). Cela permet aussi de séparer les tables de routage sur un même routeur évitant ainsi les erreurs lorsque plusieurs clients sont connectés sur un même équipement. Pour configurer les VRF, nous allons déclarer des route-target permettant de gérer, entre-autre, les annonces de routes entre différents équipements exécutant des VRF.
Les VRF sont à déclarer que sur les routeurs directement connectés aux clients (les PE donc). Nous allons également profiter de cette étape pour configurer la connectivité IP sur ces interfaces.
Routeur PE1 :
ip vrf CLIENT-001 rd 10:0 route-target export 10:0 route-target import 10:0 route-target import 10:1 route-target import 10:2 ! ip vrf CLIENT-002 rd 20:0 route-target export 20:0 route-target import 20:0 route-target import 20:1 route-target import 20:2 ! interface Ethernet0/1 description *** VERS S0-CLIENT-001 - 130.12.40.1/30 *** ip vrf forwarding CLIENT-001 ip address 130.12.40.2 255.255.255.252 ! interface Ethernet0/2 description *** VERS S0-CLIENT-002 - 140.12.40.1/30 *** ip vrf forwarding CLIENT-002 ip address 140.12.40.2 255.255.255.252
Routeur PE2 :
ip vrf CLIENT-001 rd 10:1 route-target export 10:1 route-target import 10:1 route-target import 10:0 route-target import 10:2 ! ip vrf CLIENT-002 rd 20:1 route-target export 20:1 route-target import 20:1 route-target import 20:0 route-target import 20:2 ! interface Ethernet0/1 description *** VERS S1-CLIENT001 - 130.12.41.1/30 *** ip vrf forwarding CLIENT-001 ip address 130.12.41.2 255.255.255.252 ! interface Ethernet0/2 description *** VERS S1-CLIENT-002 - 140.12.41.1/230 *** ip vrf forwarding CLIENT-002 ip address 140.12.41.2 255.255.255.252
Routeur PE3 :
ip vrf CLIENT-001 rd 10:2 route-target export 10:2 route-target import 10:2 route-target import 10:0 route-target import 10:1 ! ip vrf CLIENT-002 rd 20:2 route-target export 20:2 route-target import 20:2 route-target import 20:0 route-target import 20:1 ! interface Ethernet0/1 description *** VERS S2-CLIENT-001 - 130.12.42.1/30 *** ip vrf forwarding CLIENT-001 ip address 130.12.42.2 255.255.255.252 ! interface Ethernet0/2 description *** VERS S2-CLIENT-002 - 140.12.42.1/30 *** ip vrf forwarding CLIENT-002 ip address 140.12.42.2 255.255.255.252
Voici un récapitulatif concernant les 2 clients du réseau opérateur :
ID Routeur | VRF | route-target | Adresse IP | |
Client 1 | C1-S0 | CLIENT-001 | 10:0 | 130.12.40.1 |
C1-S1 | CLIENT-001 | 10:1 | 130.12.41.1 | |
C1-S2 | CLIENT-001 | 10:2 | 130.12.42.1 | |
Client 2 | C2-S0 | CLIENT-002 | 20:0 | 140.12.40.1 |
C2-S1 | CLIENT-002 | 20:1 | 140.12.41.1 | |
C2-S2 | CLIENT-002 | 20:2 | 140.12.42.1 |
C’est tout pour cette première partie. La deuxième arrivera très bientôt ;-).