Le Xconnect permet d'apporter une connectivité de niveau 2 entre deux points (point-to-point), les frames sont alors encapsulées sur le protocole MPLS (où L2TPv3), dans le cas du MPLS il s'agit alors d'Ethernet over MPLS.

Côté client, cela permet d'obtenir un même réseau de broadcast pour deux sites séparés par un opérateur (ISP).

On peut s'imaginer (grossièrement) que l'opérateur devient alors un simple câble qui sépare les deux sites.

Cette page a pour objectif de comprendre et de mettre en place ce xconnect sur un réseau MPLS existant, puis d'étendre un niveau 2 entre deux sites (Paris et Londres).

Le Xconnect (EoMPLS) que nous allons mettre en place utilisera donc les labels MPLS pour créer un circuit entre les 2 PE des deux sites.

Schéma xconnect entre deux sites

Création du backbone MPLS

En reprenant ce qui avait été commencé ici : https://reseau.network/mpls/

Architecture GNS3 - Xconnect

Sur chacun des routeurs de l'opérateur nous créons une loopback, nous activons l'ospf pour rendre celles-ci joignables depuis l'ensemble du backbone.

Exemple sur PE_PAR :

interface Loopback1
ip address 1.1.1.1 255.255.255.255
ip ospf 1 area 0
router ospf 1
log-adjacency-changes
network 12.12.12.0 0.0.0.255 area 0
network 13.13.13.0 0.0.0.255 area 0

Une fois que toutes les loopbacks sont joignables, nous activons le protocole MPLS, plutôt que d'activer le protocole LDP sur chacunes des interfaces nous allons le synchroniser avec l'igp ospf.

router ospf 1 
mpls ldp auto-config

Même chose sur les autres routeurs du backbone, nous vérifions ensuite :

show mpls ldp neighbor
show mpls interfaces

Mise en place du Xconnect

Le tunnel doit se faire entre PE_PAR et PE_LON et se veut aussi simple que ça :

PE_PAR (configuration sur l'interface d'entrée)

interface FastEthernet1/1
no ip address
duplex auto
speed auto
xconnect 4.4.4.4 123 encapsulation mpls

La valeur 123 correspond à un ID du tunnel (VC ID) et doit être le même des deux côtés.

L'ip 4.4.4.4 correspond à l'adresse IP du routeur PE_LON.

i.e, toutes les frames que recevra l'interface fa1/1 seront encapsulées sur le réseau MPLS à destination de PAR_LON

PE_LON (configuration sur l'interface d'entrée)

interface FastEthernet1/1
no ip address
duplex auto
speed auto
xconnect 1.1.1.1 123 encapsulation mpls

Nous vérifions ensuite :

Vérification du Xconnect

Je peux donc (en théorie) configurer sur les deux routeurs client un seul réseau de niveau 2:

  • CPE Paris : 192.168.1.1/24
  • CPE Londres : 192.168.1.2/24

L'adresse MAC du routeur de Londres apparait bien, le niveau 2 est donc étendu.

Capture de paquet

En effectuant une capture de paquet sur le premier routeur du backbone (PE_PAR), voici comment à lieu l'encapsulation :

Capture de paquet d'une encapsulation EoMPLS

On retrouve le local et remote label du tunnel EoMPLS de la commande plus haut.

Pour aller plus loin

L'inconvénient de cette solution est qu'elle n'apporte une connectivité de niveau 2 seulement en point à point, le VPLS est la solution à choisir si l'on souhaite avoir un même réseau de broadcast sur plusieurs sites (>2).