Généralités Routage : Statique - RIP - EIGRP - OSPF
Le Routage Statique
Le routage statique permet d’ajouter les routes dans la table de routage d’un Équipement Layer 3 (Routeur, Switch L3, Firewall, …) manuellement, statiquement.
La configuration d’une route statique s’effectue de la manière suivante :
ip route Network-Dest Next-Hop AD Name
Le « Network-Dest » est le réseau de destination désiré, le « Next-Hop » est soit l’interface locale de sortie soit l’IP du Next-Hop connecté soit les deux à la fois comme mentionné précédemment, l’« AD » est la distance administrative qu’on attribue à la route statique (1 par défaut, plus que c’est élevé, plus que la route est moins préférée), et « Name » est une description pour la route.
Afin de supprimer une route statique, Il suffit juste de rajouter un « no » devant la commande de la route exécutée.
Il existe un type particulier de routes statiques nommé la route par défaut. L’implémentation s’effectue de la manière suivante :
ip route 0.0.0.0 0.0.0.0 Next-Hop
Les 8 zéros successifs signifient : « N’importe quelle autre destination ». On note que la route par défaut est toujours traitée à la fin par l’équipement (Last Resort).
Si deux routes statiques vers la même destination pointent vers deux Next-Hops différents, alors le routeur effectue le LoadBalacing entre les deux chemins.
Si deux routes statiques vers la même destination pointent vers deux Next-Hops différents, mais chaque route possède son propre AD configurée, l’Équipement va choisir la route avec l’AD la plus faible comme route principale (plus préférée).
Dans la table de routage, le Symbole des routes statiques est « S ».
Si l’interface de Sortie est « Down » pour une route statique quelconque, cette dernière est systématiquement supprimée de la table de routage. Attention, comme vu précédemment dans « Proxy ARP » : ce n’est pas le cas si la route est configurée avec un Next-Hop IP et que cette dernière est toujours présente dans la table de routage malgré l’état Down de l’interface de sortie (Exemple : incluse dans un Supernet Global déjà présent dans la table de routage).
Solution : On utilise les deux dans la conf : Interface de sortie + Next-Hop IP Address !
Le Protocole RIP v1/v2
C’est un protocole de routage simple et très basique de type « Distance Vector » qui permet à un Routeur d’envoyer à ses « Voisins » ou « Neighboors » toute sa table de routage de manière périodique et lente (toutes les 30 secondes). Il est à noter que le nombre max de sauts pour un routeur fonctionnant avec le RIP est de 15, à ne pas dépasser.
La distance administrative (Cisco) du RIP est 120. Il est donc moins préféré que OSPF ou EIGRP.
Vu ces inconvénients, il est très peu utilisé actuellement.
Le RIPv1 est Classeful : les Updates sont envoyés sans masque et le routeur « Summarize » les Networks dans les frontières de discontinuité Réseaux. C’est pour cela qu’il y a eu le passage vers le RIPv2 qui est Classless : Les Updates sont envoyés avec leurs propres masques réseaux. Cependant, même avec le RIPv2, la summarization est activée par défaut (comme le RIPv1), c’est pour cela qu’il est fortement recommandé de la désactiver lorsqu’on a des discontinuités réseaux en utilisant la commande « no auto-summary ».
La configuration du RIP est la suivante :
router rip version 2 network x.x.x.x no auto-summary
On note que x.x.x.x est le Réseau Global écrit en Classeful (Classes A, B ou C) pour les interfaces locales du routeur, configurées en RIP v2.
Dans la table de routage, le symbole des routes apprises par le RIP est le « R ».
Le Protocole EIGRP
L’EIGRP (Enhanced Interior Gateway Routing Protocol) est un protocole de routage dynamique de type Classless qui utilise le Distance Vector comme méthode de calcul (Algorithme DUAL, Loop-free). Il était propriétaire Cisco au début et est devenu de nos jours Standard en une très grande partie.
Similaire au RIP, le Routeur configuré en EIGRP se base sur ses voisins pour obtenir les informations des routes distantes. Cependant, il n’envoie pas de manière périodique les tables de routages entières, il envoie plutôt des « Updates Messages » à ses voisins afin de les informer de tout changement dans la topologie qui existe. Du coup, tout Équipement L3 fonctionnant avec EIGRP a une « confiance » totale en ses voisins pour établir sa table de routage (il n’a pas de vision complète sur toute la topologie comme l’OSPF par exemple).
Il est à noter que l’EIGRP fonctionne au niveau du protocole IP 88 (ni TCP ni UDP, mais plutôt au niveau de la couche 3, IP). Il utilise l’Unicast et le Multicast en 224.0.0.10 et envoie les Updates aux voisins connectés toutes les 5 secondes.
Ces « Updates » contiennent la métrique qui est le résultat de calcul du chemin le plus court : C’est le Bandwidth le plus faible + le Cummul des Delays pour atteindre une Destination X.
En effet, la formule complète est la suivante :
La métrique dépend donc de la bande passante (Bandwidth, en Kbps), du delay (en useconds), du load ainsi que de reliability.
Les valeurs par défaut des paramètres Ki sont : K1=1, K2=0, K3=1, K4=0 et K5=0 (show ip protocols). La formule devient plus simple et donne finalement :
L’EIGRP est le protocole de routage le plus rapide en termes de convergence ! En effet, avec la notion de « Backup Prêt » ou « Feasible Successor », il sait instantanément par où passer en cas de panne du chemin principal.
Le protocole EIGRP utilise trois tables :
- Neighbor Table : C’est la Table de voisinage où sont listés tous les voisins.
- Table de Topology : elle contient tous les réseaux appris par les voisins, avec les liens principaux et ceux de Backup en cas de panne.
- Table de routage : Elle contient toutes les routes déduites à partir de la table de Topologie en choisissant la métrique la plus faible.
Afin de visualiser la table de voisinage, on tape la commande :
show ip eigrp neighbors
Suite à la découverte de ses voisins en EIGRP, chaque routeur envoie à ces derniers les réseaux distants qu’il a appris. Il se base ainsi sur deux notions :
– Reported Distance (RD) ou Advertised Distance (AD) : C’est la meilleure distance qui sépare le voisin à un réseau distant X.
– Feasible Distance (FD) : La distance totale optimale qui sépare le routeur à une destination X : C’est donc l’AD + Distante entre lui et le voisin qui a envoyé la route X. C’est tout simplement la métrique.
Quelques notions à retenir concernant la table de Topolgie :
Successor : C’est le voisin qui mène vers le Network X avec la métrique la plus faible (la FD).
Feasible Successor (successeur potentiel) : C’est le voisin en Backup qui mène vers le même réseau X mais avec des FDs plus élevées (moins préférées) à condition : le RD appris par ce voisin est plus faible que le FD actuel calculé (optimal). Si cette RD est plus grande ou égale à la FD, ce n’est pas considéré comme un Backup instantané en cas de panne du Successor primaire (Une potentielle Loop peut se produire).
Afin des visualiser la table de topologie (les Successors et les Feasible Successors pour les Networks distants), il suffit de taper la commande :
show ip eigrp topology
Afin d’afficher en plus, tous les chemins possibles même s’ils ne vérifient pas la Condition AD < FD, on exécute la commande :
show ip eigrp topology all-links
Finalement l’EIGRP va mettre uniquement les meilleures routes calculées (celles avec les FDs optimales, les plus faibles) dans la table de Routage. Pour voir son contenu, on tape :
show ip route eigrp
La configuration de l’EIGRP est la suivante (exemple) :
router eigrp 100 eigrp router-id a.a.a.a network x.x.x.x no auto-summary
On note que, dans cet exemple, 100 est l’Autonomous System (AS), il doit être unique sur tous les routeurs fonctionnant en EIGRP. Le router-id n’est pas obligatoire mais recommandé.
Le réseau x.x.x.x est le Réseau Global écrit en Classeful pour toutes les interfaces locales du routeur.
La summarization est activée par défaut (comme le RIPv2) malgré qu’il soit de type Classless, il est donc fortement recommandé de la désactiver lorsqu’on a des discontinuités réseaux avec la commande « no auto-summary ».
Dans la table de routage, le symbole des routes apprises par EIGRP est « D », la distance administrative est de 90 (il est donc plus préféré que l’OSPF ou le RIP). Par contre, la distance administrative des routes externes injectés dans EIGRP (redistribution par exemple) est : 170.
Le Protocole OSPF
L’OSPF (Open Shortest Path First) est le protocole de routage dynamique le plus correct ! Il est Standard, Full Classless et se caractérise par le fait que chaque routeur possède une visibilité claire et totale sur toute la topologie.
L’OSPF utilise l’Algorithme de Dijakstra (ou Short Path First) qui permet de calculer le chemin le plus court vers toutes les destinations en utilisant les Costs (coûts) des liens. Chaque routeur doit connaître toute la topologie ainsi que tous les chemins vers les Networks distants. Par conséquent, il doit être capable de trouver le chemin le plus courts vers chaque destination.
Ce chemin le plus court est la métrique : c’est la valeur minimale de la somme des Costs cumulatifs.
La formule de Cost est la suivante :
| Cost = 10ˆ8 / Bandwidth (bits/sec) = 100 / Bandwidth (Mbits/sec) |
|---|
Toute mise à jour dans la topologie qui concerne un lien (et donc son Cost) est directement encapsulée dans un paquet, appelé « LSA ». Cette mise à jour est envoyée automatiquement et instantanément vers tous les nœuds du réseau (Flooding des LSAs), en multicast.
Chaque routeur de l’Infra OSPF reçoit et accepte le LSA. Il effectue par suite un Update sur sa topologie en tenant compte de l’information reçue, puis recalcule de nouveau en utilisant Dijakstra les chemins les plus courts vers toutes les destinations.
Afin d’améliorer les performances et réduire l’utilisation des CPUs, l’OSPF fonctionne avec la notion des Areas ; ce sont des zones qui limitent le flooding des LSAs internes. Les routeurs d’une Area quelconque ne sont pas affectés par les changements OSPF apparus dans une autre Area (pas de re-calcul total Dijakstra de tous les Networks). L’Area 0 appelé Backbone est nécessaire. On peut concevoir plusieurs Areas qui doivent passer obligatoirement par le backbone, le routeur commun entre le Backbone et un Area X s’appelle ABR.
La configuration de base de l’OSPF est la suivante (exemple) :
router ospf 10 router-id 8.8.8.8 network 10.10.10.10 0.0.0.0 area 3
On note que 10 est un indice local (le numéro du processus de l’OSPF dans l’Équipement).
L’ID 8.8.8.8 est l’identifiant du routeur dans le Nuage OSPF, il doit être obligatoirement unique dans le Network.
Le network 10.10.10.10 0.0.0.0 est l’adresse IP avec le Wild Card Mask (masque inversé) d’une interface incluse dans l’OSPF, et 3 est l’Area dans lequel est mise cette interface.
Une autre méthode de configuration de l’OSPF est par Interface, les commandes sont les suivantes :
router ospf 10 router-id 8.8.8.8 interface Gi1/0/2 ip ospf 10 area 3
Afin de changer le cost (prédéfini) d’une interface, on tape la commande suivante sous le port :
ip ospf cost 100
On peut aussi le changer en modifiant le Bandwidth (toujours sous l’interface, valeur en Kbits/s) :
bandwidth 1000Plus le Bandwidth d’une interface est élevé, plus le Cost est faible (100/Bandwidth), plus le lien est préféré dans l’OSPF.
Pour former une adjacence OSPF avec son voisin, les deux interfaces opposées de deux routeurs adjacents doivent posséder les mêmes : Network, Authentification, MTU, Area, Hello interval, Dead Timer, ect.
Afin de visualiser la table de voisinage OSPF, il suffit d’exécuter :
show ip ospf neighbor
Afin de visualiser la Database de toutes les LSAs reçues, on tape la commande :
show ip ospf database
Pour voir le contenu de la table de routage (OSPF), on exécute la commande :
show ip route ospf
Dans la table de routage, le symbole des routes apprises par l’OSPF est le « O » et leurs distances administratives est 110 (plus préféré que le RIP et moins préféré que l’EIGRP).
Remarques :
1- Afin d’insérer une route par défaut dans l’OSPF, on utilise la commande « default-information originate » sous le process OSPF. La commande « redistribute static » en la présence d’une route par défaut configurée n’a pas d’effet, elle sert uniquement pour injecter les routes statiques (non-default). Il faut alors et impérativement utiliser la commande « default-information originate », celle-ci prend effet uniquement lorsqu’une route par défaut est présente dans la table de routage.
Sinon on ajoute l’option « always » qui laisse cette injection de Default toujours présente quel que soit le cas / les confs :
router ospf 10 default-information originate always
2- Par défaut, tout lien en OSPF égal ou supérieur à 100 Mbps est représenté par le Cost 1 (les valeurs inférieures à 1 sont toujours arrondies). Cela n’est pas très optimal quand on a dans la même Infra un mix des liens de 100M, 1Gi, 10Gi et plus par exemple. Tous ces liens ont finalement la même valeur, le même coût de 1.
On peut changer la référence de calcul de Cost (formule) pour s’adapter aux liens supérieurs ou égaux à 1Gi, on tape alors la commande suivante (exemple) :
router ospf 10 auto-cost reference-bandwidth 10000
Ce contenu t’a plu ? T'as trouvé utile ?
Tu peux m’offrir alors un Super Café ☕☕:)
Ton soutien me permet de continuer à créer des ressources gratuites et utiles :)
✔ Soutien volontaire
✔ Aucun abonnement
✔ Paiement 100% sécurisé
🔒 Paiement sécurisé via Stripe
Ajouter un commentaire
Commentaires