Protocole OSPF

Prérequis


– Routage statique
– Routage dynamique

Sujets traités :

– IGP / EGP
– Classless / Classful
– Link State / Distance Vector

 

Présentation


Vous avez une dizaine de routeurs et vous avez un peu la flemme de rentrer toutes vos routes statiques à la main ?

– Vous vous tournez vers un protocole de routage dynamique !

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.

Comment le configurer ?

Configuration


Activation du protocole OSPF


R1(config)# router ospf X

X = Numéro de processus OSPF. Ce numéro n’a aucune importance, mettez ce que vous voulez.

Le protocole OSPF est activé ! Mais il est complètement aveugle pour le moment. Il ne sait pas :

– Quel réseau activé
– À quel routeur diffuser les informations qu’il connaît

Le routeur OSPF ne connaît personne pour le moment

Le routeur OSPF ne connaît personne pour le moment

 

Donner une identité à notre routeur OSPF


Notre routeur va bientôt échanger avec d’autres routeurs OSPF.

Avant toute chose, il est primordial de lui donner un nom, une identité.

Cette identité va s’appeler le Router-ID

R1(config)# router ospf 1
R1(config-router)# router-id 10.10.10.1

Déclarer des réseaux dans OSPF


Notre routeur a 4 réseaux qui lui sont directement connectés :

– 192.168.1.0 /24
– 2.2.2.0 /24
– 3.3.3.0 /24
– 4.4.4.0 /24

Du coup on va le dire à notre protocole OSPF :

R1(config)# router ospf 1
R1(config-router)# network 192.168.1.0 0.0.0.255 area 0
R1(config-router)# network 2.2.2.0 0.0.0.255 area 0
R1(config-router)# network 3.3.3.0 0.0.0.255 area 0
R1(config-router)# network 4.4.4.0 0.0.0.255 area 0

La commande network permet de :

– Déclarer ce réseau aux autres routeurs OSPF.
– Chercher d’autre routeur OSPF dans ce réseau.

0.0.0.255 c’est quoi ?

– Afin de déclarer un réseau, le protocole OSPF s’attend à recevoir un masque de type Wildcard-mask (masque inversé).

area 0 c’est quoi ?

– Le protocole OSPF travaille en groupe de travail appelé area. Notre routeur est donc dans l’aire 0.
– L’aire 0 est l’aire principale pour OSPF. Donc mettez tout le temps vos routeurs dans l’aire 0 quand vous commencez à créer une bulle OSPF. (Pour plus de détail, allez voir l’article dédié aux aires OSPF).

Le routeur R1 à trouvé les routeurs R2, R3 et R4 via la commande network

Le routeur R1 à trouvé les routeurs R2, R3 et R4 via la commande network

 

R1 a découvert des routeurs OSPF sur les réseaux :

– 2.2.2.0 /24
– 3.3.3.0 /24
– 4.4.4.0 /24

Il va donc pouvoir envoyer et recevoir des informations de routages avec eux.

Sur le réseau 192.168.1.0 /24, le routeur R1 n’a trouver personne. Ce qui est normal vu que c’est un réseau client.
Nous allons donc dire à R1 de ne pas chercher de routeurs sur ce réseau.

R1(config)# router ospf 1
R1(config-if)# passive-interface FastEthernet 0/0

On fait le point


R1(config)# router ospf 1
R1(config-router)# router-id 10.10.10.1
R1(config-router)# network 192.168.1.0 0.0.0.255 area 0
R1(config-router)# network 2.2.2.0 0.0.0.255 area 0
R1(config-router)# network 3.3.3.0 0.0.0.255 area 0
R1(config-router)# network 4.4.4.0 0.0.0.255 area 0
R1(config-router)# passive-interface FastEthernet 0/0

 

Vérification


Afficher la liste des routeurs OSPF voisins


Le protocole OSPF va mettre dans une Table tous les voisins qu’il connaît. Cette table est appelée Neighbor Table.

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 avoir plus d’information sur :

– Comment deux routeurs deviennent voisins.
– Quelles sont les conditions à respecter pour devenir voisin.
– Comment OSPF fais pour savoir si un voisin est toujours en ligne et disponible.

Allez voir l’article consacré à la Neighbor >>>>>> ICI

 

Afficher les informations apprissent par OSPF


Nous avons vu les voisins de notre routeur R1.
Mais où va-t-il mettre les informations qu’il a apprises de ces voisins ?

– Dans la LSDB (Link State DataBase)

Pour faire une belle image, OSPF met toutes les informations qu’il reçoit dans une Bibliothèque.
Les informations reçues s’appellent des LSA (Link State Advertisment).

Pour résumer :

LSA = Livre
LSDB = Bibliothèque

Afin de voir le contenu de la bibliothèque et la couverture de nos livres, nous allons utiliser la commande suivante :

R1# show ip ospf database 
            OSPF Router with ID (10.10.10.1) (Process ID 1)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
10.10.10.2      10.10.10.2      200         0x80000003 0x00dea8 2
10.10.10.3      10.10.10.3      163         0x80000003 0x005c22 2
10.10.10.1      10.10.10.1      135         0x80000007 0x0078c0 4
10.10.10.4      10.10.10.4      135         0x80000003 0x00d99b 2

                Net Link States (Area 0)
Link ID         ADV Router      Age         Seq#       Checksum
2.2.2.1         10.10.10.1      200         0x80000001 0x00d620
3.3.3.1         10.10.10.1      163         0x80000002 0x00b53c
4.4.4.1         10.10.10.1      135         0x80000003 0x009557

Si vous voulez plus d’informations concernant :

– La Link State Database
– Les différents types de Link State Advertisment ( 11 types )

Allez voir l’article consacré à la Link State DataBase >>>>>> ICI

Afficher la Table de routage


La table de routage nous permet de voir ce que OSPF a appris comme réseau et par quel côté il a préféré passer pour joindre ce dernier.

R1# show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

     2.0.0.0/24 is subnetted, 1 subnets
C       2.2.2.0 is directly connected, FastEthernet0/2
     3.0.0.0/24 is subnetted, 1 subnets
C       3.3.3.0 is directly connected, FastEthernet0/3
     4.0.0.0/24 is subnetted, 1 subnets
C       4.4.4.0 is directly connected, FastEthernet0/4
C    192.168.1.0/24 is directly connected, FastEthernet0/1
O    192.168.2.0/24 [110/2] via 2.2.2.2, 00:01:53, FastEthernet0/2
O    192.168.3.0/24 [110/2] via 3.3.3.2, 00:01:15, FastEthernet0/3
O    192.168.4.0/24 [110/2] via 4.4.4.2, 00:00:47, FastEthernet0/4

Nous pouvons voir dans la table de routage que R1 a découvert 3 réseaux :

– 192.168.2.0 /24
– 192.168.3.0 /24
– 192.168.4.0 /24

La lettre O nous informe que ces réseaux ont été appris via le protocole OSPF.

Découverte de nouveau réseau via OSPF

Découverte de nouveau réseau via OSPF

Vous voulez savoir à quoi correspondent les informations ci-dessous ?

O E1
O E2
O IA
[110/2]

Allez sur l’article dédié sur la table de routage OSPF >>>>>> ICI

 

Comment OSPF choisit le meilleur chemin


 

Calcul du Metric 


Maintenant que notre routeur est rentré dans la bulle OSPF. Il va utiliser les informations présentes dans sa LSDB afin d’en conclure sa table de routage. Afin de trouver le meilleur chemin vers ses destinataires, il va exécuter l’Algorithme de Dijkstra.

Afin d’exécuter son algorithme, il va définir un metric  pour chacune de ses liaisons avec la formule suivante :

 

100 / Débit

Un chemin avec un faible metric sera privilégié

 

Exemples


Exemple 1

Exemple 1

Dans cet exemple, Le meilleur Metric a partir de R1 pour joindre le réseau 20.0.0.0/24 est de passer par R2 et R3.

R1 aura un metric de 3 pour joindre le réseau 20.0.0.0/24 via R2


Exemple 2

Exemple 2

R1 aura un metric de 4 pour joindre le réseau 20.0.0.0/24 via R11


Load-Balancing

Load-Balancing

R1 aura un metric de 4 pour joindre le réseau 20.0.0.0/24 via R11
R1 aura un metric de 4 pour joindre le réseau 20.0.0.0/24 via R12


Le metric défini ci-dessus est celui par défaut, nous pouvons le changer avec la commande:

R1(config)# interface fastethernet X/X
R1(config-if)# ip ospf cost XX

Cette commande peut nous servir à forcer OSPF à choisir le chemin que l’on veut ou à faire de l’équilibrage de charge. (si deux chemins ont un metric égal).

ip ospf cost 100

Coût d’une liaison = Bandwidth Référence / Bandwidth de l’interface.
La Bandwidth de référence est égale à 100 par défaut.
Donc les interfaces FastEthernet et GigabitEthernet ou un coût égal à 1.
La commande ip ospf cost 100 indique que notre interface FastEthernet 0/0 aura dorénavant un coût à 100.

auto-cost reference bandwidth 1000

Coût d’une liaison = Bandwidth Référence / Bandwidth de l’interface.
La Bandwidth de référence est égale à 100 par défaut.
La commande auto-cost reference bandwidth fixe à 1000 la nouvelle référence.

Noël NICOLAS

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

6
Poster un Commentaire

Laisser un commentaire

  Subscribe  
plus récents plus anciens plus de votes
Me notifier des
Lebailly François
Invité
Lebailly François

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

kayoumt
Invité
kayoumt

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.

Hacen BANI
Invité
Hacen BANI

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