Ce protocole a vu le jour par le biais du RFC 1058 en 1988 et a évolué vers le version 2.0 avec la RFC 2453. Même si la version 1.0 et 2.0 sont encore en utilisation de nos jours, RIP est maintenant considéré comme techniquement obsolète vue les nouveaux protocoles disponibles tels que OSPF et IS-IS. Pour information, RIP a été adapté en 1997 pour l'IPv6 avec la RFC 2080 et s'appelle RIPng.

Le nombre maximum de saut possible est de 15, tout saut supplémentaire est considéré comme infini, et donc la route est considéré comme inutilisable.  De même que la distance administrative par défaut du RIP est de 120.

Le protocole RIP envoie ses annonces de routes aux autres routeurs via le protocole 
UDPsur le port 500. Les annonces sont envoyés aux adresses suivantes :


Les annonces de MAJ sont envoyées par défaut toutes les 30 secondes, et ces mise-a-jours sont complètes. C'est à dire que le routeur va envoyer toute sa table de routage aux routeurs voisins. Une seule exception à cette règle concerne les circuits à demandes, qui recevront une fois la table de routage complète, et ensuite recevront uniquement des MAJ partielles à chaque changement 
RFC2091. Les mise-a-jours sont bien sûr déclenchées à chaque changement de routage.

RIP permet l'annonce de plusieurs routes vers le même subnet (sous réseau), cependant le nombre maximum possible de routes vers le même subnet est de 6 (par défaut c'est 4 routes).

Les options disponible avec la version 2.0 du RIP:

  • Authentifications via un mot de passe en clair ou MD5
  • Les MAJ de routages contiennent le masque de sous-réseau (support donc du VLSM)
  • Les routes redistribués dans le RIP peuvent être taggées
  • Les routes peuvent avoir une IP de « next-hop Â» différentes de l'IP du routeur annonçant la route.

Convergence et prévention de boucles :

  • Split Horizon : annonces toutes les routes de la table de routage vers toutes les interfaces, mais n'annonce par les routes apprises d'une interface vers cette même interface.
  • Triggered update : envoie de mise-a-jours des changements de la table de routage sans attendre la fin du timer de mise-a-jours
  • Route poisoning : envoie d'une mise-a-jour de routage avec un métrique infinie pour le subnet concerné lorsque le subnet n'est plus disponible.
  • Poison reverse : envoie d'un message de route poisoning sur la même interface que reçue.
  • Update timer : timer à laquel les mises-a-jours sont envoyées sur les interfaces (par défaut 30 secondes)
  • Hold-Down timer : lors de l'augmentation du métrique d'un subnet, il n'y a pas d'ajout d'une route alternative avec un meilleur métrique pour ce subnet tant que le Hold-Down timer n'aura pas expiré (par défaut 180 secondes)
  • Invalid timer : un timer par subnet qui part de 0 jusqu'à la valeur maximale (par défaut 180 secondes). A chaque mise-a-jours d'une route la valeur revient à 0. Si le timer arrive à la valeur maximale, la route est considérée comme invalide.
  • Flush (Garbage) Timer : un timer par subnet qui est reset et augmente en même
    temp que le timer invalid. Lorsqu'il arrive à la valeur maximale (par défaut 240 secondes), le routeur retire la route de la table de routage et accepte une nouvelle route dans la table de routage.

Donc suivant les timers, le temps de convergence d'un site peut-être par défaut de 4 minutes (240 secondes). Ce qui reste en effet très long comparés aux autres protocoles tels que l'OSPF (2 minutes), BGP (3 minutes),etc...

Une configuration basique d'un petit réseau avec du RIP :

Goober :

router rip
 version 2
 network 172.17.0.0

Opie :

router rip
 version 2
 network 172.17.0.0

Barney :

router rip
 version 2
 network 10.0.0.0
 network 192.168.83.0

Andy :

router rip
 version 2
 network 172.17.0.0
 network 192.168.12.0
 network 192.168.83.0


Merci à Christophe Lucas pour la relecture.