Protocole RIP

Protocole RIP

RIPv1 / RIPv2 / RIPng

 

 

Présentation


Le protocole RIP est l’un des plus vieux protocoles de routages et n’est que très rarement utilisé. Cependant, il est intéressant d’en parler afin de bien comprendre le principe du routage dynamique.

Que peut t’on dire du protocole de routage dynamique RIP :

 

RIP = Routing Information Protocol :

– Existe en trois versions :

– RIPv1 (Classful)
RIPv2 (Classless)
RIPng (IPv6)

– Protocole normalisé
– Protocole IGP
– Utilise le « Distance Vector » (Metric) (Maximum 15 sauts)
– Envoi à ses « Neighboors » sa table de routage ENTIÈRE en utilisant le :

Split-horizon
Route-poisoning

– Envoi sa table de routage à ses neighboors périodiquement (toutes les 30secondes).

 

RIPv1 vs RIPv2 vs RIPng


 

RIPv1


– Classful
– Envoi sa table de routage en unicast
– Pas d’authentification
– Pas de mise à jour automatique
– Non présent dans le CCNA, CCNP et CCIE

 

RIPv2


– Classless
– Envoi sa table de routage en multicast
– Authentification en Plain-text ou MD5 (Non sécurisée)
– Mise à jour automatique en cas de modification de topologie

 

RIPng


– IPv6
– Authentification en Plain-text ou MD5

 

Principe de fonctionnement


 

RIPv1 / RIPv2


La commande « router rip » permet d’activer le protocole

Par défaut, ce dernier est dans la version 1. pour activer le RIPv2 , il suffit de lui dire avec la commande « version 2« .

La commande « network » permet :

– De chercher des nouveaux neighboors sur ce réseau

– De déclarer ce réseau à nos neighboors.

 

Exemple 1


Tous nos réseaux utilisent des réseau de Classe C.

Il faut donc spécifier tout nos réseaux en /24

 

Exemple 2


Tous nos réseaux sont sur une adresse de Classe A.

R1 est connecté à 3 réseaux :

10.0.1.0 /24
10.0.4.0 /24
10.0.6.0 /24

 

Ces 3 réseaux sont donc des réseaux Classless du réseau 10.0.0.0 /8

 

Avec RIPv1

R1(config)#router rip
R1(config-router)#network 10.0.0.0

La commande network permet à R1 d’annoncer aux autres routeur RIP le réseau classe A 10.0.0.0 /8.

R1 va dire à tout ses voisins qu’il possède le réseau 10.0.0.0 /8

R2 et R3 ont la même configuration, il vont aussi dire à tout leurs voisins qu’ils possèdent le réseau 10.0.0.0 /8

Notre routage RIP va donc être inutilisable vu que tout le monde annonce le même réseau.

 

Avec RIPv2

R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#network 10.0.0.0

La commande network permet à R1 d’annoncer aux autres routeur RIP tous les réseaux compris dans le réseau de classe A 10.0.0.0 /8

R1 possède 3 réseaux Classless dans le réseau 10.0.0.0 /8

R1 va dire à tout ses voisins qu’il possède les réseaux 10.0.1.0/2410.0.4.0/24 et 10.0.6.0/24

 

Timers RIP


Update :

– Fréquence d’envoi des mises à jour
30 secondes par défaut

Invalid:

– Considère l’itinéraire invalide au bout de X seconds et le place en mode Hold Down
180 secondes par défaut

Hold Down:

– Ignore les mises à jour de routage concernant ce réseau. (sauf si cette mise à jour a un metric plus faible)
180 secondes par défaut

Flush :

– Supprime la route de la table de routage
240 secondes par défaut

 

 

R1(config-router)# timers basic [update] [Invalid] [Hold Down] [Flush]

! Ce qui nous donne :

R1(config)#router rip
 R1(config-router)# timers basic 30 180 180 240

 

Configuration


RIPv2


R1(config)#router rip 
R1(config-router)#version 2
R1(config-router)#network 10.0.0.0

 

RIPng


! Activer le routage IPv6

R1(config)#ipv6 unicast-routing

! Activer le proccessus RIPng

R1(config)#ipv6 router rip Finger
 R1(config-rtr)#exit

! Activer le RIPng sur nos interfaces

R1(config)#interface FastEthernet0/0
R1(config-if)#ipv6 address 2012::1/64
R1(config-if)#ipv6 rip Finger enable
R1(config-if)#exit

R1(config)#interface FastEthernet0/1
R1(config-if)#ipv6 address 2013::1/64
R1(config-if)#ipv6 rip Finger enable
R1(config-if)#exit

 

 

Troubleshooting


! Voir l'intégralite de la table de routage

   RIPv2 = R1# show ip route
   RIPng = R1# show ipv6 route

! Voir uniquement les routes RIP de la table de routage
 
   RIPv2 = R1# show ip route rip
   RIPng = R1# show ipv6 route rip

! Voir une route précise
 
   RIPv2 = R1# show ip route [subnet] [mask]
   RIPng = R1# show ipv6 route [prefix] [length]

! Afficher les interfaces qui participle au RIP
 
   RIPv2 = R1# show ip protocols
   RIPng = R1# show ipv6 rip

! Afficher les timers RIP
 
   RIPv2 = R1# show ip protocols
   RIPng = R1# show ipv6 rip next-hops

! Afficher la liste des sources d'information RIP
 
   RIPv2 = R1# show ip protocols
   RIPng = R1# show ipv6 route rip

! Debug
 
   RIPv2 = R1# debug ip rip
   RIPng = R1# debug ipv6 rip

 

Conclusion


Le protocole de routage RIP est à utilisé uniquement si vous n’avez pas d’autres choix. Privilégiez les protocoles de routage EIGRP (Cisco) et OSPF (Protocole normalisé).

Si vous n’avez pas d’autres choix, utilisez le protocole RIP dans sa version 2 !!

Noël NICOLAS

Administrateur Réseau
10 ans d’expérience
CCNA Routing and Switching
Fondateur du site FingerInTheNet

4 thoughts on “Protocole RIP”

  1. Bonjour j’aime beaucoup la présentation de ton travail.félicitations.
    Juste une petite question, pourquoi dans l’exemple 2 du protocole RIP, les adresses ne sont pas avec un « /8 » car elles font partie de la classe A?.
    Cordialement

    1. Bonjour Marzaro.

      Merci beaucoup pour ton commentaire.
      Effectivement, je n’avais pas assez développé l’exemple 2 alors que c’est cet exemple qui marque bien la différence entre le RIPv1 et le RIPv2.

      J’ai mis à jours l’exemple 2.

      A toi de me dire si cet exemple est plus clair et si j’ai répondu à ta question.

      Hésite pas à me faire part de tes commentaires sur d’autres Articles.
      Ca m’aide énormément !!!

      Bonne journée à toi !!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *