Finger in the net

Blog d'administration réseau

Le protocole OSPF : Présentation et configuration

Vous ne savez pas lequel choisir entre RIP, EIGRP et OSPF ?

  • RIP = Trop vieux.
  • EIGRP = propriétaire CISCO.
  • OSPF = Protocole normalisé et tout le monde n’a que ce protocole en bouche.

Donc vous vous tournez vers le protocole OSPF … Parfait ! On va justement en parler maintenant !

Le but d’un protocole de routage c’est que tous les routeurs annoncent les réseaux qu’ils connaissent !

OSPF = Open Shortest Path First

Shortest Path First = Algorithme qui permet de calculer le chemin le plus court vers toutes les destinations via le nombre de sauts et le coût des liaisons.

OSPF :

  • Protocole de routage dynamique.
  • Défini dans la RFC 2328 (Protocole non-propriétaire).
  • Protocole IGP.
  • Protocole Classless.
  • IP protocol type 89.
  • Envoie instantanément les mises à jour de routage.
  • Choisis l’itinéraire à prendre en fonction de la bande passante. (metric)
  • Présence d’Authentification.
CHAPITRE 1 :

La table de voisinage

Présentation

Le protocole OSPF est un protocole de routage dynamique. De ce fait, il va récupérer des informations de routage de ces voisins afin de choisir la meilleure route. Avant de récupérer des informations de ces voisins, il a besoin de les identifier.

Notre routeur va donc créer une “table de voisinage” afin de recenser ces collègues de travail. Cette table s’appelle “Neighbors table” et se visualise grâce à la commande suivante :

R1# show ip ospf neighbor

Neighbor ID     Pri    State      Dead Time    Address     Interface
10.10.10.2      1      FULL/DR    00:00:39     1.1.1.2     FastEthernet0/2
10.10.10.3      1      FULL/DR    00:00:39     2.2.2.2     FastEthernet0/3
10.10.10.4      1      FULL/DR    00:00:39     3.3.3.2     FastEthernet0/4

Les chapitres ci-dessous répondront aux questions suivantes :

  • C’est quoi les Address ?
  • C’est quoi la Priorité ? (Pri)
  • Quelles sont les différentes relations de voisinage ? (State FULL )
  • Que signifie DR ? (State DR)
  • C’est quoi le Dead Time ? (Paquet Hello)

IDENTITÉ DE MON ROUTEUR :
Le Router-ID

Neighbor ID

Router-ID = Adresse IP de notre routeur OSPF.

Notre routeur a besoin d’une identité afin de se présenter à d’autres routeurs. Cette identité s’appelle le Router-ID.

Un Router-Id est une adresse IP.

Le Router-ID est défini comme suit :

  • Priorité 1 : le router ID renseigné dans le processus OSPF.
  • Priorité 2 : l’adresse IP la plus élevée configurée sur une interface loopback.
  • Priorité 3 : l’adresse IP la plus élevée configurée sur une interface physique.

Cette adresse IP permet de pouvoir être identifié par les routeurs OSPF voisins.

Le Router-ID de nos voisins est appelé : Neighbor-ID

CONSEIL : La première étape de la configuration du protocole OSPF est de définir un Router-ID. Ceci vous facilitera grandement la vie croyez-moi 😉

MOYEN DE COMMUNICATION :
Les paquets HELLO

Une fois le protocole OSPF configuré, ce dernier va partir à la recherche de voisins. Pour se faire, il utilise des paquets appelés “Hello”. 

L’envoi d’un paquet “Hello” :

  • Se font toutes les 10 secondes par défaut (on parle de “hello interval”).
  • Permets de s’annoncer à ses voisins.
  • Est envoyé sur l’adresse multicast 224.0.0.5 (224.0.0.6 pour les DR).

La réception d’un paquet “Hello” :

  • Permets de vérifier la disponibilité de ses voisins.
  • Remets à zéro le compteur “Dead-interval”.
  • Est envoyé sur l’adresse multicast 224.0.0.5 (224.0.0.6 pour les DR).

Il existe deux intervalles de temps :

  • Hello interval = Intervalle de temps entre deux envoi de paquet hello
  • Dead-interval = À partir de quand je considère mon voisin “hors ligne”

 

DEVENIR VOISIN :
Les conditions

Un neighbor (voisin) est une relation entre deux routeurs OSPF.

Ils vont tous les deux s’envoyer des paquets “Hello” (“Bonjour”) afin de se présenter.

Conditions pour devenir neighbor (voisin) :

  • OSPF – Authentification identique
  • OSPF – MTU identique
  • OSPF – Aire OSPF identique
  • OSPF – Appartenir à un même type d’aire OSPF (Regular/Stub/NSSA)
  • OSPF – Hello interval + Dead Timer identique
  • OSPF – Appartenir à un même réseau
  • OSPF – Router-ID unique
Conditions pour devenir Neighbor (Voisin)
Conditions pour devenir neighbor (voisin)

 

LES RELATIONS ENTRE VOISIN :
States

Avant de devenir les meilleurs amis du monde, nos deux routeurs vont passer par plusieurs états. Pourquoi ? Car ils doivent faire connaissance, s’échanger des informations, élire un chef d’orchestre et mettre à jour leurs tables LSDB. À la fin de ce processus, l’état de voisinage passera enfin en FULL.

Il existe 8 états :

  • Down = Le dead-interval est venu à son terme.
  • Attempt = Le neighbor a été rentré manuellement, il envoie donc ses paquets Hello en unicast, mais ne reçoit pas de réponse.
  • Init = Notre routeur a reçu un paquet Hello d’un autre routeur, mais il n’est pas encore sûr que ce dernier le voit.
  • 2-ways = Notre routeur a reçu un paquet Hello d’un autre routeur. Nos deux routeurs se voient.
  • Ex-start = Élection du slave et master (router-ID le plus haut).
  • Echange = Nos deux routeurs s’échangent le sommaire de leurs link state database (LSDB).
  • Loading = Nos deux routeurs s’échangent les LSA manquantes.
  • Full = Les LSDB de nos deux routeurs sont identiques et à jour.

Afin de migrer d’un état à l’autre, le protocole OSPF utilise ce type de message :

  • Hello = Découvrir le réseau, se construire des nouvelles relations de voisins et s’assurer de leurs disponibilités.
  • DataBase Description (DBD ou DD) = Sommaire de la LSDB (Link State DataBase).
  • Link State Request (LSR)  = Demande à son voisin des LSA spécifiques.
  • Link State Update (LSU) = Envoi des LSA demandées.
  • Link State Acknowledge (LSAck) = Accusé de récéption.
 
OSPF States
OSPF States

Voilà le résultat dans notre table de voisinage : 

R1# show ip ospf neighbor

Neighbor ID     Pri    State      Dead Time    Address     Interface
10.10.10.2      1      FULL/DR    00:00:39     1.1.1.2     FastEthernet0/2
10.10.10.3      1      FULL/DR    00:00:39     2.2.2.2     FastEthernet0/3
10.10.10.4      1      FULL/DR    00:00:39     3.3.3.2     FastEthernet0/4

Pour aller plus loin

PARTIE I : PRÉSENTATION


Important : Concerne uniquement les réseaux broadcast et non-broadcast (NBMA)

Rappel : “Un Neighbor (Voisin) est une relation entre deux routeurs qui sont directement reliés entre eux et qui appartiennent à un même réseau.”

Imaginons le cas de figure suivant :

Architecture de base
Architecture de base

Tous les routeurs présents sur cette architecture vont devenir Neighbor.

Ils vont donc s’échanger des packets Hello , des LSA , ect … Ce qui représente un trafic OSPF énorme !

Trafic énorme !
Trafic énorme !

La Solution ? Il faut que nos routeurs élisent un “chef d’orchestre ” comme ça chaque routeur va envoyer ses mises à jour uniquement à ce dernier. Celui-ci aura la charge de remettre les mises à jours aux autres routeurs. Ce rôle s’appelle le DR (Designated Router)

DR (Designated Router)
DR (Designated Router)

Si ce routeur vient à tomber , il faut quelqu’un qui soit prêt à le remplacer , ce routeur s’appellera le BDR (Backup Designated Router).

BDR (Backup Designated Router).
BDR (Backup Designated Router).

Les rôles DR et BDR seront mis en place uniquement si nos routeurs sont liés entre eux via un équipement de niveau 2 et qui partagent une même plage d’adresse IP.

Si notre réseau OSPF est uniquement en point à point. Il n’y aura pas de rôle DR et BDR.

PARTIE II : ELECTION DU DR ET BDR


Qui va être élus DR et BDR ?
Celui qui a :
 
  • La priorité la plus haute (compris entre 0 et 255 / 0 = ignoré / 1 par défaut )
    Si tout le monde a la même priorité :
  • Le Router-ID le plus élevé

Nous distinguons 3 types de routeurs :

  • DR = Chef d’orchestre
  • BDR = Chef d’orchestre adjoint
  • DROTHER = Membre de l’orchestre
Élection du DR et BDR
Élection du DR et BDR

R1 (Priority = 1 / RID = 1.1.1.1) = DROTHER
R2 (Priority = 1 / RID = 2.2.2.2) = DROTHER
R3 (Priority = 1 / RID = 3.3.3.3) = BDR
R4 (Priority = 1 / RID = 4.4.4.4) = DR

Jouons un peu sur les priorités voir ce qu’il se passe 🙂

R1(config)# interface range FastEthernet 0/0 - 2
R1(config-if)# ip ospf priority 200

R3(config)# interface FastEthernet 0/0 - 2
R3(config-if)# ip ospf priority 100
Élection du DR et BDR
Élection du DR et BDR

Ce qui nous donne :

R1 (Priority = 200 / RID = 1.1.1.1) = DR
R2 (Priority = 1 / RID = 2.2.2.2) = DROTHER
R3 (Priority = 100 / RID = 3.3.3.3) = BDR
R4 (Priority = 1 / RID = 4.4.4.4) = DROTHER

 

PARTIE III : LES ECHANGES


2-WAY :

  • Échanges de paquets “Hello” afin de maintenir les relations de voisins

FULL :

  • Échanges de paquets “Hello” afin de maintenir les relations de voisins
  • Nos LSDB sont synchronisés
  • Nos deux routeurs vont se tenir au courant des mises à jour éventuel en termes de réseaux

Type de relation :

  • Entre DR et BDR = FULL
  • Entre DR et DROTHER = FULL
  • Entre BDR et DROTHER = FULL
  • Entre DROTHER et DROTHER = 2- WAY
Echanges OSPF
Échanges OSPF

 

Présentation


  • Broadcast (Ethernet)
  • Point-to-point (Serial/Tunnel)
  • Loopback
  • NonBroadcast (ATM/Frame Relay)
  • Point-to-Multipoint
  • Point-to-Multipoint nonbroadcast (NBMA)

Broadcast


  • Découverte automatique de Neighbor
  • Hello Interval = 10s / Dead Interval = 40s
  • Election de DR / BDR

Point-to-Point


  • Découverte automatique des Neighbor.
  • Pas d’éléction DR et BDR vu que c’est une liaison point à point.
  • Une adresse réseau par liens.

Non-Broadcast


  • Election de DR et BDR.
  • Configuration manuel des Neighbors

Point-to-Multipoint


  • Découverte automatique des Neighbors.
  • Pas d’élection DR et BDR vu que c’est une multitude de liaisons point à point.
  • Une seule plage d’adresse IP pour toute la liaison Point-MultiPoint
  • Si c’est un support Frame-Relay, assurez vous que le broadcast soit activé.

Point-to-Multipoint Non-Broadcast


  • Pas d’élection DR et BDR vu que c’est une multitude de liaisons point à point.
  • Configuration manuel des Neighbors.
  • Une seule plage d’adresse IP pour toute la liaison Point-MultiPoint.

Broadcast ou point à point :

  • Hello interval = 10s
  • Dead-interval = 40s (4×10)

NonBroadcast ou point multipoint :

  • Hello interval = 30s
  • Dead-interval = 120s (4×30)
CHAPITRE 2 :

LA Link State DataBase (LSDB)

Le protocole OSPF : Présentation et configuration 1

CHAPITRE 3 :

La table de routage

Le protocole OSPF : Présentation et configuration 1

CHAPITRE 4 :

Les aires OSPF

Le protocole OSPF : Présentation et configuration 1

CHAPITRE 5 :

Comment OSPF choisit le meilleur chemin

Le protocole OSPF : Présentation et configuration 1

CHAPITRE 6 :

Le LSA Filtering

Le protocole OSPF : Présentation et configuration 1

CHAPITRE 7 :

Configuration

Le protocole OSPF : Présentation et configuration 1

CHAPITRE 8 :

Vérification

Le protocole OSPF : Présentation et configuration 1

Noël NICOLAS

Expert Réseau
11 ans d’expérience
CCNP Routing and Switching
Fondateur du site FingerInTheNet

Comments (10)

Bonjour ,

Je suis occupé a étudier pour passer la certification CCNA .
Je trouve votre site particulièrement bien fait , il m’as permis de mieux comprendre certain fonctionnement et principe .
Domage que beaucoup de liens image ne sont plus accessible .

Bien à vous

Bonjour Francois.

Je suis ravi que mon site vous plaise.
Quels sont les articles possédant des liens images mort ??

J’ai migrer d’hébergeur il n’y as pas longtemps et il y a eu pas mal de problèmes …

Je suis vraiment désolé pour la gêne occasionné

Félicitations ! Je voulais juste rappeler que le Router-ID est choisi de façon automatique, s’il n’y en a pas un de configuré de façon explicite.

bonjour,

Je suis occupé à préparer la certification CCNP route
J’ai étudié par votre site EIGRP et maintenant OSPF et je trouve que vous explique très bien dans vos articles.

Merci
Félicitation Noël

Bonjour

Je trouve l’article vraiment très bien, et super clair et en plus en Français.
Je pense qu’il y a une erreur, je prépare le ccie et j’aimerai bien avoir votre avis.
Sur l aire NSSA, les lsa qui circulent pour moi sont les 1,2,3,4 et 7 (et non 5) d’ailleurs les lsa 7 sont transformés en 5 lorsqu’elles rejoignent l’aire 0.
J’ai noté quelques petits points si vous voulez nous pouvons en débattre. Ceci étant ma remarque n’enlève en rien la qualité du travail. D’ailleurs j’aime beaucoup votre analogie bibliotheque /livre.

Merci

Bonjour Abermond,

Je dois refaire et relire l’article OSPF et EIGRP dans les semaines à venir.
Merci beaucoup pour votre retour. Je vais me pencher sur la question et je vous fait un retour au plus vite.

Si vous avez une source fiable à me transmettre, je suis preneur 🙂

Bonne journée à vous.
Amicalement
Noël

Bonjour,

J’ai pas encore lu votre cours EIGRP,
Les 2 livres que je lis actuellement sont Stup ccie tricks de Johnny bass et CCNP and CCIE enterprise Core (official cert Guide). Vous verrez vous avez une différence sur les LSA sur les area stub (avec Johny Bass )et j’avoue que je rajouterai aussi le fait que si il existe plusieurs routeurs dans une area stub, tous les routeurs doivent être configurés. C’est un détail mais j’avoue que preparant le CCIE je suis un peu sur ce genre de détail.
Sinon je vous le redis, votre article est vraiment très bien et j’aurai adoré le lire au moment de passer mon ccnp, il m’aurait éclairé beaucoup sur les lsa/lsbd/lsu etc

Continuez ainsi c’est super

Merci

Merci beaucoup pour ton retour.

Je vais me documenter un peu plus en détail. Je pense qu’il est primordiale d’être minutieux et je te remercie encore pour ton retour.

Si tu vois d’autre point à retravailler sur d’autres articles, je suis preneur 😉

Bonne journée à toi !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

trois × trois =