Objectifs de certification

CCNA 200-301

  • 3.4 Configurer et vérifier single area OSPFv2

    • 3.4.a Neighbor adjacencies
    • 3.4.b Point-to-point
    • 3.4.c Broadcast (DR/BDR selection)
    • 3.4.d Router ID

Introduction au protocole de routage dynamique OSPF

1. Introduction à OSPF

1.1 Protocole de routage à état de lien

Un protocole de routage à état de lien utilise un algorithme (plus) efficace (autre que RIP, comme “Dijkstra” ou “Shortest Path First”). Les routeurs collectent l’ensemble des coûts des liens et construisent de leur point de vue l’arbre de tous les chemins possibles. Les meilleures routes sont alors intégrées à la table de routage.

  • On parlera de routage hiérarchique (à deux niveaux).
  • On citera OSPF et IS-IS.
  • Ils convergent très rapidement.
  • Les routeurs entretiennent des relations de voisinage maintenues.

1.2. Protocole à vecteur de distance

Un protocole de routage à vecteur de distance est celui qui utilise un algorithme de routage qui additionne les distances pour trouver les meilleures routes (Bellman-Ford).

  • Les routeurs envoient l’entièreté de leur table de routage aux voisins.
  • Ces protocoles sont sensibles aux boucles de routage.
  • Dans ce type de protocole, aucun routeur ne remplit de fonction particulière. On parlera de connaissance “plate” de l’inter-réseau ou de routage non-hiérarchique.
  • Ils convergent lentement.

On citera RIP et IGRP (propriétaire obsolète) comme étant représentatifs. EIGRP est aussi un protocole à vecteur de distance avancé entièrement optimisé par Cisco Systems qui ne présente pas ces désavantages.

1.3. Distances administratives (par défaut)

La distance administrative est le poids administratif d’une route apprise par un protocole de routage. Une distance administrative faible donne la préférence pour une route apprise quelle que soit la méthode de routage. Les distances administratives ont une valeur par défaut. Une route EIGRP sera préférée à une route RIP. Par défaut, une route statique sera préférée à toute autre route dynamique.

Méthode de routageDistance administrative
Réseau connecté0
Route statique1
Ext-BGP20
Int-EIGRP90
OSPF110
IS-IS115
RIP120
Int-BGP200
Inconnu255

1.4. Comparatif protocoles de routage

Vecteur de distanceEtat de lien
Algorithme Bellman-Ford (RIP)Algorithme Dijkstra (OSPF)
Facile à configurerCompétences requises
Partage des tables de routagePartage des liaisons
Réseaux platsRéseaux conçus (design) organisés en areas
Convergence plus lenteConvergence rapide, répartition de charge
Topologies limitéesTopologies complexes et larges
Gourmand en bande passanteRelativement discret
Peu consommateur en RAM et CPUGourmand en RAM et CPU
Mises à jour régulière en Broadcast/MulticastMises à jour immédiate
Pas de signalisationSignalisation fiable et en mode connecté
RIPv1 - UDP520 - 255.255.255.255, RIPv2 - UDP520 - 224.0.0.9, EIGRP - Cisco Systems (DUAL)- 224.0.0.10 - FF02::AOSPFv2/v3 - IP89 - 224.0.0.5, 224.0.0.6, FF02::5, FF02::6, IS-IS

1.5. OSPF (Open Shortest Path First)

Le protocole OSPF (Open Shortest Path First) a été développé par l’IETF pour répondre au besoin d’un protocole de routage intérieur (IGP, “Internal Gateway Protocol”) dans la pile des protocoles TCP/IP, non-propriétaire et hautement fonctionnel.

Les discussions sur la création d’un IGP commun et inter-opérable pour l’Internet commencèrent en 1987.

La version actuelle d’OSPFv2 est décrite dans le RFC 2328 (1998). Une version 3 est définie dans le RFC 5340 qui permet l’utilisation de OSPF dans un réseau IPv6 (2008) et même d’embarquer des routes IPv4.

Son principal concurrent sur les infrastructures homogènes d’entreprises est EIGRP, propriétaire Cisco.

OSPF est un protocole de routage à états de liens.

1.6. Comparatif OSPF/RIP

En OSPF, il n’y a pas de limite du nombre de sauts comme en RIP. OSPF étant un protocole de routage à état de lien, chaque routeur possède une connaissance complète des réseaux au sein d’une zone (area). Aussi, le danger des boucles de routage n’étant a priori plus présent, la limite du nombre de sauts n’est plus nécessaire.

L’utilisation intelligente du “VLSM” (masques à longueur variable) améliore les plans d’adressage (allocations d’adresses IP). OSPF supporte aussi l’agrégation et la “summarization” de routes.

Il utilise le Multicast pour envoyer ses mises à jour d’état de lien. Aussi, ces mises à jour sont envoyées uniquement lors d’un changement de topologie. On économise la bande passante. Les mises à jour sont seulement incrémentielles et opportunes.

OSPF offre une meilleure convergence que RIP parce que les changements de routage sont propagés instantanément et (non périodiquement) de manière incrémentielle grâce aux relations de voisinage entretenues.

OSPF est meilleur pour la répartition de charge (load balancing). Le choix du meilleur chemin est basé sur le coût (la bande passante inversée). Cette métrique peut être définie manuellement sur les interfaces.

OSPF permet une définition logique des réseaux où les routeurs peuvent être répartis en zones (area). Cette fonctionnalité empêche une explosion de mises à jour d’états de lien sur l’ensemble du réseau. C’est aussi au niveau des zones que l’on peut agréger les routes et stopper la propagation inutile des informations de sous-réseaux existants.

OSPF autorise l’authentification des informations de routage par l’utilisation de différentes méthodes d’identification avec mots de passe.

Il permet le transfert et l’étiquetage des routes extérieures injectées dans un Système Autonome (AS) pour permettre de les maintenir par des “EGPs” comme BGP.

1.7. Les éléments clés de OSPF

Les routeurs OSPF entretiennent une relation orientée connexion avec les routeurs d’un même segment physique. Dans la terminologie OSPF, on parlera d’adjacency, en français, d’adjacence ou de contiguïté.

Au lieu d’envoyer des mises à jour entières lors d’un changement topologique, OSPF envoie des mises à jour incrémentielles.

OSPF n’est pas limité par une segmentation dépendante de l’adressage IP ou des sous-réseaux, il utilise la notion d’area (zone) pour désigner un groupe de routeurs.

OSPF supporte entièrement les possibilités du “VLSM” et de la “summarization” manuelle des routes.

Grâce à la possibilité de donner des rôles particuliers aux routeurs, la communication “inter-area/inter-routeurs” est efficace.

Bien que OSPF permette une communication “inter-area”, il reste un protocole de routage intérieur (IGP).

OSPF est un protocole à état de lien.

  • Nous pouvons penser qu’un lien est l’interface d’un routeur.

  • L’état d’un lien est une description de cette interface et de la relation qu’elle entretient avec ses routeurs voisins.

  • Une description de cette interface pourrait comprendre, par exemple, son adresse IP, le masque, le type de réseau connecté, les routeurs connectés, etc.

L’ensemble de ces états de liens forme la link-state database. La link-state database ou topology table, est identique sur tous les routeurs d’une area (zone).

1.9. Exemple d’état de lien OSPF

Un Link State Advertisement (LSA) est l’information de routage échangée par les routeurs dans des messages Link State Update (LSU).

LSA OSPF

1.10. Support d’IPv6 : OSPFv3

OSPFv2 et OSPFv3 ont des messages, un algorithme et un fonctionnement très proches.

Parmi d’autres, on notera au moins deux différences entre OSPFv2 et OSPFv3. En OSPFv3 :

  • Des messages renommés et nouveaux
  • Deux approches de configuration OSPFv3 sous Cisco IOS :
    • Une configuration traditionnelle (uniquement IPv6)
    • L’approche par address-family (supportant le transport en IPv6 des routes IPv4 et des routes IPv6)

2. Zone OSPF

2.1. “Area” ou zone OSPF

Une caractéristique principale d’OSPF est de supporter des interréseaux très larges grâce au regroupement des routeurs dans des entités logiques appelées areas ou zones.

La communication inter-areas ne laisse passer que les échanges d’information minimale de routage dans le seul objectif de connecter les zones entre elles.

Il en résulte que les efforts de calcul de routes ne s’opèrent qu’au sein d’une même zone.

Les routeurs d’une zone ne sont pas affectés (en calcul) par les changements intervenus dans une autre zone.

Dans un contexte où OSPF demande beaucoup de ressources en CPU et en mémoire, cette notion de conception est très importante.

2.2. Opérations et rôles OSPF

Un routeur OSPF peut prendre en charge trois types d’opérations :

  1. opérations dans une zone,
  2. connexions inter-zones
  3. et connexions avec d’autres systèmes autonomes (AS).

Un routeur OSPF remplit un rôle et une responsabilité particulière qui dépend de la hiérarchie OSPF établie :

  1. Internal Router (IR)
  2. Backbone Router (BR)
  3. Area Border Router (ABR)
  4. Autonomous System Boundary Router (ASBR)
IR BR ABR ASBR OSPF

OSPF Internal Router (IR)

Un IR remplit des fonctions au sein d’une zone (area) uniquement, autre que la zone Backbone.

Sa fonction primordiale est d’entretenir à jour avec tous les réseaux de sa zone (area) sa base de données d’états de lien (link-state database) qui est identique sur chaque IR.

Il renvoie toute information aux autres routeurs de sa zone (area), le routage ou L’inondation (flooding) des autres zones requiert L’intervention d’un Area Border Router (ABR).

OSPF Backbone Router (BR)

Une des règles de conception OSPF est que chaque zone (area) dans l’interréseau doit être connectée à une seule zone, la zone 0 ou la backbone area.

Les BR ont une interface connectée à la backbone area.

OSPF Area Border Router (ABR)

Un ABR connecte au moins deux zones (area) dont l’area 0.

Un ABR possède autant de bases de données d’états de lien qu’il y a d’interfaces connectées à des zones différentes.

Chacune de ces bases de données contient la topologie entière de la zone connectée et peut donc être “summarizée”, c’est-à-dire agrégée en une seule route IP.

Ces informations peuvent être transmises à la zone de backbone pour la distribution.

Un élément clé est qu’un ABR est l’endroit où l’agrégation doit être configurée pour réduire la taille des mises à jour de routage qui doivent être envoyées ailleurs.

Donc quand on parle des capacités de OSPF de minimiser les mises à jour de routage, on peut directement penser au rôle rempli par les ABR.

OSPF Autonomous System Boundary Router (ASBR)

OSPF est un IGP (Interior Gateway Protocol), autrement dit il devra être connecté au reste de l’Internet par d’autres AS.

Ce type de routeur fera en quelque sorte office de passerelle vers un ou plusieurs AS. L’échange d’information entre un AS OSPF et d’autres AS est le rôle d’un ASBR.

Les informations qu’il reçoit de l’extérieur seront redistribuées au sein de l’AS OSPF.

2.3. Fonctionnement dans une zone

  1. Pour chaque zone (area) une table d’états de lien est construite et maintenue.

  2. La table de routage est construite à partir de cette base de données.

  3. Ce résultat est obtenu grâce à l’application de l’algorithme de routage SPF.

Étape 1 : Découverte des voisins

D’abord, l’interface d’un routeur doit trouver ses voisins et entretenir une relation avec chaque voisin L2.

Il utilise des paquets Hello.

Dès son initialisation ou à la suite d’un changement dans la topologie, un routeur va générer un link-state advertisement (LSA).

Cette annonce va représenter la collection de tous les états de liens de voisinage du routeur.

Étape 2 : Inondations et mises à jour

Tous les routeurs de la zone (area) vont s’échanger ces états de liens par inondation (flooding).

Chaque routeur qui reçoit des mises à jour d’état de lien (link-state update), en gardera une copie dans sa link-state database et propagera la mise à jour auprès des autres routeurs.

Étape 3 : Calcul des routes

Après que la base de données de chaque routeur a été complétée, chacun va calculer l’arbre du chemin le plus court (“Shortest Path Tree”) vers toutes les destinations avec l’algorithme “Dijkstra”.

Il construira alors la table de routage (routing table), appelée aussi forwarding database, en choisissant les meilleures routes à inscrire.

Étape 4: Maintenance des routes

S’il n’y a pas de modification topologique, OSPF sera très discret.

Par contre en cas de changement, il y aura échange d’informations (par des paquets d’état de lien) et l’algorithme “Dijkstra” recalculera les chemins les plus courts à inscrire dans la table de routage.