# Routage Dynamique IPv4 avec OSPF
Notre mission est de faire communiquer l’ensemble des réseaux avec OSPF et de configurer une connexion vers le réseau WAN.

L’adressage étant configuré, nous nous concentrerons uniquement sur le routage dynamique.
## Routage Dynamique
OSPF (Open Shortest Path First) est un protocole de la catégorie IGP (Interior Gateway Protocol), c’est-à-dire un protocole utilisé au sein d’une entreprise, comme un FAI par exemple. Son algorithme SPF de Dijkstra permet de choisir le chemin le plus adapté en fonction de la vitesse du lien. Il cumule l’ensemble des liaisons pour atteindre une destination et en définit un certain coût.
## Configuration du Router0
Actuellement, sur notre Router0, en exécutant un `show ip route`, nous n’avons que les routes auxquelles notre routeur est directement connecté.
```
Router0#show ip route
```

Pour configurer OSPF sur le routeur, tapez les commandes suivantes :
```
Router0>enable
Router0#configure terminal
Router0(config)#router ospf 1
```
Le numéro 1 représente l'ID OSPF pour ce routeur. Il n’est pas obligé d’être identique sur chaque routeur de la topologie.
```
Router0(config-router)#router-id 1.1.1.1
```
L’ID se présente sous la forme d’une IP. Celle-ci n’a pas d’impact conséquent dans notre topologie. Elle sert uniquement à informer les routeurs voisins de son identité. Cette IP n’est pas pour autant dans la table de routage des routeurs. C’est un peu la carte d’identité du routeur dans la zone OSPF 1.
```
Router0(config-router)#network 192.168.3.0 0.0.0.255 area 0
Router0(config-router)#network 192.168.4.0 0.0.0.255 area 0
Router0(config-router)#network 192.168.5.0 0.0.0.255 area 0
```
Dans cette partie, nous renseignons les réseaux auxquels notre Router0 est connecté. Nous ne renseignons pas volontairement le réseau WAN en 209.50.144.0/30.
À ce stade, notre routeur envoie des mises à jour OSPF sans recevoir de réponse. Donc, notre table de routage reste encore vide puisque les routeurs voisins ne sont pas encore configurés avec le protocole OSPF.
## Configuration du Router1
```
Router1>enable
Router1#configure terminal
Router1(config)#router ospf 1
Router1(config-router)#router-id 2.2.2.2
Router1(config-router)#network 192.168.1.0 0.0.0.255 area 0
Router1(config-router)#network 192.168.4.0 0.0.0.255 area 0
Router1(config-router)#network 192.168.6.0 0.0.0.255 area 0
```
À ce stade, votre Router1 reçoit des informations de Router0 avec l’ID 1.1.1.1 pour établir une contiguïté et partager ses informations de routage.

## Configuration du Router2
```
Router2>enable
Router2#configure terminal
Router2(config)#router ospf 1
Router2(config-router)#router-id 3.3.3.3
Router2(config-router)#network 192.168.2.0 0.0.0.255 area 0
Router2(config-router)#network 192.168.5.0 0.0.0.255 area 0
Router2(config-router)#network 192.168.6.0 0.0.0.255 area 0
```
À ce stade, l’ensemble des routeurs convergent (c’est-à-dire qu’ils se mettent à jour les uns les autres), vous le voyez avec le message suivant :

## Test et Vérification de la Maquette
Sur Router2, vous pouvez à présent taper la commande `sh ip route` pour afficher la table de routage :
```
Router2#sh ip route
```

Nous voyons une nouvelle lettre « O » comme OSPF apparaître pour identifier les routes apprises avec OSPF. Les informations de routage sont bien transmises. Pour tester la connectivité, effectuez un `tracert` entre PC2 et PC1.

La communication est opérationnelle. L’étoile de la 3ᵉ ligne indique qu’un paquet est perdu. Cela est dû à une requête ARP effectuée par Router0 pour demander l’adresse MAC de 192.168.3.1. C’est un processus normal, le routeur remplit progressivement sa table ARP.
## La Route par Défaut
L’objectif est de configurer Router0 avec une route par défaut vers le WAN et de diffuser celle-ci sur Router1 et Router2 via OSPF.
Configurez Router0 avec la route par défaut :
```
Router0(config)#ip route 0.0.0.0 0.0.0.0 serial 1/2
```
Puis diffusez-la dans OSPF :
```
Router0(config)#router ospf 1
Router0(config-router)#default-information originate
```
Vous pouvez vérifier la propagation de cette route sur Router1 et/ou Router2 :
```
Router1#show ip route
```

Nous pouvons vérifier que la route se propage bien avec l’indice O\*E2.
## Test de la Maquette
Pour finaliser le TP, nous vérifierons un test de connexion avec le PC0 en effectuant un ping vers 8.8.8.8.
