Le routage dynamique est une méthode utilisée dans les réseaux informatiques pour permettre aux routeurs de découvrir automatiquement les meilleurs chemins vers les destinations. Contrairement au routage statique, où les routes sont configurées manuellement, le routage dynamique utilise des protocoles (comme RIP, OSPF ou BGP) pour échanger des informations de routage entre routeurs, s'adapter aux changements du réseau (pannes, surcharge, etc.) et optimiser le trafic en temps réel.
OSPF est un protocole de routage dynamique interne (IGP) basé sur l’algorithme de Dijkstra. Il utilise le coût comme métrique et divise le réseau en zones pour une meilleure scalabilité. Il fonctionne rapidement, converge efficacement et envoie des LSA (Link-State Advertisements) pour maintenir une vision à jour du réseau.
Router> enable
Router# configure terminal
Router(config)# router ospf 10
Router(config-router)# network 192.168.1.0 0.0.0.255 area 0
Router(config-router)# network 10.0.0.0 0.0.0.255 area 0
Router(config-router)# exit
Router(config)# exit
Il y a trois méthodes pour annoncer les réseaux locaux d'un routeur. Prenons l'exemple d'un routeur connecté directement aux deux réseaux suivants: 192.168.1.0/25 et 172.16.0.0/24, l'adresse IP de l'interface connecté au premier réseau est 192.168.1.100 et l'adresse IP de la seconde interface est 172.16.0.100.
C'est le mode qui a été utilisé dans l'exemple précédent.
Router(config)# router ospf 10
Router(config-router)# network 192.168.1.0 0.0.0.127 area 0
Router(config-router)# network 172.16.0.0 0.0.0.255 area 0
Router(config-router)# exit
Router(config)# exit
Le masque inverse du masque /25 (255.255.255.128) est (255-128=127) 0.0.0.127
R1(config)#router ospf 10
R1(config-router)#network 192.168.0.100 0.0.0.0 area 0
R1(config-router)#network 172.16.0.100 0.0.0.0 area 0
Pour cette méthode on saisit l'adresse IP des interfaces suivi de quatre 0, ça évite de calculer le masque inverse.
R1(config)#interface g0/0/0
R1(config-if)#ip ospf 10 area 0
R1(config-if)#exit
R1(config)#interface g0/0/1
R1(config-if)#ip ospf 10 area 0
Dans un réseau avec plusieurs routeurs, le routeur connecté au réseau du FAI, nommons le R1, contient la route par défaut, qui redirige tous le traffic non destiné aux réseau locaux vers l'extérieur du réseau, en général le réseau public internet.
Les autres routeurs doivent également savoir qu'il faut rediriger ce type de traffic vers le routeur R1. Pour celà R1 doit propager sa route par défaut à tous les autres routeurs.
R1(config)#router ospf 10
R1(config-router)#default-information originate
Dans un réseau OSPF, les interfaces des routeurs qui sont connectés à des hôtes ou des serveurs n'ont pas besoin d'envoyer les paquets Hello. Ces paquets sont destinés à d'autres routeurs pour établir un voisinage. Pour economiquer les ressources, on doit bloquer ces envois.
R2(config)#router ospf 10
R2(config-router)#passive-interface g0/0/1
Par défaut, l'interval Hello est de 10 secondes et l'interval Dead est 4x la valeur Hello.
Pour modifier ces valeurs :
Router(config)# interface g0/0/0
Router(config-if)# ip ospf hello-interval 20
Router(config-if)# ip ospf dead-interval 80
Pour restaurer les valeurs par défaut :
Router(config)# interface g0/0/0
Router(config-if)# no ip ospf hello-interval
Router(config-if)# no ip ospf dead-interval
La commande suivante force manuellement le coût OSPF de l'interface à 10, au lieu de laisser OSPF le calculer automatiquement selon la bande passante. Cela permet de contrôler précisément le chemin choisi par OSPF.
R1(config)#int g0/0/1
R1(config-if)#ip ospf cost 10
La commande suivante ajuste le calcul du coût OSPF en fonction d'une bande passante de référence de 10 Gbps. Cela permet d'avoir des métriques OSPF adaptées aux réseaux modernes rapides (1G, 10G, 100G), car par défaut OSPF utilise 100 Mbps comme référence, ce qui est trop faible aujourd'hui.
R1(config)#router ospf 10
R1(config-router)#auto-cost reference-bandwidth 10000
La valeur de la bande passante est en Mbps, dans cette exemple 10000 soit 10 Gbps.
Toujours modifier la bande passante de référence OSPF dans les environnements où il existe des liens supérieurs à 100 Mbps, pour que le calcul du coût soit cohérent avec la vraie capacité des liens.
La commande suivate configure le type de réseau OSPF de l'interface en point-to-point. Cela signifie que l'interface est considérée comme connectée directement à un seul autre routeur, sans passer par un réseau de type broadcast (comme Ethernet classique).
R1
R1(config)# interface GigabitEthernet 0/0/0
R1(config-if)# ip ospf network point-to-point
R2
R2(config-if)# interface GigabitEthernet 0/0/0
R2(config-if)# ip ospf network point-to-point
R1(config)# interface GigabitEthernet 0/0/0
R1(config-if)# ip ospf priority 255
R1(config-if)# end
R1#
R3(config)# interface GigabitEthernet 0/0/0
R3(config-if)# ip ospf priority 0
R3(config-if)# end
R3#
La commande ip ospf priority 255
donne à l'interface la priorité maximale pour devenir DR (Designated Router) sur un réseau OSPF de type broadcast. À l'inverse, ip ospf priority 0
interdit à l'interface de devenir DR ou BDR.
Utiliser priority 255 pour forcer un routeur à devenir DR (par exemple, un routeur principal fiable), et priority 0 pour empêcher un routeur secondaire ou non critique de participer à l’élection DR/BDR.
Router# show ip ospf neighbor
Router# show ip ospf database
Router# show ip protocols
Router# debug ip ospf
Router# debug ip interface
Deux routeurs ne peuvent pas établir de contiguïté OSPFv2 si :
• Les masques de sous-réseau ne correspondent pas, plaçant ainsi les routeurs sur des réseaux séparés.
• Les compteurs OSPFv2 Hello ou les compteurs dead timer ne correspondent pas.
• Les types de réseau OSPFv2 ne correspondent pas.
• Il y a une commande network OSPFv2 manquante ou incorrecte.