1.9.X – Les VRFs

Module 1 · Chapitre 1.9.X

Les VRFs

VRF lite : créer plusieurs tables de routage virtuelles isolées sur un même routeur, comme des VLANs pour la couche 3.
Progression du module

Dans cette leçon, vous apprendrez ce que sont les VRFs (Virtual Routing and Forwarding). Par défaut, un routeur utilise une seule table de routage globale qui contient tous les réseaux directement connectés et les préfixes appris via des protocoles de routage statiques ou dynamiques.

Les VRFs sont comme des VLANs pour les routeurs : au lieu d’utiliser une seule table de routage globale, nous pouvons utiliser plusieurs tables de routage virtuelles. Chaque interface du routeur est assignée à un VRF différent.

Les VRFs sont couramment utilisés dans les déploiements MPLS. Lorsque nous utilisons des VRFs sans MPLS, nous parlons de VRF lite. C’est ce sur quoi nous nous concentrons dans cette leçon. Jetons un œil à une topologie d’exemple.

Comment isoler totalement le trafic de deux clients sur un même routeur physique, sans utiliser de matériel séparé ?

Le problème : une seule table de routage par défaut

Par défaut, un routeur ne possède qu’une seule table de routage, dite globale. Elle regroupe tous les réseaux directement connectés et tous les préfixes appris (routes statiques ou dynamiques). Tant qu’on gère un seul réseau, cela suffit.

Mais imaginez un routeur partagé entre deux clients différents qui utilisent, par malchance, les mêmes plages d’adresses, et qui ne doivent surtout pas se voir. Avec une seule table, c’est impossible : les routes se mélangent et l’isolation n’existe pas.

  • Une seule table globale = un seul espace de routage partagé par tout le monde.
  • Deux clients avec des IP qui se chevauchent créent des conflits.
  • Aucune étanchéité entre les réseaux qui transitent par le routeur.

Le VRF : des « VLANs pour la couche 3 »

Un VRF (Virtual Routing and Forwarding) permet de créer plusieurs tables de routage virtuelles et totalement isolées sur un même routeur physique. Chaque interface est rattachée à un VRF, et chaque VRF a sa propre table : c’est exactement l’idée d’un VLAN, mais appliquée au routage (couche 3) au lieu de la commutation (couche 2).

  • Chaque VRF a sa propre table de routage, indépendante des autres.
  • Deux VRF peuvent utiliser les mêmes adresses IP sans aucun conflit.
  • Le trafic d’un VRF ne peut pas passer dans un autre sans configuration explicite.

Quand on utilise les VRF sans MPLS, on parle de VRF lite — c’est le cas que nous étudions ici. Les VRF sont aussi la brique de base des VPN MPLS chez les opérateurs.

À retenir pour l’examen : un VRF = une table de routage virtuelle isolée. Analogie clé : le VRF est à la couche 3 ce que le VLAN est à la couche 2.

Configurer un VRF lite : les 3 étapes

La mise en place tient en trois commandes, à comprendre plutôt qu’à réciter. Prenons deux clients, Blue et Red, sur un routeur partagé.

1. Créer les VRF — on déclare simplement chaque table virtuelle par son nom :

R(config)# ip vrf Blue
R(config)# ip vrf Red

2. Rattacher les interfaces — chaque interface est affectée à un VRF. Attention : appliquer ip vrf forwarding efface l’adresse IP existante, il faut donc la remettre juste après :

R(config)# interface FastEthernet0/0
R(config-if)# ip vrf forwarding Blue
R(config-if)# ip address 192.168.1.254 255.255.255.0

3. Un routage par VRF — chaque VRF a besoin de ses propres routes. Avec OSPF, on lance un processus rattaché au VRF :

R(config)# router ospf 1 vrf Blue
R(config-router)# network 192.168.1.0 0.0.0.255 area 0
  • ip vrf <nom> — crée la table virtuelle.
  • ip vrf forwarding <nom> — place l’interface dans ce VRF (et efface l’IP, à reconfigurer).
  • router ospf <id> vrf <nom> — associe un processus de routage au VRF (idem pour EIGRP/BGP).
À retenir pour l’examen : l’oubli le plus fréquent : après ip vrf forwarding, l’adresse IP de l’interface disparaît. Reconfigurez-la systématiquement.

La topologie d’exemple

Deux clients, Blue et Red, sont raccordés à un routeur ISP commun. Chaque client possède deux sites (une paire de routeurs) qui doivent se joindre entre eux, mais rester invisibles pour l’autre client. Côté client, la configuration est classique et identique dans son principe :

Configuration type d’un routeur client (ici Blue1) — aucune notion de VRF, c’est un routeur ordinaire :

hostname Blue1
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface FastEthernet0/0
 ip address 192.168.1.1 255.255.255.0
!
router ospf 1
 network 1.1.1.1 0.0.0.0 area 0
 network 192.168.1.0 0.0.0.255 area 0

Les trois autres routeurs clients (Blue2, Red1, Red2) suivent le même modèle, avec leurs propres adresses. Toute l’intelligence de l’isolation se trouve sur le routeur ISP :

Configuration du routeur ISP partagé — chaque interface est rattachée au bon VRF, et chaque client a son propre processus OSPF :

hostname ISP
!
ip vrf Blue
ip vrf Red
!
interface FastEthernet0/0
 ip vrf forwarding Blue
 ip address 192.168.1.254 255.255.255.0
!
interface FastEthernet1/0
 ip vrf forwarding Red
 ip address 192.168.2.254 255.255.255.0
!
router ospf 1 vrf Blue
 network 192.168.1.0 0.0.0.255 area 0
 network 192.168.3.0 0.0.0.255 area 0
!
router ospf 2 vrf Red
 network 192.168.2.0 0.0.0.255 area 0
 network 192.168.4.0 0.0.0.255 area 0
À retenir pour l’examen : les routeurs clients ignorent tout des VRF. C’est le routeur partagé (ISP) qui isole les clients grâce à ip vrf forwarding et à un processus de routage par VRF.

Vérifier que l’isolation fonctionne

Une fois configuré, il faut prouver que Blue et Red sont bien étanches. Trois commandes suffisent.

Lister les VRF et leurs interfaces
ISP# show ip vrf
  Name          Default RD      Interfaces
  Blue         <not set>      Fa0/0, Fa2/0
  Red          <not set>      Fa1/0, Fa3/0
À retenir pour l’examen : chaque VRF doit lister ses interfaces. Si une interface manque, c’est que le ip vrf forwarding a été oublié.
Consulter la table de routage d’un seul VRF
ISP# show ip route vrf Blue
  O    192.168.3.0/24 [110/2] via 192.168.3.3, FastEthernet2/0
  C    192.168.1.0/24 is directly connected, FastEthernet0/0
À retenir pour l’examen : la table du VRF Blue ne contient que les réseaux de Blue — aucune route de Red n’y apparaît. C’est la preuve de l’isolation.
Tester la connectivité dans un VRF
ISP# ping vrf Blue 192.168.3.3
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms
À retenir pour l’examen : un ping normal utiliserait la table globale (qui est vide ici) et échouerait. Il faut préciser vrf Blue pour tester dans la bonne table.

Ce qu’il faut retenir

Le VRF lite transforme un routeur unique en plusieurs routeurs logiques étanches. On crée les VRF, on y rattache les interfaces, on associe un routage à chacun, puis on vérifie l’isolation avec les commandes vrf. C’est simple, puissant, et incontournable dès qu’un même équipement doit servir plusieurs entités sans qu’elles se voient.

À retenir pour l’examen : VRF = table de routage virtuelle isolée (« VLAN de couche 3 ») ; 3 commandes clés (ip vrf, ip vrf forwarding, router ospf … vrf) ; toujours ajouter vrf <nom> aux commandes show et ping.