MPLS VPN L3 sous CISCO
Dans les réseaux IP traditionnels, le routage se fait en fonction de l’adresse IP destination. Chaque routeur pour connaitre le prochain saut, consulte sa table de routage et détermine l’interface par laquelle envoyer le paquet. C’est une opération très consommatrice en temps et en ressources (CPU). Avec MPLS, seuls les routeurs du premier et du dernier saut ont besoin de connaître les informations sur le réseau de destination.
Au début, ce protocole était utilisé pour apporter de la vitesse dans le traitement des paquets. Mais avec l'avénement des Giga-routeurs, l'apport de vitesse est passé au second plan pour faire place à l'aspect fonctionnalités comme :
- Le Trafic Engineering ;
- La QoS ;
- Les VPN MPLS.
Dans cet atelier, nous allons mettre en place un coeur de réseau et interconnecter différents sites d'entreprises.
/image%2F3625927%2F20221225%2Fob_a5e321_2.png)
Notre config IP ressemblera à ceci :
/image%2F3625927%2F20221226%2Fob_c77e62_31.png)
Les informations sur les VRF
/image%2F3625927%2F20221226%2Fob_86eac2_32.png)
Avant tout, s'assurer que la config IP est bonne !
Sur le PE1
/image%2F3625927%2F20221225%2Fob_21a377_8.png)
Sur le P
/image%2F3625927%2F20221225%2Fob_e36392_7.png)
Sur le PE2
/image%2F3625927%2F20221225%2Fob_fe49d7_6.png)
Activation du process OSPF 1 sur les interfaces des routeurs du backbone.
Attention : Pas sur les interfaces pointant vers les CE !
Pour vous faciliter la tâche, vous pouvez activer le protocole CDP pour voir clair !
# cdp run
/image%2F3625927%2F20221226%2Fob_b0fd2e_24.png)
Sur PE1
/image%2F3625927%2F20221225%2Fob_6de031_10.png)
Sur le P
/image%2F3625927%2F20221225%2Fob_48f7c0_11.png)
Sur le PE2
/image%2F3625927%2F20221225%2Fob_afddf7_12.png)
Configuration de MP-BGP entre les PE
Info : Le numéro de l'AS est 1
Sur le PE1
router bgp 1
bgp log-neighbor-changes
neighbor 3.3.3.3 remote-as 1
neighbor 3.3.3.3 update-source Loopback0
!
address-family vpnv4
neighbor 3.3.3.3 activate
neighbor 3.3.3.3 send-community extended
exit-address-family
Sur le PE2
router bgp 1
bgp log-neighbor-changes
neighbor 1.1.1.1 remote-as 1
neighbor 1.1.1.1 update-source Loopback0
!
address-family vpnv4
neighbor 1.1.1.1 activate
neighbor 1.1.1.1 send-community extended
exit-address-family
Création des différentes VRF sur les PE
Sur le PE1
La VRF bank
vrf definition bank
rd 111:111
route-target export 111:111
route-target import 111:111
!
address-family ipv4
exit-address-family
!
!
end
La VRF society
vrf definition society
rd 222:222
route-target export 222:222
route-target import 222:222
!
address-family ipv4
exit-address-family
!
!
end
Créer les mêmes VRF sur le PE2 !
Appliquer les VRF aux interfaces respectives
Sur le PE1 : En ce qui concerne la VRF bank
PE1(config)#int Ethernet0/0
PE1(config-if)#vrf forwarding bank
% Interface Ethernet0/0 IPv4 disabled and address(es) removed due to enabling VRF bank
PE1(config-if)#ip add 192.168.15.1 255.255.255.252
PE1(config-if)#exit
PE1(config)#
La VRF society
PE1(config)#int Ethernet0/1
PE1(config-if)#vrf forwarding society
% Interface Ethernet0/1 IPv4 disabled and address(es) removed due to enabling VRF society
PE1(config-if)#ip add 192.168.16.1 255.255.255.252
PE1(config-if)#exit
PE1(config)#
Les même actions sur le PE2
PE2(config)#int e0/1
PE2(config-if)#vrf forwarding bank
% Interface Ethernet0/1 IPv4 disabled and address(es) removed due to enabling VRF bank
PE2(config-if)#ip add 192.168.37.1 255.255.255.252
PE2(config-if)#exit
PE2(config)#
PE2(config)#int e0/2
PE2(config-if)#vrf forwarding society
% Interface Ethernet0/2 IPv4 disabled and address(es) removed due to enabling VRF society
PE2(config-if)#ip add 192.168.38.1 255.255.255.252
PE2(config-if)#exit
PE2(config)#
Config des CE
Activation de RIP sur les CE concernés, à savoir les CE de la banque !
BankHQ(config)#router rip
BankHQ(config-router)#ver 2
BankHQ(config-router)#net 192.168.15.0
BankHQ(config-router)#net 5.5.5.5
BankHQ(config-router)#exit
BankHQ(config)#
De l'autre côté
BankBranch(config)#router rip
BankBranch(config-router)#ver 2
BankBranch(config-router)#net 192.168.37.0
BankBranch(config-router)#net 7.7.7.7
BankBranch(config-router)#exit
BankBranch(config)#
Configuration de OSPF sur les CE F-society
F-societyHQ(config)#router ospf 1
F-societyHQ(config-router)#net 192.168.16.0 0.0.0.3 area 0
F-societyHQ(config-router)#net 6.6.6.6 0.0.0.0 area 0
F-societyHQ(config-router)#exit
F-societyHQ(config)#
De l'autre côté
F-societyBranch(config)#router ospf 1
F-societyBranch(config-router)#net 192.168.38.0 0.0.0.3 area 0
F-societyBranch(config-router)#net 8.8.8.8 0.0.0.0 area 0
F-societyBranch(config-router)#exit
F-societyBranch(config)#
Retournons sur les PE
Config de RIP, redistribution dans BGP et inversement
Sur le PE1
PE1(config)#router rip
PE1(config-router)#ver 2
PE1(config-router)#address-family ipv4 vrf bank
PE1(config-router-af)#net 1.0.0.0
PE1(config-router-af)#net 192.168.15.0
PE1(config-router-af)#redistribute bgp 1 metric transparent
PE1(config-router-af)#end
PE1#
Redistribution de RIP dans BGP
PE1(config)#router bgp 1
PE1(config-router)#address-family ipv4 vrf bank
PE1(config-router-af)#redistribute rip
PE1(config-router-af)#no auto-summary
PE1(config-router-af)#end
PE1#
Sur le PE2 [BGP dans RIP]
PE2(config)#router rip
PE2(config-router)#ver 2
PE2(config-router)#address-family ipv4 vrf bank
PE2(config-router-af)#net 192.168.37.0
PE2(config-router-af)#net 3.0.0.0
PE2(config-router-af)#redistribute bgp 1 metric transparent
PE2(config-router-af)#end
PE2#
RIP dans BGP
PE2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
PE2(config)#router bgp 1
PE2(config-router)#address-family ipv4 vrf bank
PE2(config-router-af)#redistribute rip
PE2(config-router-af)#no auto-summary
PE2(config-router-af)#end
PE2#
Activation de MPLS sur les routeurs backbone
Celà ne se fait qu'une fois !
Sur le PE1
PE1(config)#int e0/2
PE1(config-if)#mpls ip
PE1(config-if)#exit
PE1(config)#
Sur Le PE2
PE2(config)#int e0/0
PE2(config-if)#mpls ip
PE2(config-if)#exit
PE2(config)#
Sur le P
/image%2F3625927%2F20221226%2Fob_c8b89c_14.png)
La table MPLS du P
/image%2F3625927%2F20221226%2Fob_4668eb_33.png)
Il y a bien échange de labels avc les PE !
Place au test
Normalement après ces étapes, les CE de la banque devraient être en mesure de communiquer
/image%2F3625927%2F20221226%2Fob_d94d72_15.png)
Depuis l'un des PE
/image%2F3625927%2F20221226%2Fob_f06fbc_16.png)
Qu'en est-il du client F-society ?
Faisons le nécessaire !
Activation du process 10 de OSPF est faisons la redistribution nécessaire !
BGP dans OSPF
/image%2F3625927%2F20221226%2Fob_0b2cdf_17.png)
OSPF dans BGP
/image%2F3625927%2F20221226%2Fob_638616_18.png)
Faire la même chose sur le PE2
BGP dans OSPF
/image%2F3625927%2F20221226%2Fob_604a4b_19.png)
OSPF dans BGP
/image%2F3625927%2F20221226%2Fob_ac88b3_20.png)
Note : Ne pas oublier d'appliquer la vrf correspondante sur l'interface du PE directement raccordée au CE.
PE2(config)#int e0/2
PE2(config-if)#vrf forwarding society
% Interface Ethernet0/2 IPv4 disabled and address(es) removed due to enabling VRF society
PE2(config-if)#ip add 192.168.38.1 255.255.255.252
PE2(config-if)#end
*Dec 14 22:31:22.312: %OSPF-5-ADJCHG: Process 10, Nbr 8.8.8.8 on Ethernet0/2 from LOADING to FULL, Loading Done
PE2#
Note : Après application d'une VRF à une interface, il est impératif de réfixer l'adresse IP à cette dernière !
Après ces config, les CE F-society devraient être en mesure de communiquer !
/image%2F3625927%2F20221226%2Fob_623150_21.png)
Le trafic passe par le backbone !
Les Sessions BGP sont montées entre les PE
/image%2F3625927%2F20221226%2Fob_441478_22.png)
Grâce au cloisonnement du trafic des différents clients dans des VRF, ces derniers ne pourons jamais s'envoyer du trafic. Le client bank ne peut pas communiquer avec l'entreprise F-society. En tout cas pas à travers le backbone. Sauf s'ils utilisaient d'autres moyens pour interconnecter leurs sites !
Supposons que la banque et l'entreprise F-society aient signé un partenariat, et aimeraient donc échancher du trafic en interconnectant leurs différents siège. Celà ne sera possible sans l'intervention de l'opérateur !
Voici à quoi ressemble la communication entre les deux clients sans l'intervention de l'opérateur :
/image%2F3625927%2F20221226%2Fob_b660ed_25.png)
L'opérateur va faire le necessaire pour leur permettre d'échanger, en jouant sur les route-target comme suit :
/image%2F3625927%2F20221226%2Fob_db15c1_26.png)
La communication entre les deux clients après intrevention de l'opérateur :
/image%2F3625927%2F20221226%2Fob_cedf6c_27.png)
----------------***************************************----------------------
Ci-dessous, le recap des config
La config BGP
Sur le PE1
redistribute bgp 1 metric 1 subnets
redistribute bgp 1 metric transparent
router bgp 1
bgp log-neighbor-changes
neighbor 3.3.3.3 remote-as 1
neighbor 3.3.3.3 update-source Loopback0
!
address-family vpnv4
neighbor 3.3.3.3 activate
neighbor 3.3.3.3 send-community extended
exit-address-family
!
address-family ipv4 vrf bank
redistribute rip
exit-address-family
!
address-family ipv4 vrf society
redistribute ospf 10
exit-address-family
Sur le PE2
redistribute bgp 1 metric 1 subnets
redistribute bgp 1 metric transparent
router bgp 1
bgp log-neighbor-changes
neighbor 1.1.1.1 remote-as 1
neighbor 1.1.1.1 update-source Loopback0
!
address-family vpnv4
neighbor 1.1.1.1 activate
neighbor 1.1.1.1 send-community extended
exit-address-family
!
address-family ipv4 vrf bank
redistribute rip
exit-address-family
!
address-family ipv4 vrf society
redistribute ospf 10
exit-address-family
La config RIP
Sur le PE1
router rip
version 2
!
address-family ipv4 vrf bank
redistribute bgp 1 metric transparent
network 1.0.0.0
network 192.168.15.0
no auto-summary
exit-address-family
redistribute rip
Sur le PE2
router rip
version 2
!
address-family ipv4 vrf bank
redistribute bgp 1 metric transparent
network 3.0.0.0
network 192.168.37.0
no auto-summary
exit-address-family
redistribute rip
La config OSPF
Sur le PE1
router ospf 10 vrf society
redistribute bgp 1 metric 1 subnets
network 1.1.1.1 0.0.0.0 area 0
network 192.168.16.0 0.0.0.3 area 0
default-information originate
!
router ospf 1
redistribute ospf 10
Sur le PE2
ip ospf 1 area 0
ip ospf 1 area 0
router ospf 10 vrf society
redistribute bgp 1 metric 1 subnets
network 3.3.3.3 0.0.0.0 area 0
network 192.168.38.0 0.0.0.3 area 0
default-information originate
!
router ospf 1
redistribute ospf 10
Les interfaces sur lesquelles OSPF est activé sur les PE
Le PE1
/image%2F3625927%2F20221226%2Fob_7f6201_28.png)
Le PE2
/image%2F3625927%2F20221226%2Fob_32ae36_29.png)
La config VRF
Sur le PE1
vrf definition bank
rd 111:111
route-target export 111:111
route-target import 111:111
route-target import 222:222
!
address-family ipv4
exit-address-family
vrf definition society
rd 222:222
route-target export 222:222
route-target import 222:222
route-target import 111:111
!
Le PE2
vrf definition bank
rd 111:111
route-target export 111:111
route-target import 111:111
!
address-family ipv4
exit-address-family
vrf definition society
rd 222:222
route-target export 222:222
route-target import 222:222
!
La table d'échange de labels des PE
/image%2F3625927%2F20221226%2Fob_1aa7dc_34.png)
MPLS est le réseau d'opérateurs par excellence !