Tutoriels vidéos
Recent Articles
Routage RIP
Routage RIP
Définitions
Avant de parler de routage RIP, il faut
que j’explique qu’est-ce qu’un routeur et quel est son but.
Le routeur
Le routeur, est un équipement réseau
permettant d’acheminer les données d’un réseau à un autre. Le routeur possède
une table contenant les chemins que doivent emprunter les données pour arriver
à destination. Représenter vous un routeur comme un bureau de poste où le
courrier représente les données. Vous déposez une enveloppe dans la boite aux
lettres, le bureau de poste regarde la destination et détermine comment
acheminer le courrier à destination puis à un autre bureau de poste. Un routeur
réalise la même chose mais avec des données informatiques. Il reçoit une
donnée, regarde la destination, il étudie sa table de routage pour chercher le
meilleur chemin, et transmet les données à un autre routeur.
Le routage
Cela consiste à transmettre les données
d’un réseau à un autre en prenant le bon chemin.
Le routage dynamique
Deux types de routage existent, le
routage statique et le routage dynamique :
- Le routage statique est un routage où chaque route a été saisie manuellement par l’administrateur. Il est utilisé dans les tous petits réseaux. Il est facile à gérer lorsque le nombre de routes reste limité. Lorsqu’une route est en panne, l’intervention de l’administrateur est obligatoire pour saisir une route de secours.
- Le routage dynamique est un routage où les routes sont calculées et saisies grâce à un protocole de routage. Il est utilisé dans les plus gros réseaux. Il est plus difficile à mettre en place, mais plus facile à maintenir. Lorsqu’une route est en panne, il recalcule automatiquement un autre chemin.
Protocole de routage
RIP
RIP est un protocole de routage IP de
type vecteur distance basé sur l’algorithme de routage
décentralisé Bellman-Ford. Il permet à chaque routeur de communiquer aux autres
routeurs la métrique, c’est-à-dire la distance qui les sépare du réseau IP (le
nombre de sauts qui les sépare, ou « hops » en anglais). Ainsi,
lorsqu’un routeur reçoit un de ces messages, il incrémente cette distance de 1
et communique le message aux routeurs directement accessibles.
Les routeurs peuvent donc conserver de
cette façon la route optimale d’un message en stockant l’adresse du routeur
suivant dans la table de routage de telle façon que le nombre de sauts pour
atteindre un réseau soit minimal.
RIPv1 et RIPv2
Il existe deux versions de RIP, la
deuxième étant une amélioration de la première.
RIPv2 apporte les modifications
suivantes à RIPv1 :
- Le support du routage classless.
- La diffusion du masque réseau dans les mises à jour de routage.
- Le support de V.L.S.M.
- La diffusion des mises à jour de routage s’effectue par multicast avec l’adresse de classe D 224.0.0.9. (Avec RIPv1 les mises à jour s’effectuent en broadcast)
- L’authentification de la source de la mise à jour de routage par un texte en clair (actif par défaut), ou un texte crypté suivant l’algorithme M.D5 (Message-Digest 5).
- L’utilisation d’indicateurs de route externe (route tag) afin de pouvoir différencier les routes apprises par d’autres protocoles de routage et redistribuées dans RIP
Maintenant que j’ai présenté le routage,
la notion de dynamique, RIP et la notion de RIPv1 et v2 ; je continuerai
cet article en n’utilisant que RIPv2.
Fonctionnement de RIP
Fonctionnement
Le protocole RIP s’appuie sur l’échange
d’information entre les routeurs adjacents. Chaque routeur connait le coût de
ses propres liaisons, et diffuse ses informations aux autres routeurs qu’il
connait. Ensuite les routeurs recalculent les meilleures routes, grâce aux
informations reçues.
Une route ressemble à l’exemple
ci-dessous :
La première ligne est une route créée automatiquement par le routeur, lors de la configuration et la connexion de l’une de ces interfaces. D’où le C en début de ligne signifiant directly connected. En fin de ligne nous retrouvons le nom de l’interface concernée.
La deuxième ligne est aussi une route,
mais celle-ci a été ajoutée avec le protocole de routage RIP d’où le R.
Nous trouvons ensuite l’adresse du réseau. Puis l’information [120/1] que
nous expliquerons plupart. Ensuite nous avons via 10.0.0.2, cela
veut dire que pour accéder au réseau 30.0.0.0/8 nous allons
passer par le routeur ayant l’adresse IP 10.0.0.2. Le compteur 00:00:02 correspond
au timer du dernier message RIP reçu. Et pour finir nous avons le nom de
l’interface concerné.
Table de routage
La table de routage est une sorte de
tableau dans le routeur qui répertorie toutes les routes que celui-ci connait.
Une table de routage ressemble à l’exemple ci-dessous :
On retrouve dans un premier temps la
commande que l’on doit taper pour obtenir la table de routage. Nous avons
ensuite la légende des codes que l’on trouve en début de ligne dans la table.
Pour finir nous avons la table de routage.
Lorsqu’un routeur reçoit une route, il
compare la route avec les informations de sa propre table de routage :
- Si la destination n’existe pas, et que la métrique n’est pas infinie alors la route est ajoutée.
- Si la destination reçue existe, et que la métrique obtenue est meilleure alors la table de routage est mise à jour.
- Si la destination reçue existe, et que le routeur qui a envoyé la table est le routeur adjacent déjà connu, et que la métrique obtenue est différente, alors on met à jour la table de routage.
- Sinon on ne change rien.
Temporisations
Un routeur en régime stable diffuse un
message RIP toutes les 30 secondes +- 5 secondes, pour avertir que
sa table de routage est toujours opérationnelle.
Lorsqu’une modification de la table de
routage intervient, le routeur envoi un message RIP à +- 0 à 5 secondes.
Cela permet une prise en compte des modifications beaucoup plus rapidement.
Le protocole utilise trois
temporisations :
- Temporisation appelé : Invalid timer. Si le routeur ne reçoit aucune mise à jour d’une route dans les 180 secondes, alors la route est marqué non valide (métrique = 16). Néanmoins la route est sauvegardé jusqu’à la fin de la temporisation d’annulation (Flush timer).
- Annulation appelé : Flush timer. Si le routeur ne reçoit pas dans les 240 secondes une mise à jour pour cette route, la route est supprimée de la table de routage.
- Mise hors service appelé : Holdown timer. Cette temporisation permet d’éviter les boucles de routages au moment de la convergence de la topologie sur la base de nouvelles informations. Lorsqu’une route devient inaccessible, elle doit le rester assez longtemps pour que tous les routeurs découvrent que le réseau est inaccessible par cette route.
Attention : Les valeurs des temporisations que j’indique sont les valeurs utilisées par les équipements Cisco, si vous vérifiez les valeurs sur les sites des groupes de normalisation les valeurs peuvent être différentes.
RIP et la métrique
La métrique de RIP est simple comparer à
d’autre protocole de routage. La métrique est calculée en fonction du nombre de
saut pour atteindre la destination. Un saut représente le nombre de routeur que
doit traverser la donnée avant d’arriver à destination.
Pour éviter des boucles de routage la métrique
maximum est 16, on l’appelle aussi métrique infini. Un domaine de routage
RIP ne peut donc pas excéder 15 sauts de routage. C’est l’une des raisons qui
limite RIP à de petit réseaux.
La métrique est la valeur encadrée en rouge.
RIP et la Distance
Administrative
La distance Administrative est une
valeur qui représente le protocole. Dans un réseau utilisant que du routage RIP
cette valeur est inutile. Mais dans un réseau utilisant le protocole RIP ainsi
que d’autres protocoles comme OSPF, IS-IS, etc. dans ce cas la valeur de la
Distance administrative est plus importante que la métrique. Lorsqu’une même
route existe dans plusieurs protocoles, le routage analyse la valeur de la
distance administrative pour chercher la valeur la plus faible. Chaque
protocole a une valeur par défaut comme nous le montre l’image
ci-dessous :
La distance administrative est la valeur encadrée en rouge.
Voici un tableau regroupant les
différentes valeurs de distance administrative :
Prenons l’exemple d’une route A présente
plusieurs fois dans la table de routage. Route A apprise via le protocole RIP
et Route A apprise via le protocole OSPF. Le routeur, avant d’envoyer des
données, va comparer les deux distances administratives. Le protocole RIP avec
la valeur 120 et le protocole OSPF avec la valeur 110. Le routeur utilisera
donc la route A apprise avec le protocole OSPF car sa distance administrative
est inférieure.
Horizon coupé
Horizon coupé est appelé aussi Split
horizon.
Cette technique est utilisée pour
accélérer la convergence. Le principe est simple, on interdit à un routeur
d’envoyer une route à un routeur adjacent quand cette route passe par ce
routeur adjacent.
Poison reverse
Un routeur diffuse les destinations qui
deviennent inaccessibles (time out = 180s et métrique = infini). Un routeur qui
reçoit une route marquée inaccessible l’intègre en tant que telle dans sa
table. Et si au bout de 240 secondes, aucune nouvelle entrée n’est venue
modifier la métrique alors elle est effacée de la table.
Manipulation de RIP
Schéma du réseau
Voici le schéma réseau (ci-dessous), il
comprend 5 routeurs avec RIPv2 activé, 9 réseaux et deux ordinateurs :
Configurations du
réseau
Nous allons maintenant configurer les 5
routeurs. Nous commencerons par configurer les adresses IP des interfaces. Pour
ensuite configurer le routage RIP.
Routeur 1
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R1
R1(config)#interface fastEthernet 0/0
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.1.254 255.255.255.0
R1(config-if)#exit
R1(config)#interface fastEthernet 0/1
R1(config-if)#ip address 20.0.0.1 255.0.0.0
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface serial 0/0
R1(config-if)#no shutdown
R1(config-if)#clock rate 128000
R1(config-if)#ip address 10.0.0.1 255.0.0.0
R1(config-if)#exit
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#network 192.168.1.0
R1(config-router)#network 10.0.0.0
R1(config-router)#network 20.0.0.0
R1(config-router)#end
R1#wr
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R1
R1(config)#interface fastEthernet 0/0
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.1.254 255.255.255.0
R1(config-if)#exit
R1(config)#interface fastEthernet 0/1
R1(config-if)#ip address 20.0.0.1 255.0.0.0
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface serial 0/0
R1(config-if)#no shutdown
R1(config-if)#clock rate 128000
R1(config-if)#ip address 10.0.0.1 255.0.0.0
R1(config-if)#exit
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#network 192.168.1.0
R1(config-router)#network 10.0.0.0
R1(config-router)#network 20.0.0.0
R1(config-router)#end
R1#wr
Routeur 2
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R2
R2(config)#interface fastEthernet 0/0
R2(config-if)#no shutdown
R2(config-if)#ip address 30.0.0.2 255.0.0.0
R2(config-if)#exit
R2(config)#interface fastEthernet 0/1
R2(config-if)#ip address 20.0.0.2 255.0.0.0
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#interface serial 0/0
R2(config-if)#no shutdown
R2(config-if)#clock rate 128000
R2(config-if)#ip address 40.0.0.2 255.0.0.0
R2(config-if)#exit
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#network 20.0.0.0
R2(config-router)#network 30.0.0.0
R2(config-router)#network 40.0.0.0
R2(config-router)#end
R2#wr
Routeur 3
Router#configure
terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R3
R3(config)#interface fastEthernet 0/0
R3(config-if)#no shutdown
R3(config-if)#ip address 30.0.0.1 255.0.0.0
R3(config-if)#exit
R3(config)#interface fastEthernet 0/1
R3(config-if)#ip address 50.0.0.1 255.0.0.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#interface serial 0/0
R3(config-if)#no shutdown
R3(config-if)#ip address 10.0.0.2 255.0.0.0
R3(config-if)#exit
R3(config)#interface serial 0/1
R3(config-if)#no shutdown
R3(config-if)#ip address 70.0.0.2 255.0.0.0
R3(config-if)#exit
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#network 10.0.0.0
R3(config-router)#network 30.0.0.0
R3(config-router)#network 50.0.0.0
R3(config-router)#network 70.0.0.0
R3(config-router)#end
R3#wr
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R3
R3(config)#interface fastEthernet 0/0
R3(config-if)#no shutdown
R3(config-if)#ip address 30.0.0.1 255.0.0.0
R3(config-if)#exit
R3(config)#interface fastEthernet 0/1
R3(config-if)#ip address 50.0.0.1 255.0.0.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#interface serial 0/0
R3(config-if)#no shutdown
R3(config-if)#ip address 10.0.0.2 255.0.0.0
R3(config-if)#exit
R3(config)#interface serial 0/1
R3(config-if)#no shutdown
R3(config-if)#ip address 70.0.0.2 255.0.0.0
R3(config-if)#exit
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#network 10.0.0.0
R3(config-router)#network 30.0.0.0
R3(config-router)#network 50.0.0.0
R3(config-router)#network 70.0.0.0
R3(config-router)#end
R3#wr
Routeur 4
Router#configure
terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R4
R4(config)#interface fastEthernet 0/0
R4(config-if)#no shutdown
R4(config-if)#ip address 60.0.0.2 255.0.0.0
R4(config-if)#exit
R4(config)#interface fastEthernet 0/1
R4(config-if)#ip address 50.0.0.2 255.0.0.0
R4(config-if)#no shutdown
R4(config-if)#exit
R4(config)#interface serial 0/0
R4(config-if)#no shutdown
R4(config-if)#ip address 40.0.0.1 255.0.0.0
R4(config-if)#exit
R4(config)#router rip
R4(config-router)#version 2
R4(config-router)#network 40.0.0.0
R4(config-router)#network 50.0.0.0
R4(config-router)#network 60.0.0.0
R4(config-router)#end
R4#wr
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R4
R4(config)#interface fastEthernet 0/0
R4(config-if)#no shutdown
R4(config-if)#ip address 60.0.0.2 255.0.0.0
R4(config-if)#exit
R4(config)#interface fastEthernet 0/1
R4(config-if)#ip address 50.0.0.2 255.0.0.0
R4(config-if)#no shutdown
R4(config-if)#exit
R4(config)#interface serial 0/0
R4(config-if)#no shutdown
R4(config-if)#ip address 40.0.0.1 255.0.0.0
R4(config-if)#exit
R4(config)#router rip
R4(config-router)#version 2
R4(config-router)#network 40.0.0.0
R4(config-router)#network 50.0.0.0
R4(config-router)#network 60.0.0.0
R4(config-router)#end
R4#wr
Routeur 5
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#no ip domain-lookup
Router(config)#hostname R5
R5(config)#interface fastEthernet 0/0
R5(config-if)#no shutdown
R5(config-if)#ip address 60.0.0.1 255.0.0.0
R5(config-if)#exit
R5(config)#interface fastEthernet 0/1
R5(config-if)#ip address 192.168.2.254 255.255.255.0
R5(config-if)#no shutdown
R5(config-if)#exit
R5(config)#interface serial 0/1
R5(config-if)#no shutdown
R5(config-if)#clock rate 128000
R5(config-if)#ip address 70.0.0.1 255.0.0.0
R5(config-if)#exit
R5(config)#router rip
R5(config-router)#version 2
R5(config-router)#network 192.168.2.0
R5(config-router)#network 60.0.0.0
R5(config-router)#network 70.0.0.0
R5(config-router)#end
R5#wr
Cliquez ci-dessous pour télécharger le
fichier Packet Tracert, comprenant une démonstration du réseau :
Vérifications
Après avoir attendu quelques minutes,
nous affichons la table de routage.
Nous tapons pour cela la commande
suivante : show ip route
Nous obtenons le résultat suivant :
Si nous regardons plus en détails, nous pouvons voir que pour aller de PC1 à PC2 le routeur R1 va envoyer les données au routeur R3 à son interface 10.0.0.2. Que la métrique pour accéder à PC2 est de "2". Et que les données sortiront par l’interface Serial0/0.
Sous-réseaux et réseaux discontinus
Comme je l’ai cité dans les différences
entre RIPv1 et RIPv2, RIPv1 ne prend pas en charge le masque de sous-réseau
dans les mises à jour de la table de routage. Par conséquence RIP ne peut pas
prendre en charge des réseaux discontinus, des réseaux VLSM (réseau ayant un
masque à valeur variable), ou encore un super-réseau de routage inter-domaine et
sans classe.
Pour mieux comprendre ce que je viens de dire voici le schéma d’un réseau ayant un problème de discontinuité :
Pour mieux comprendre ce que je viens de dire voici le schéma d’un réseau ayant un problème de discontinuité :
Comme on peut le voir, à gauche du
schéma R1 connait deux sous-réseaux (172.16.10.0\24 et 172.16.20.0\24).
Et on peut voir aussi qu’à droite du schéma R3 connait trois sous-réseaux (172.16.30.0\24, 172.16.40.0\24 et 172.16.50.0\24).
Et on peut voir aussi qu’à droite du schéma R3 connait trois sous-réseaux (172.16.30.0\24, 172.16.40.0\24 et 172.16.50.0\24).
Avec RIPv1, lorsque R1 et R3 enverront
leur table de routage à R2, l’information fournie par les deux routeurs sera
172.16.0.0. RIPv1 fonctionnant avec le système de classe réseau et ne prenant
pas en charge les masques de sous-réseaux. Celui-ci va voir 5 adresses réseaux
identiques.
Cliquez ci-dessous pour télécharger le
fichier Packet Tracert, comprenant une démonstration d’un réseau discontinu
avec RIPv1 :
Voici la table de routage des trois
routeurs :
R1 :
Observer que R1 ne connait pas les sous-réseaux 172.16.30.0, 172.16.40.0 et 172.16.50.0.
R2 :
Observer que R2 ne connait aucun sous-réseaux, il utilise directement l’adresse réseau 172.16.0.0 et se retrouve avec deux chemins pour y accéder.
R3 :
Observer que R3 ne connait pas les sous-réseaux 172.16.10.0 et 172.16.20.0.
La solution au problème consiste à
configurer les routeurs en version 2, qui prend en charge les masques de
sous-réseaux.
Cliquez ci-dessous pour télécharger le
fichier Packet Tracert, comprenant une démonstration d’un réseau discontinu
avec RIPv2 :
R1 :
La ligne : R 172.16.0.0/16 [120/2] via 10.0.0.1, 00:00:49,
Serial0/0 est apparue et permet d’envoyer les données vers 10.0.0.1 si
elle ne correspond pas aux sous-réseaux 172.16.10.0 et 172.16.20.0.
R2 :
Aucun changement visible sur R2.
R3 :
De même pour R3, la ligne : R 172.16.0.0/16 [120/2] via 20.0.0.1, 00:02:25, Serial0/1 est apparue et permet d’envoyer les données vers R2 si elle ne correspond pas aux sous-réseaux qu’elle connait.
Pour vérifier que votre routeur utilise
bien la version 2 de RIP, taper la commande suivante :
show ip protocols
Cette commande vous donnera toutes les
informations sur RIP.
La commande :
show run
Vous permet aussi de vérifier la version
de RIP.
RIP et le résumé automatique
Reprenons le schéma précédent.
RIPv2 est un protocole de routage sans
classe, on a donc tendance à penser que les sous-réseaux devraient s’afficher
individuellement dans la table de routage. Et c’est faux ! Comme nous le
montre les tables de routage ci-dessus.
On peut voir que les sous réseaux sont
résumés avec les deux mêmes chemins à coût égal. Les routeurs R1 n’inclus
toujours pas les sous-réseaux de R3 et inversement R3 n’inclus pas les
sous-réseaux de R1.
La solution existe bien, elle consiste à
désactiver le résumé automatique avec la commande suivante :
no auto-summary
Cliquez ci-dessous pour télécharger le
fichier Packet Tracert, comprenant une démonstration d’un réseau discontinu
avec RIPv2 et avec la désactivation du résumé automatique :
Si nous revérifions la table de routage
nous pouvons voir maintenant que les sous-réseaux ne sont plus résumés et donc
nous pouvons voir tous les sous-réseaux sur les trois routeurs.
R1 :
R2 :
R3 :
Récapitulatif des commandes RIP
- router rip : Active le routage RIP.
- version2 : Active la version 2 de RIP.
- network xxx.xxx.xxx.xxx : Déclare un réseau dans RIP.
- no auto-summary : Désactive le résumé automatique des routes dans les tables de routages.
- show ip route : Affiche la table de routage.
- show ip protocols : Affiche les informations sur le ou les protocoles de routages actif.
- show run : Affiche toute la configuration active du routeur.
Posted in
Cisco
Related posts:
Si vous avez apprécié cet article , abonnez-vous pour recevoir plus grand contenu tout comme il
Vidéos similaires
Messages populaires
-
Installation pas à pas de Nagios Trêve de blabla, entrons directement dans le vif du sujet avec l'installation d...
-
Si vous souhaitez scanner une plage d’adresse IP sur votre réseau afin de vérifier la disponibilité d’une ou plusieurs...
-
Installation de Cacti sous Debian Les systèmes informatiques d'entreprise associent une diversité de services proposés (rout...
-
C’est quoi le DFS ? I. Présentation Ce premier article a pour but d’expliquer ce qu’est le DFS, accessible dans u...
-
Qu’est-ce que le NAT ? Commençons par la signification du NAT, Network Address Translation (en Français Translation d’Adresse Réseau)...
-
Création d’une règle de pare-feu avec un Fortigate I. Présentation Après avoir découvert ce qu’est un Fortinet dans un premier ...
-
Active Directory I. L’Active Directory L’Active Directory est un annuaire LDAP pour les systèmes d’exploitation Windows, l...
-
IPerf: des exemples… Nous commençons l'année 2008 avec un billet regroupant des exemples d'utilisation d'IPerf, l'...
-
Comment exécuter un script PowerShell Dans l’article comment installer et vérifier le bon fonctionnement de PowerShell , nous av...
-
Routage RIP Définitions Avant de parler de routage RIP, il faut que j’explique qu’est-ce qu’un routeur et quel est son but. Le ...
pobular post
Fourni par Blogger.
Recent Stories
CONNECTER AVEC FACEBOOK
Sponsors
Chercher
Archives
Contactez Moi
0 commentaires pour ce poste
Leave a reply