Protocole VRRP

A l’heure où la haute disponibilité est un des maîtres mots du réseau, le protocole VRRP (Virtual Router Redundancy Protocol) permet d’augmenter la disponibilité des routeurs lors de transferts de données importantes dans un même sous-réseau.

Introduction

Le transfert de données importantes effectué via un seul routeur peut s’avérer problématique en cas de dysfonctionnement de celui-ci. Le protocole VRRP offre la possibilité via un système de virtualisation qui créé des liens entre les routeurs pour augmenter leurs disponibilités.

Le principe étant de faire travailler les routeurs en collaboration pour éviter toute perte de données.

Ce protocole non propriétaire est défini par la norme RFC 3768.

Attention, VRRP fournit des informations sur l’état du routeur et ne donne en aucun cas des informations sur les routes échangées par les routeurs. VRRP n’est pas un protocole de routage.

Le transfert de données importantes effectué via un seul routeur peut s’avérer problématique en cas de dysfonctionnement de celui-ci. Le protocole VRRP offre la possibilité via un système de virtualisation qui créé des liens entre les routeurs pour augmenter leurs disponibilités. Le principe étant de faire travailler les routeurs en collaboration pour éviter toute perte de données.Ce protocole non propriétaire est défini par la norme RFC 3768. Attention, VRRP fournit des informations sur l’état du routeur et ne donne en aucun cas des informations sur les routes échangées par les routeurs. VRRP n’est pas un protocole de routage.

Principe

Pour utiliser le protocole VRRP, il faut au minimum 2 routeurs. Dans ce groupe, une adresse IP virtuelle va être partagée entre les différents routeurs. Le routeur permettant l’acheminement le plus rapide des données de part sa position est désigné comme le master routeur, comprenez le routeur maître et va répondre aux requêtes de l’adresse IP virtuelle qui sera utilisée comme passerelle par défaut pour les autres membres du réseau. L’adresse MAC virtuelle sera toujours de la forme 00-00-5E-00-01-XX où XX est le VRID pouvant aller de 0x01 à 0xFF.
Les autres routeurs membres de ce groupe sont dit de backup et permettent de répondre aux requêtes de l’adresse IP virtuelle en cas de dysfonctionnement du routeur maître. Chaque groupe VRRP est identifié par un VRID (Virtual Routeur Identifier) qui doit être unique. La portée de chaque routeur étant restreint à un seul LAN.
Chaque routeur se voit également attribué une priorité allant de 1 à 255. La routeur maître possède la priorité la plus élevée (255). Les autres priorités sont une nouvelle fois attribuées en fonction de la vitesse d’acheminement des données.

schema_vrrp

Le routeur maître communique périodiquement (1sec par défaut) avec ses routeurs de backup via l’adresse de multicast 224.0.0.1 en leur envoyant sa priorité. Le routeur de backup vérifie donc si sa priorité est bien plus faible que celle du maître. Plusieurs cas se présentent alors (cas de 2 routeurs) :
si la priorité du routeur de backup est plus faible que celle du maître, tout se passe normalement et rien ne change.
si la priorité du routeur de backup est plus importante que celle du maître, alors le routeur de backup s’auto-proclame maître
si le routeur de backup ne reçoit pas de message du routeur maître après une période définie (3,6sec par défaut), alors il s’auto-proclame maître également.

Load balancing (répartition des charges)

Le protocole VRRP assure simplement une haute disponibilité durant le transfert de données, mais n’assure en aucun cas la répartition de charges entre les différents routeurs afin d’améliorer les vitesses de transfert. Pour effectuer du load balancing en plus de la redondance de liens, préférez le protocole propriétaire Cisco GLBP (Gateway Load Balancing Protocol) qui permet de faire de la répartition de charge sur plusieurs routeurs en utilisant qu’une seule adresse IP virtuelle, mais plusieurs adresses MAC virtuelles. Attention pour utiliser ce protocole, il faut absolument que votre routeur supporte les adresses MAC multiples sur une interface physique.

Mise en place

Voici comment se déroule la mise en place du protocole VRRP sur une interface :

Router(config)#interface <interface>
Router(config-if)#ip address <ip> <masque>
Router(config-if)#no shutdown
Router(config-if)#ip vrrp <VRID>
Router(config-if)#ip vrrp <VRID> priority <entre 1 et 255>
Router(config-if)#ip vrrp <VRID> authentication-type <type>
Router(config-if)#ip vrrp <VRID> virtual-address <ip> <masque>
Router(config-if)#ip vrrp <VRID> enable

En prenant un exemple concret on obtient des commandes de ce type pour la configuration du routeur maître :

Router(config)#interface fastEthernet 4/0
Router(config-if)#ip address 194.50.1.42 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#ip vrrp 25
Router(config-if)#ip vrrp 25 priority 255
Router(config-if)#ip vrrp 25 authentication-type none
Router(config-if)#ip vrrp 25 virtual-address 194.50.1.50 255.255.255.0
Router(config-if)#ip vrrp 25 enable

Pour redéfinir certains paramètres comme la durée entre chaque émission (1sec par défaut) du message par le routeur maître, vous devez utiliser la commande :

Router(config-if)#ip vrrp 25 advertise-interval 50

Des commandes “show” sont également disponibles afin de vérifier le fonctionnement et la mise en place de VRRP sur votre réseau :

  • Statisiques de VRRP : show ip vrrp
Console> (enable)show ip vrrp

Exemple :

Console> (enable)show ip vrrp
Interface: fastEthernet5/0.0 vrrpVrid: 1
primary address: 10.0.0.2
operational state: backup (current master: 130.0.0.1)
admin state: enabled
up time: 145 seconds
interval: 1 second
last error status: no error
priority: 101
auth type: none
preemption: enabled
auto assoc address(es): 10.0.0.1, 100.0.0.1, 101.0.0.1
  • Affiche un bref résumé sur la mise en place de VRRP : show ip brief vrrp
Console> (enable)show ip brief vrrp

Exemple :

Console> (enable)show ip brief vrrp
Interface              VRID  Primary Address  State   Adv  Pri  Admin
———————  —-  —————  ——  —  —  —–
fastEthernet12/8.1.1   255  123.123.123.123    init    1  100  disabled
gigabitEthernet12/8.1.1  1          1.1.1.1  master    1  254  enabled 

Conclusion

L’implémentation du protocole VRRP est un excellent moyen de faire de la redondance de liens afin d’augmenter la disponibilité de votre réseau. Petit inconvénient, celui-ci ne propose pas la répartition de charges en plus de la redondance de liens comme le fait le protocole Cisco GBLB. Pour une alternative open sources, vous pouvez opter pour le protocole CARP (Common address redundancy protocol).


Voir également