Cisco - OSPF
Alasta 4 Novembre 2015 cisco cisco ccnp route cli
Description : Nous allons parler d'OSPF sur Cisco ainsi que de son implémentation.
Introduction :
OSPF (Open Shortest Path First) est un protocole de routage standard, de type IGP à état de lien (link-state).
Sa distance administrative (AD) est de 110. Sa métrique est la somme des coûts et il est identifié par O dans la table de routage.
La métrique :
Chaque interface à un coût qui est basé sur la bande passante (BW) exprimée en bits/s.
Métrique = 108 / BW
108 représente 100Mb/s.
Exemples :
FastEthernet 100Mb/s coût = 1
Ethernet 10Mb/s coût = 10
1Mb/s coût = 100
Serial 1,544Mb/s coût = 64
Pour 1Gb/s -> 108 / 109 = 0.1 -> qui sera aarondi à 1 donc 1Gb/s = 100Mb/s.
Adaptation de la formule :
En global
router OSPF <Process_ID>
auto-cost reference-bandwidth <Valeur_en_Mb/s>
! 1000 pour tenir compte des BW allant jusqu'à 1Gb/s
Ceci est à faire sur tous les routeurs.
Par interface
interface f0/0
ip ospf cost <Valeur_en_Mb/s>
Le routeur ne tiendra plus compte de la BW de l’interface pour le calcul du coût de l’interface.
Modifier la BW de l’interface
interface f0/0
bandwidth <Valeur_en_kb/s>
Attention d’autres protocoles seront impactés par cette modification, comme EIGRP par exemple.
Distance Vector vs Link-State :
Le DV envoie une partie de sa table de routeur à son voisin si la route a étée ajouté à sa table de routage.
Exemple : un routeur reçoit une annonce (Net 1.1.1.0/24, 5 hops et AD 120), ai-je une meilleure route pour atteindre ce réseau ?
Le LS envoie à ses voisins les routes auxquels il est connecté (via LSA).
Exemple : un routeur reçoit une annonce (Net 1.1.1.0/24, 5 hops et AD 110), je rajoute la route dans ma topologie sans me poser de question.
Les annonces
Les annonces s’appellent des LSA (Link State Advertissement)
Elles contiennent :
- le router-ID de l’annonçeur
- le réseau/masque annoncé
- l’AD
- le coût du lien
- l’âge (exprimé en secondes)
- …
Lorsque que le champ “Link-state age” passe à 30 minutes :
- le routeur aynat généré le LSA renvoie ce même LSA après avoir incrémenté son numéro de séquence.
Par rapport à un DV, le LS optimise la BW.
Lorsque le le champ “Link-state age” passe à 1 heure :
- Le LSA est supprimé de la base de donnée LSDB.
Sur réception d’un LSA :
1- Soit ce LSA n’est pas présent dans la LSDB :
- alors le routeur le rajoute dans sa LSDB
- il envoie un accusé réception
- il envoie le LSA à tous ses voisins
- il execute SPF et met à jour sa table de routage
2- Soit ce LSA est déjà présent dans la LSDB avec le même numéro de séquence :
- alors le routeur ignore ce LSA
3- Soit ce LSA est déjà présent dans la LSDB avec un numéro de séquence inférieur :
- idem cas 1
4- Soit ce LSA est déjà présent dans la LSDB avec un numéro de séquence supérieur :
- alors le routeur envoie un LSA de sa LSDB au routeur qui lui avait envoyé le LSA
Le numéro de séquence
- codé sur 4 octets
- commence par la valeur 0x80000000, mais réservé donc la première valeur est 0x80000001
- termine avec la valeur 0x7fffffff (0x80000000 - 1)
- incrémenté de 1 à chaque MAJ
R1#show ip ospf database
!--SNiP--
Link ID ADV Router Age Seq# Checksum Link count
10.1.1.1 10.1.1.1 79 0x80000001 0x00F981 2
10.2.2.2 10.2.2.2 81 0x80000001 0x00F37E 2
100.100.100.100 100.100.100.100 80 0x80000001 0x00595D 4
!--SNiP--
Link ID : peut être le réseau ou le router-ID en fonction des cas.
ADV Router : le router-ID
Age : l’âge de l’information
Seq# : numéro de séquence du LSA
Link count : nombre d’interface dans le réseau (attention en certaines interface ne valent X au lieu de 1)
Le router-ID :
C’est une adresse IP ou au format adresse IP.
Configuration manuelle :
router ospf 100
router-id 1.1.1.1
Conffiguration automatique :
- Une loopback existe ?
- Oui : le router-id = la plus grande des IP des interfaces de loopback
- Non : la plus grande des IP des interfaces UP au moment ou l’on a taper “router ospf”
Les rôles :
- R1 : ASBR (Autonomous System Border Router) -> il fait de la redistribution de routes
- R2 / R3 : ABR (Area Border Router) -> routers connectés à 2 areas
- R4 : Internal Router
- Area 0 : Area Backbone -> toutes les autres aires doivent lui être attachées.
L’intérêt des Area :
R5 (internal router) n’aura donc qu’une seule LSA pour le 4 réseaux de R4.
- Moins de RAM nécessaire pour conserver en mémoire la cartographie du réseau.
- Moins de CPU pour éxecuter l’algorithme (si bagottage d’un réseau, aucun impact sur les routes summary)
- Pas de perte de connectivité.
Note : faire des Areas et ne pas mettre en place de summerisation et le type de stub ne sert à rien.
Trois étapes :
- Découvrir tous mes voisins directs.
- Construire la cartographie du réseau.
- Décider du chemin le plus court pour atteindre chaque sous-réseau annoncé.
Configuration OSPF :
router ospf <Process_ID>
network <subnet> <wildcard_mask> area <#_area>
Ici on déclare les interfaces qui vont participer au routage OSPF.
Exemple :
router ospf 1
network 10.0.0.0 0.0.0.255 area 0
Signifie : activer OPSF sur toutes les interfaces dont l’adresse IP appartient au réseau 10.0.0.0/24 et positionner cette interface dans l’area 0.
10.0.0.1/24 | Oui |
10.0.1.1/24 | Non |
10.1.1.1/24 | Non |
10.0.0.1/28 | Oui |
10.0.0.55/24 | Oui |
Par interface (depuis l’IOS 12.3(11))
interface serial 1/1
ip ospf 100 area 0
Les masques extrêmes :
Activer toutes les interfaces en une seule commande :
network 0.0.0.0 255.255.255.255 area 0
! pour des raisons de simplification on peut écrire
network 0.0.0.0 0.0.0.0 area 0
Activer une seule interface :
network 1.1.1.1 0.0.0.0 area 0
Vérifier les interfaces qui participent à OSPF :
R1#show ip ospf interface brief
Interface PID Area IP Address/Mask Cost State Nbrs F/C
Se1/1 100 0 172.16.1.1/24 64 P2P 1/1
Lo0 100 1 10.1.1.1/32 1 LOOP 0/0
Se1/0 100 1 10.1.2.1/24 64 P2P 1/1
Fa0/0 100 1 10.1.3.1/24 1 BDR 1/1
PID : Process ID OSPF
Cost : coût de l’interface, 1 pour 100Mb/s si reference-bandwidth par défaut
Passive-interface ::
Permet d’éviter la recherche de voisin sur une interface.
2 méthodes :
router ospf <Process_ID>
passive-interface f0/0
ou
router ospf <Process_ID>
passive-interface default
no passive-interface s0/0
Résumé de commandes de configurations :
router ospf <Process_ID>
! le Process_ID peut être différent sur les différents routeur OSPF.
! Déclaration des interfaces qui participeront à OSPF.
network <subnet> <wildcard_mask> area <#_area>
! Optionnel
!
! Adaptation de la formule pour le calcul de la metric
auto-cost reference-bandwidth <Valeur_en_Mb/s>
! Déclaration par interface
interface serail 1/0
ip ospf <Process_ID> area <#_area>
! passive-interface
passive-interface <interface>
! ou
passive-interface default
no passive-interface <interface>