Le protocole OSPF
Découvrez OSPF, le protocole qui permet à vos routeurs de trouver seuls le meilleur chemin !
Introduction
Aujourd'hui, on découvre OSPF, le protocole qui permet à vos routeurs de trouver seuls le meilleur chemin, et de se réadapter en cas de panne. Aucune configuration compliquée : on va tout faire pas à pas.
OSPF (Open Shortest Path First) est un protocole de routage dynamique interne de type à état de liens, utilisé pour déterminer le meilleur chemin de transmission des paquets de données au sein d'un même réseau ou système autonome.
Pourquoi OSPF ?
OSPF est un protocole de routage dynamique qui permet aux routeurs de communiquer entre eux pour déterminer le meilleur chemin de transmission des paquets de données. Contrairement aux protocoles statiques, OSPF s'adapte automatiquement aux changements du réseau.
Imaginez une entreprise avec trois sites. Avec des routes statiques, chaque changement demande d'intervenir sur chaque routeur. OSPF règle ça : les routeurs discutent entre eux et construisent la carte du réseau. Trois avantages : une convergence rapide, une métrique basée sur la bande passante, et la possibilité de grandir grâce aux aires.
Les 4 notions à retenir
Quatre mots à retenir.
- Les voisins :
- les routeurs s'envoient des paquets Hello pour se découvrir.
- les LSA :
- chaque routeur décrit ses liens.
- La LSDB :
- tous les routeurs stockent la même carte.
- Enfin, l'algorithme SPF :
- chacun calcule seul son plus court chemin. Le critère, c'est le coût : plus le lien est rapide, plus son coût est faible.
Scénario : une PME, 3 routeurs
Voici notre lab : trois routeurs en triangle, chacun avec son LAN. Tout est en aire 0. Les adresses sont sur l'écran, je vous mets le tableau en description.
Fichier Packet Tracer (.pkt) : Lien OSPF vierge
| Routeur | Interface LAN | Adresse IP | Masque |
|---|---|---|---|
| R1 | LAN 1 | 192.168.1.254 | 255.255.255.0 |
| R1 | LAN 1 | 10.0.12.1 | 255.255.255.252 |
| R1 | LAN 1 | 10.0.13.1 | 255.255.255.252 |
| R2 | LAN 2 | 192.168.2.254 | 255.255.255.0 |
| R2 | LAN 2 | 10.0.12.2 | 255.255.255.252 |
| R2 | LAN 2 | 10.0.23.1 | 255.255.255.252 |
| R3 | LAN 3 | 192.168.3.254 | 255.255.255.0 |
| R3 | LAN 3 | 10.0.23.2 | 255.255.255.252 |
| R3 | LAN 3 | 10.0.13.2 | 255.255.255.252 |
Configurer R1
On vas configurer le routeur R1. On commence par les interfaces : on met les adresses IP et on active les interfaces. Ensuite, on configure OSPF.
On entre en mode OSPF avec router ospf 1. Le 1 est juste un numéro local. Ensuite le router-id : on le fixe nous-mêmes pour identifier clairement chaque routeur. Puis la commande network : attention, on utilise un masque inversé, appelé wildcard. Pour un /30, c'est 0.0.0.3. Enfin passive-interface sur le LAN : inutile d'envoyer des Hello vers des PC. Faire la même chose sur R2 et R3 en accéléré.
! ── Passer en mode privilégié ───────────
routeur> enable
routeur#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
routeur(config)#
! ── Configurer l'interfaces 0/0 ───────────
router(config)# interface FastEthernet0/0
router(config-if)# ip address 192.168.1.254 255.255.255.0
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer l'interfaces 1/0 ───────────
router(config)# interface FastEthernet1/0
router(config-if)# ip address 10.0.12.1 255.255.255.252
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer l'interfaces 1/1 ───────────
router(config)# interface FastEthernet1/1
router(config-if)# ip address 10.0.13.1 255.255.255.252
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer le protocole OSPF ───────────
router(config)# router ospf 1
router(config-router)# router-id 1.1.1.1
router(config-router)# network 10.0.12.0 0.0.0.3 area 0
router(config-router)# network 10.0.13.0 0.0.0.3 area 0
router(config-router)# network 192.168.1.0 0.0.0.255 area 0
router(config-router)# passive-interface Fa0/0
On répèteras les mêmes étapes sur R2 et R3, en changeant le router-id et les réseaux à annoncer.
Configuration R2
! ── Passer en mode privilégié ───────────
routeur> enable
routeur#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
routeur(config)#
! ── Configurer l'interfaces 0/0 ───────────
router(config)# interface FastEthernet0/0
router(config-if)# ip address 192.168.2.254 255.255.255.0
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer l'interfaces 1/0 ───────────
router(config)# interface FastEthernet1/0
router(config-if)# ip address 10.0.12.2 255.255.255.252
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer l'interfaces 1/1 ───────────
router(config)# interface FastEthernet1/1
router(config-if)# ip address 10.0.23.1 255.255.255.252
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer le protocole OSPF ───────────
router(config)# router ospf 1
router(config-router)# router-id 2.2.2.2
router(config-router)# network 10.0.12.0 0.0.0.3 area 0
router(config-router)# network 10.0.23.0 0.0.0.3 area 0
router(config-router)# network 192.168.2.0 0.0.0.255 area 0
router(config-router)# passive-interface Fa0/0
Configuration R3
! ── Passer en mode privilégié ───────────
routeur> enable
routeur#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
routeur(config)#
! ── Configurer l'interfaces 0/0 ───────────
router(config)# interface FastEthernet0/0
router(config-if)# ip address 192.168.3.254 255.255.255.0
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer l'interfaces 1/0 ───────────
router(config)# interface FastEthernet1/0
router(config-if)# ip address 10.0.13.2 255.255.255.252
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer l'interfaces 1/1 ───────────
router(config)# interface FastEthernet1/1
router(config-if)# ip address 10.0.23.2 255.255.255.252
router(config-if)# no shutdown
router(config-if)# exit
! ── Configurer le protocole OSPF ───────────
router(config)# router ospf 1
router(config-router)# router-id 3.3.3.3
router(config-router)# network 10.0.13.0 0.0.0.3 area 0
router(config-router)# network 10.0.23.0 0.0.0.3 area 0
router(config-router)# network 192.168.3.0 0.0.0.255 area 0
router(config-router)# passive-interface Fa0/0
Vérification
On peut vérifier les voisins OSPF avec la commande show ip ospf neighbor et on vas voir les routes OSPF apparaître avec la commande show ip route ospf : les routes précédées d'un O sont apprises par OSPF. Et maintenant, un ping de PC1 vers PC3. Ça passe. Si ça ne marche pas : vérifier aire, masque, interface active.
Scénario : panne d'un lien
On coupe le lien entre R1 et R2. On vérifie les voisins OSPF : R1 et R2 ne se voient plus. Mais R3 est toujours là. On vérifie les routes OSPF : la route vers le LAN 2 est toujours là, mais elle passe par R3. Et le ping de PC1 vers PC2 fonctionne toujours ! C'est la force d'OSPF.
Conclusion
À retenir : OSPF échange des liens, chaque routeur calcule son chemin, et la re convergence est automatique. OSPF est un protocole de routage dynamique interne à état de liens, qui permet aux routeurs de déterminer le meilleur chemin pour transmettre les paquets de données au sein d'un réseau ou système autonome. Il est basé sur l'algorithme SPF et utilise des concepts tels que les voisins, les LSA et la LSDB pour construire une carte du réseau et s'adapter aux changements.