---
# System prepended metadata

title: 'CR1 -R401 réseaux Opérateurs '
tags: [S4]

---

# CR1 - FOURNIER Vincent Réseaux Opértateurs


## 1.1 Introduction
Le protocole BGP (Border Gateway Protocol) permet de mettre en place un routage dynamique
entre des systèmes autonomes (AS pour Autonomous Systems).
Un AS est un ensemble de réseaux informatiques IP intégrés à Internet et dont la politique de routage interne (routes à choisir en priorité, filtrage des annonces) est cohérente.
Il est généralement sous le contrôle d’un administrateur unique, typiquement un fournisseur d’accès à Internet. Les protocoles de routage utilisés à l’intérieur de l’AS sont de type IGP (Interior Gateway Protocol), par exemple OSPF, et permettent d’échanger des informations entre les routeurs de l’AS. 
Les routeurs doivent utiliser un protocole de type EGP (Exterior

Gateway Protocol), tel que BGP, pour router des paquets en dehors de l’AS. BGP utilise TCP comme
protocole de transport sur le port 179. Deux routeurs BGP forment une connexion TCP entre eux.

Les routeurs BGP échangent des informations sur l’accessibilité du réseau.
Ces informations constituentprincipalement une indication des chemins d’accès complets qu’une route doit emprunter pour atteindre le réseau de destination. Les chemins sont des numéros d’AS BGP.
Deux routeurs qui forment une connexion TCP pour échanger des informations de routage BGP sont des voisins. Les voisins BGP échangent initialement l’intégralité des tables de routage BGP.
Après cet échange, les voisins envoient des mises à jour incrémentielles lorsque la table de routage change. 

L’envoi des paquets keepalive entre voisins garantit que la connexion entre les voisins est active.
## Protocole de routage BGP
### 1.2 Configuration de base
On considère le réseau suivant sous GNS3, constitué de 7 routeurs d’accès de type 3640 avec les
configurations suivantes :
IOS Slot 0 Slot 1
R1 c3640-js-mz.123-22.bin NM-4T NM-1FE-TX
R2 c3640-js-mz.123-22.bin NM-4T NM-4E
R3 c3640-js-mz.123-22.bin NM-4T NM-4E
R4 c3640-js-mz.123-22.bin NM-4T NM-4E
R5 c3640-js-mz.123-22.bin NM-4T NM-1FE-TX
R6 c3640-js-mz.123-22.bin NM-4T NM-4E
R7 c3640-js-mz.123-22.bin NM-4T NM-4E
Figure 1.1 – BGP - Exercice 1



Tableau d'adressage:
| Equipement | Adresse IP      | Masque          | Vlan | Port     |
|------------|-----------------|-----------------|------|----------|
| AS 100     |                 |                 |      |          |
| R1         | 129.213.1.2     | 255.255.255.252 | X    | s0/0     |
| R1         | 160.78.45.254   | 255.255.255.0   | 20   | f1/0.20  |
| R1         | 155.24.32.254   | 255.255.255.0   | 10   | f1/0.10  |
| AS 300     |                 |                 |      |          |
| R5         | 130.1.7.1       | 255.255.255.252 | X    | s0/0     |
| R5         | 120.62.60.254   | 255.255.255.254 | 45   | f1/0.45  |
| R5         | 109.2.5.254     | 255.255.255.254 | 46   | f1/0.46  |
| AS200      |                 |                 |      |          |
| R2         | 129.213.1.1     | 255.255.255.252 | X    | s0/0     |
| R2         | 197.5.1.1       | 255.255.255.252 | X    | e1/0     |
| R2         | 175.220.212.254 | 255.255.255.0   | X    | e1/1     |
|            |                 |                 |      |          |
| R3         | 197.5.1.2       | 255.255.255.252 |      | e1/0     |
| R3         | 175.220.5.254   | 255.255.255.0   | 200  | e1/1.200 |
| R3         | 180.98.78.254   | 255.255.255.0   | 201  | e1/1.201 |
| R3         | 197.5.1.5       | 255.255.255.252 | X    | e1/2     |
| R3         | 197.5.1.9     | 255.255.255.252 | X    | e1/3     |
|            |                 |                 |      |          |
| R4         | 197.5.1.6       | 255.255.255.252 | X    | e1/0     |
| R4         | 175.220.1.254   | 255.255.255.0   | X    | e1/1     |
| R4         | 130.1.7.2       | 255.255.255.252 | X    | s0/0     |
|            |                 |                 |      |          |
| R6         | 197.5.1.10      | 255.255.255.252 | X    | e1/0     |
| R6         | 200.10.0.1      | 255.255.255.252 | X    | e1/1     |
|            |                 |                 |      |          |
| R7         | 200.10.0.2      | 255.255.255.252 | X    | e1/0     |
| R7         | 200.10.12.254   | 255.255.255.0   | 12   | e1/1.12  |
| R7         | 200.10.11.254   | 255.255.255.0   | 11   | e1/1.11  |


### 1.2.1 Configuration du réseau
1. Configurez les vlan sur les commutateurs en fonction du schéma

![image](https://hackmd.io/_uploads/SkWOaBLqa.png)
![image](https://hackmd.io/_uploads/r1mK6rLq6.png)
![image](https://hackmd.io/_uploads/S1IhaHI5T.png)
![image](https://hackmd.io/_uploads/H1QRTrI9p.png)




2. Configurez les interfaces des routeurs R1, R2, R3, R4 et R5 en fonction du schéma
 
Faire du routage OSPF
R1
```
en
hostname R1
conf t
interface s0/0
ip address 129.213.1.2 255.255.255.252
no shut
exit
interface fa 1/0 
no shut
exit
interface fa 1/0.10
encapsulation dot1Q 10
ip address 155.24.32.254 255.255.255.0
no shut
exit
interface fa1/0.20
encapsulation dot1Q 20
ip address 160.78.45.254 255.255.255.0
no shut
exit
```
Ping OK entre PC10 et PC20

R5


```
en
hostname R5
conf t
interface s0/0
ip address 130.1.7.1 255.255.255.252
no shut
exit
interface fa 1/0 
no shut
exit
interface fa 1/0.45
encapsulation dot1Q 45
ip address 120.62.30.254 255.255.255.0
no shut
exit
interface fa1/0.46
encapsulation dot1Q 46
ip address 109.2.5.254 255.255.255.0
no shut
exit
```
Ping Ok entre PC45 et PC46

R2
```
conf t
interface s 0/0
ip address 129.213.1.1 255.255.255.252
no shut
exit
interface e 1/0
ip address 197.5.1.1 255.255.255.252
no shut
exit
interface e 1/1
ip address 175.220.212.254 255.255.255.0
no shut
exit
router ospf 1
network 197.5.1.0 0.0.0.3 area 0
network 175.220.212.0 0.0.0.255 area 0
passive-interface s0/0
exit
do sh ip int br


```

R3
```
conf t
interface e 1/0 
ip address 197.5.1.2 255.255.255.252
no shut
exit
interface e 1/2
ip address 197.5.1.5 255.255.255.252
no shut
exit
interface e 1/1
no shut
exit
interface e 1/3
ip address 197.5.1.9 255.255.255.252
no shut
exit
interface e 1/1.200
encapsulation dot1Q 200
ip address 175.220.5.254 255.255.255.0
no shut
exit
interface e 1/1.201
encapsulation dot1Q 201
ip address 180.98.78.254 255.255.255.0
no shut
exit
router ospf 1 
network 197.5.1.0 0.0.0.3 area 0
network 175.220.5.0 0.0.0.255 area 0
network 180.98.78.0 0.0.0.255 area 0
network 197.5.1.4 0.0.0.3 area 0
network 197.5.1.10 0.0.0.3 area 0
do sh ip int br
```

R4
```
en
conf t
interface e 1/0
ip address 197.5.1.6 255.255.255.252
no shut
interface e 1/1
ip address 175.220.1.254 255.255.255.0
no shut
interface s 0/0
ip address 130.1.7.2 255.255.255.252
no shut
router ospf 1
passive-interface s 0/0
network 197.5.1.4 0.0.0.3 area 0
network 175.220.1.0 0.0.0.255 area 0
do sh ip int br

```
On configure sur chaque routeur leurs interfaces en respectant le schéma de topologie de l'énoncé. 
(Voir églamement le tableau d'adressage)
Pour que les routeurs R2/R3/R4 et leurs réseaux puissent périphériques de leurs réseaux puissent communiquer il est impératif d'utiliser un protocole de routage. Isi OSPF


####  1.2 Configuration de base 5
3. Mettez en place le protocole de routage OSPF à l’intérieur de l’AS 200 dans l’aire 0 uniquement (routage de type IGP, concerne les routeurs R2, R3 et R4). Attention, les routes vers d’autres AS ne doivent pas être annoncées par OSPF

4. Connectez un PC hôte sur chaque réseau desservit par un routeur (R1, R2, R3, R4 et R5) et configurez son adresse IP par l’intermédiaire de la console VPCS. La commande help vous permet d’identifier les commandes à utiliser pour configurer l’IP et sauvegarder la configuration.


5. Vérifiez que tous les vlan d’une même AS peuvent se voir, et que des vlan d’AS différents ne se voient pas. Visualisez les tables de routage de R1, R2, R3, R4 et R5.

Test dans le backbone ok:

![image](https://hackmd.io/_uploads/SJiMywzjp.png)

Table de routage de chaque routeur à ce stade.

R3:
![image](https://hackmd.io/_uploads/S1SKyPfj6.png)

R2:
![image](https://hackmd.io/_uploads/S1QhkPfop.png)

R4:
![image](https://hackmd.io/_uploads/Skq61PGiT.png)

R1:
![image](https://hackmd.io/_uploads/r1e1evfsT.png)

R5:
![image](https://hackmd.io/_uploads/SJUxgvMsT.png)


Les routes entre R2/R3 et R4 sont distribuées via l'IGP OSPF (Code O sur les tables de routages). Les routeurs R1 et R5 ne possèdent pas de routes leurs permmettant de communiquer avec les routeur de le 'AS 200, seulement les routes directement connectées.
Les liaisons internes du backbone de l'AS 200 sont fonctionnelles.









## 1.2.2 Configuration de BGP
### 1.2.2.1 Activation de BGP

Pour que les paquets puissent transiter entre les AS, il faut mettre en place un protocole de
routage externe (type EGP). Sur Internet, c’est actuellement BGP v.4 qui est utilisé. La com-
mande suivante en mode de configuration active le processus BGP sur un routeur appartenant
à une AS :

`router bgp numero AS`
Par exemple, pour activer BGP sur R1, il faut rentrer la commande
`router bgp 100`
6. Activer le processus BGP sur R1, R2, R4 et R5

R1
```
router bgp 100
```

R5
```
router bgp 300
```

R2/3/4/6/7
```
router bgp 200
```

Debug bgp
```
sh ip bgp summary
```

exemple 

```
sur R2
conf t
reouteur bgp 200
neighbor 129.213.1.2 remote-as 100
neighbor 100.4.0.1 remote-as 200
neighbor 100.4.0.1 update-source l0 (connexion TCP de l'interface L0 de R2 ofc)
```

#### 8.2.2.2 Configuration des voisinages

Il faut ensuite définir les voisins de chaque routeur. La formation de voisins BGP indique les
routeurs qui communiquent via BGP. **On parle d’iBGP lors d’une interconnexion BGP entre
des routeurs au sein d’un AS**, et **d’eBGP quand BGP s’exécute entre des routeurs qui appar-
tiennent à deux AS différents.** Pour iBGP, deux voisins ne sont pas forcément en lien direct,
mais doivent pouvoir établir une connexion TCP entre eux par l’intermédiaire d’un protocole
de routage interne. Pour eBGP, deux voisins doivent être en lien direct (il existe une possibilité
pour que 2 voisins eBGP ne soient pas en lien direct, mais elle ne sera pas vue dans le cadre
de cette étude). La commande suivante permet d’établir une connexion TCP entre deux voisins :
neighbor ip-address remote-as number
number est le numéro de l’AS du routeur auquel on veut se connecter. ip-address est l’adresse
du prochain saut avec connexion directe pour eBGP. Pour iBGP, ip-address est n’importe quelle
adresse IP sur l’autre routeur, ce qui suppose qu’un protocole de routage interne (par exemple
OSPF) fonctionne correctement sur l’ensemble des routeurs de l’AS.

7. Définissez le lien de voisinage BGP entre R1 et R2 puis entre R4 et R5

![image](https://hackmd.io/_uploads/BkOqdPzsa.png)

R1
```
neighbor 129.213.1.1 remote-as 200
```



R2
```
neighbor 129.213.1.2remote-as 100
```
R4
```
neighbor 130.1.7.1 remote-as 300
```



R5
```
neighbor 130.1.7.2 remote-as 200
```

Pour mieux comprendre le fonctionnement du protocole visualisons le trafic entre R1 et R2 lors de la déclaration de voisinage.

Comme dit plus haut l'origine des échanges avec BGP commence par une connexion TCP classique (three way-handshake) entre R1 et R2 sur le port 179.
![image](https://hackmd.io/_uploads/Hk5MISk3a.png)

Le premier message BGP va être "OPEN message".
Il est  échangé entre les routeurs BGP lors de l'établissement d'une session BGP. Il contient des informations telles que la version du protocole BGP, l'AS du routeur émetteur, les capacités de routage supportées et les paramètres de sécurité.

**Hold Time:** si BGP ne reçoit aucun message de maintien de connexion (keepalive) ou de mise à jour de l'autre côté pendant la durée du temps de maintien, il considérera l'autre côté comme "mort" et mettra fin à la session BGP. Par défaut, le temps de maintien est défini à 180 secondes sur les routeurs Cisco IOS, et le message de maintien de connexion est envoyé toutes les 60 secondes. Les routeurs BGP utiliseront le minuteur de maintien le plus bas configuré.

**BGP Identifier**: il s'agit de l'ID de routeur BGP local qui est élu de la même manière qu'OSPF :
 Utilise l'ID de routeur configuré manuellement avec la commande bgp router-id.
 Utilise la plus haute adresse IP sur une interface de bouclage.
 Utilise la plus haute adresse IP sur une interface physique.
 Et pour finir les paramètres facultatifs.


![image](https://hackmd.io/_uploads/Skf6urynT.png)
Sur cette première d'échange BGP de R1 vers R2 on retoruve bien les éléments indiqués précédemment avec le numéro de version  (ici 4) le numéro d'AS (100).

La trame suivante sera la réponse de R2 lui transmettant ces mêmes éléments le concernant:
![image](https://hackmd.io/_uploads/Sk2EYHJ26.png)

La connexion TCP est alors maintenue par la suite par BGP qui envoie réulièrement des message de type Keepalive.
Exemple ici:
![image](https://hackmd.io/_uploads/HkO9Yr1h6.png)




8. Visualisez les voisins actifs avec la commande
`show ip bgp neighbors`

L’état ESTABLISHED indique que le lien bgp fonctionne correctement. Toute autre valeur
pour l’état indique un lien inactif. L’utilisation d’une interface de bouclage pour définir les
voisins est courante avec iBGP mais pas avec eBGP.

Entre R1 et R2

![image](https://hackmd.io/_uploads/rkXTvry3a.png)

### 6 Protocole de routage BGP


9. Sur l’interface s0/0 de R2, lancez une capture de trame via wireshark (clic droit sur l’interface)



10. Sur R1 ou R2, ré-initialisez la connexion bgp par la commande :
`clear ip bgp` *
11. Observez les flux générés lors de l’établissement du lien de voisinage. Relevez en particulier leprotocole transport et les ports d’écoute, les message BGP (nature du message, informations contenues dans le message...). Vous laisserez wireshark capturer les flux sur cette interface toutle long du TP. A l’intérieur d’un AS, chaque routeur dispose en général de nombreuses interfaces réseaux. Ainsi,lors de la définition des liens d’adjacence à l’intérieur d’un AS, il est préférable d’utiliser une interface de bouclage. Ceci assure que l’adresse IP du voisin reste active et est indépendante du matériel en cas de panne en particulier.Le routeur voisin doit informer BGP de l’utilisation d’une interface de bouclage plutôt qu’uneinterface physique pour initier la connexion TCP avec la commande :
```
neighbor ip-address update-source interface
```

où ip-address est l’adresse de bouclage du routeur distant et interface est le nom de sa propre
interface de bouclage.




 



12. Configurez une interface de bouclage sur R2 et R4 d’adresses respectives 

100.2.0.1/32 et 100.4.0.1/32.

R2
```
interface l0
ip address 100.2.0.1 255.255.255.252
no shut
exit
router ospf 1
network 100.2.0.0 0.0.0.3 area 0
exit
router bgp 200
neighbor 100.4.0.1 remote-as 200
neighbor 100.4.0.1 update-source l0

```
Table de routage R2:
![image](https://hackmd.io/_uploads/BkXgRPzsa.png)



R4
```
interface l0
ip address 100.4.0.1 255.255.255.252
no shut
exit
router ospf 1
network 100.4.0.0 0.0.0.3 area 0
exit
router bgp 200
neighbor 100.2.0.1 remote-as 200
neighbor 100.2.0.1 update-source l0

```

On créer d'abord les interfaces de bouclage.
On annonce ensuite les routes vers ces interfaces via OSPF puis, on créer le voisinage entre ces même interfaces sur BGP.

L'annonce des routes permet la communication vers les interface de bouclage entre R2 et R4 (les routeurs n'étant pas adjacent sur la topologie) et de permettre un voisinage BGP.

Table de routage R4:
![image](https://hackmd.io/_uploads/Bkt2TvMoa.png)



> On peut aussi utiliser un IGP (ICI OSPF)
14. Créez un lien de voisinage entre R2 et R4 en utilisant les interfaces de bouclage.

(Voir au dessus)

15. Visualisez le voisinage entre R2 et R4.


![image](https://hackmd.io/_uploads/r1ttkOfop.png)

![image](https://hackmd.io/_uploads/rJa8jyYo6.png)

16. Visualisez les flux BGP sur la capture de trames.


Voir capture ![image](https://hackmd.io/_uploads/rk7W-Uyha.png)

Pas de différences entre cette échange BGP et le premier visualiser si ce n'est les adresses des interfaces qui créer le voisinage.

17. Expliquez les tables de routage de R1, R2, R4 et R5

R1
![image](https://hackmd.io/_uploads/HJnHeuzsp.png)



R2

![image](https://hackmd.io/_uploads/HJkOgOMj6.png)


R4

![image](https://hackmd.io/_uploads/ryrYedzop.png)


R5

![image](https://hackmd.io/_uploads/HkJRe_zi6.png)


A ce stade les seuls différences avec la partie précédente sont les routes ospf des interface de bouclage. Même si des voisins BGP sont crées (R1/R2 R4/R et R2/R4) il est nécessaire comme pour OSPF d'annoncer les réseaux via BGP.



#### 1.2.2.3 Annonce de route

Une des façons d’envoyer des informations sur le réseau à l’aide de BGP est d’utiliser la com-
mande network. Le format est :

`network network-number mask network-mask`

La commande network contrôle les réseaux qui proviennent du routeur. Pour qu’elle fonctionne,
le routeur doit connaître le réseau annoncé, qu’il soit connecté, statique ou appris dynamique-
ment.

Cela tombe bien c'est ce que nous avons mis en place précédemment.

18. Annoncer les réseaux des vlan 10 et 20 sur R1 à l’aide de la commande network

R1
```
router bgp 100
network 155.24.32.0 mask 255.255.255.0
network 160.78.45.0 mask 255.255.255.0
```



19. Même question pour le routeur R5 et les réseaux des vlan 45 et 46

R5
```
router bgp 300
network 120.62.60.0 mask 255.255.255.0
network 109.2.5.0 mask 255.255.255.0
```

20. Sur Wireshark, quel est le nom du message BGP généré lors de l’annonce de route.
```
Update message
```

21. Sur Wireshark, observez les différents champs présents.

Il est également possible d’injecter directement les réseaux connectés au routeur dans BGP avec
la commande suivante :
```
router bgp numero AS
redistribute connected
```

Visualison l'annonce des routes.Prenons pour exemple R1.
On obtient la capture suivante:

![image](https://hackmd.io/_uploads/BknOAS12T.png)

Regardons de plus près ce qui est envoyé dans la trame UPDATE message:

![image](https://hackmd.io/_uploads/SyS2BIJha.png)


> Une fois que deux routeurs sont devenus voisins BGP, ils peuvent commencer à échanger des informations de routage. Dans le message de mise à jour, on trouve des informations sur les préfixes qui sont annoncés. En "langage BGP", un préfixe est appelé NLRI (Network Layer Reachability Information). 
> Voici les autres champs présents dans la trame.
> 
> **Longueur des routes retirées (Withdrawn Route Length) **:  montre la longueur du champ des routes retirées en octets. Lorsqu'il est à 0, il n'y a pas de routes retirées et le champ des routes retirées ne s'affichera pas.
> **Routes retirées (Withdrawn Routes) **:  montre tous les préfixes qui doivent être supprimés de la table BGP.
> **Longueur totale des attributs de chemin (Total Path Attribute Length)** : longueur totale du champ des attributs de chemin.
> Attributs de chemin (Path Attributes) : les attributs BGP pour le préfixe sont stockés ici, par exemple : origin, as_path, next_hop, med, local preference, etc... 
> 
> Chacun des attributs BGP a également un indicateur d'attribut qui indique au routeur BGP comment traiter l'attribut. 
> 
> **Optionnel (Optional)** : lorsque l'attribut est  connu, ce bit est à 0, lorsqu'il est optionnel, il est à sur 1.
> **Transitif (Transitive)** : lorsque un attribut optionnel est non-transitif, ce bit est àr 0, lorsqu'il est transitif, il est à 1. (Un attribut transitif, même si il n'est pas reconnu par un router BGP sera quand même transmis aux autres)
> **Partiel (Partial)** : lorsque un attribut optionnel est complet, ce bit est àr 0, lorsqu'il est partiel, il est à 1.(Un attribut partiellement reconnu par BGP, transmis églament aux autres routeurs BGP)
> **Longueur étendue (Extended Length)** : lorsque la longueur de l'attribut est de 1 octet, elle est à 0, pour 2 octets, elle est à 1. Cet indicateur de longueur étendue ne peut être utilisé que si la longueur de la valeur de l'attribut est supérieure à 255 octets.


## 1.2 Configuration de base 7
```
router bgp numero AS
redistribute connected
```
22. Injectez avec cette commande dans bgp les réseaux directement connectés à R2

R2
```
conf t 
router bgp 200
redistribute connected

```

23. Même question pour R4

R4
```
conf t 
router bgp 200
redistribute connected

```
24. Vérifiez que les tables de routage des routeurs R1, R2, R4 et R5 sont correctement renseignées

R4 dispose maintenant des routes provenant de R2 R1 et R5 via BGP ![image](https://hackmd.io/_uploads/r1y4Aytip.png)



R1 dispose des routes vers R4 et R5 via BGP :
![image](https://hackmd.io/_uploads/SkZr1eKoT.png)

Même chose pour R5 :
![image](https://hackmd.io/_uploads/ByXv1xYop.png)

R2 dispose également des routes vers les réseaux de R4 et les réseaux de R5 via BGP:
![image](https://hackmd.io/_uploads/H1uixgFsT.png)



25. Faites un ping d’un poste du vlan 10 de l’AS 100 vers un poste situé dans le réseau 175.220.212.0 de l’AS 200. Même question vers le réseau 175.220.1.0 de l’AS 200. Même question entre les réseaux 175.220.212.0 et 175.220.1.0 de l’AS 200. Donnez une explication claire et détaillée de ce que vous observez. Vous vous appuyerez sur des captures de trames et sur les tables de routages, en particulier.

Même si nos 4 routeurs possèdent les routes vers les autres routeurs et différents AS R3 lui ne connais pas les réseaux exterieurs à ceux annoncés par OSPF il ne peut donc pas router les paquets vers ces réseauxlà.
Dans cette configuration R3 ne dispose pas des routes lui permettant de redistribuer le retour du ping entre les AS exterieur et l'AS 200. Il est alors nécessaire de créer un voisinage avec R3(pour R2 et R4) (avec une interfacede bouclage pour les mêmes raison évoquées précedemment) et d'annoncer' dans l'AS 200 via OSPF son réseau de loopack 


26. Une solution pour résoudre ce problème de connectivité est de d’activer BGP sur R3. Configurez BGP sur R3 et vérifiez que vous avez une connectivité complète entre les trois AS

R3
```
interface l0
ip address 100.3.0.1 255.255.255.252
no shut
exit
router ospf 1
network 100.3.0.0 0.0.0.3 area 0
exit
router bgp 200
neighbor 100.4.0.1 remote-as 200
neighbor 100.4.0.1 update-source l0
neighbor 100.2.0.1 remote-as 200
neighbor 100.2.0.1 update-source l0
```

R4
```
router bgp 200
neighbor 100.3.0.1 remote-as 200
neighbor 100.3.0.1 update-source l0
```
R2
```
router bgp 200
neighbor 100.3.0.1 remote-as 200
neighbor 100.3.0.1 update-source l0
```

BGP sur R3 fnctionne:
![image](https://hackmd.io/_uploads/ByP0tgFiT.png)

Testons la connectivité entre PC1 et PC3:

![image](https://hackmd.io/_uploads/B1KlqlYop.png)

Le ping fonctionne maintenant R3 possède maintenant la route retour pour renvoyer le ping vers PC10



#### 1.2.2.4 Routage OSPF multi-aires


L’aire 0 de l’AS 200 constitue le backbone du système autonome 200. Toutes les aires OSPF
doivent être connectées à l’aire 0. Les routeurs de frontière d’aire (ici R6) annoncent au protocole
de routage de l’aire 0 les préfixes réseaux des routes de leur aire. Pour éviter d’annoncer un grand
nombre de réseaux, il est d’usage de fixer un préfixe réseau qui regroupe l’ensemble des réseaux
de l’aire. Dans notre réseau, nous supposerons que l’aire 1 ne contient que des réseaux compris
dans le préfixe 200.10.0.0/16. C’est ce préfixe qu’OSPF transmettra à BGP de façon à ce que les
routeurs des autres systèmes autonomes apprennent l’ensemble des routes de l’aire 1 de l’AS 200.


27. Configurez les interfaces de R3, R6 et R7 en fonction du schéma
R6
```
interface e1/0
ip address 197.5.1.10 255.255.255.252
no shut
exit
interface e1/1
ip address 200.10.0.1 255.255.255.252
no shut
exit
```

R7
```
interface e1/0
ip address 200.10.0.2 255.255.255.252
no shut
exit
interface e1/1
no shut
exit
interface e1/1.12
encapsulation dot1Q 12
ip address 200.10.12.254 255.255.255.0
no shut
exit
interface e1/1.11
encapsulation dot1Q 11
ip address 200.10.11.254 255.255.255.0 
no shut
exit
```




28. Configurez le protocole OSPF dans l’aire 1 sur R6 et R7

R3
```
router ospf 1
network 197.5.1.10 0.0.0.3 area 0
```
R6
```
router ospf 1
network 197.5.1.10 0.0.0.3 area 0
network 200.10.0.0 0.0.0.3 area 1
```
R7
```
router ospf 1
network 200.10.0.0 0.0.0.3 area 1
network 200.10.12.0 0.0.0.255 area 1
network 200.10.11.0 0.0.0.255 area 1
```

29. Configurez les gateway de R6 et R7 
R6 est un routeur de frontière d’aire. Il fait le lien entre l’aire 1 et l’aire 0, et a donc des interface dans les deux aires.
R6
```
ip route 0.0.0.0 0.0.0.0 197.5.1.10
router ospf 1
default information originate
```

R7
```
ip route 0.0.0.0 0.0.0.0 200.10.0.1
```




30. Configurez sur R6 le réseau 197.5.1.10/30 dans l’aire 0

R6
```
router ospf 1
network 197.5.1.10 0.0.0.3 area 0
```



L’annonce du préfixe réseau regroupant tous les réseaux d’une aire se fait uniquement sur le routeur de frontière d’aire dans le protocole OSPF par l’intermédiaire de la commande



area numéro d’aire range préfixe masque



31. Annoncer le préfixe réseau de l’aire 1 sur R6

R6
```
router ospf 1
area 0 range 200.10.0.0 255.255.0.0
```

32. Visualisez et expliquez la table de routage de R2, R3 et R4

Table routage R3: (Apparition de la route OSPF résumée de l'aire 1)
![image](https://hackmd.io/_uploads/ryG8mKijp.png)

Table routage R2:
![image](https://hackmd.io/_uploads/BJ32Qtoo6.png)




Table routage R4:
![image](https://hackmd.io/_uploads/B1hRQKsja.png)


33. Visualisez les tables de routage de R1 et R5. Les routes de l’aire 1 de l’AS 200 sont-elles annoncées ? Pourquoi ?


Table routage R1:
![image](https://hackmd.io/_uploads/HkDZVtiop.png)

Table routage R5:
![image](https://hackmd.io/_uploads/BkaQVKjja.png)
 
 
les routes ne sont pas annoncées car elles proviennent de l'IGP. R1 et R5 ne possèdent pas les routes vers ces réseaux.





#### 1.2.2.5 Redistribution de route

La commande network est l’une des méthodes permettant d’annoncer des réseaux via BGP.
Une autre méthode consiste à redistribuer les entrées de l’IGP dans BGP. L’IGP peut être le
protocole IGRP, OSPF, RIP ou EIGRP.
Pour redistribuer les routes apprises par OSPF dans BGP, la commande est :

```
router bgp numero AS
redistribute ospf numero match | route-map | metric
```

##  Protocole de routage BGP

Cette redistribution doit être contrôlée parce qu’il est possible de vider toutes les routes internes
dans BGP alors que certaines de ces routes peuvent avoir été apprises via BGP. Les méthodes de
mise en correspondance de route permettent de filtrer efficacement les routes que l’on souhaite
distribuer à BGP. La mise en correspondance de route est une méthode permettant de contrôler
et de modifier les informations de routage. Le contrôle et la modification des informations de
routage se produisent grâce à la définition des conditions de redistribution de routes d’un pro-
tocole de routage à l’autre. Le contrôle des informations de routage peut également s’effectuer à
l’injection dans et hors de BGP. Le format d’une mise en correspondance de route est le suivant : 

`route-map map-tag [[permit | deny] | [sequence-number]]`

La balise map-tag est le nom donné à la mise en correspondance de route. On peut définir
plusieurs instances d’une mise en correspondance de route, ou de la même balise de nom. Le
numéro de séquence est une indication de la position d’une nouvelle mise en correspondance de
route dans la liste des mises en correspondance de route déjà configurées avec le même nom :
```
route-map MYMAP permit 10
route-map MYMAP permit 20
```
Quand la mise en correspondance de route MYMAP est appliquée aux routes entrantes ou sor-
tantes, le premier ensemble de conditions est appliqué par l’intermédiaire de l’instance 10. Si le
premier jeu de conditions n’est pas respecté, on passe à une instance plus élevée de la mise en
correspondance de route, ici 20.
Chacune mise en correspondance de route se compose d’une liste de commandes de configura-
tion match et set. match spécifie un critère de correspondance, et set spécifie une action si
les critères que la commande match impose sont respectés. Si les critères de correspondance
sont respectés et autorisés, il y a une redistribution ou un contrôle des routes, comme le spécifie
l’action set. On sort de la liste. Si les critères de correspondance sont respectés et non autorisés,
il n’y a pas de redistribution ou de contrôle de la route. On sort de la liste. Si les critères de
correspondance ne sont pas remplis, l’instance suivante de la mise en correspondance de route
est vérifiée. Par exemple, l’instance 20 est vérifiée. Ce contrôle de l’instance suivante continue
jusqu’à sortir ou terminer toutes les instances de la mise en correspondance de route.

Supposons que l’on veuille que R2 redistribue dans l’AS 200 à OSPF les routes 160.78.45.0 et
155.24.32.0 avec une mesure de 2. Les autres routes auront une métrique de 5 La configuration
de R2 serait :

```
router ospf 1
network 175.220.212.0 0.0.0.255 area 0
network 197.5.1.0 0.0.0.3 area 0
redistribute bgp 200 route-map EXEMPLE
router bgp 200
neighbor 100.4.0.1 remote-as 200
neighbor 100.4.0.1 update-source Loopback1
neighbor 129.213.1.1 remote-as 100
route-map EXEMPLE permit 10
match ip address 1
set metric 2
route-map EXEMPLE permit 20
```

```
set metric 5
access-list 1 permit 160.78.45.0 0.0.0.255
access-list 1 permit 155.24.32.0 0.0.0.255
```
Dans notre cas, nous souhaitons injecter le préfixe réseau de l’aire 1 dans BGP de façon à ce que
l’ensemble des AS apprennent cette route. Une méthode est de redistribuer OSPF dans BGP
sur R3 avec une mise en correspondance de route pour ne pas que BGP apprennent des routes
qu’il connaît déjà (toutes les routes de l’aire 0 par exemple)



34. En vous inspirant de l’exemple précédent, proposez une syntaxe pour la redistribution unique du préfixe réseau 200.10.0.0/16 d’OSPF vers BGP avec une métrique de 2
R3
```
conf t
router bgp 200
redistribute ospf 1 route-map toto
exit
route-map toto permit 10
match ip address 1
set metric 2
route-map toto permit 20
set metric 5
access-list 1 permit 200.10.0.0 0.0.255.255
```

35. Mettez en place cette redistribution sur R3
voir 34

36. Visualisez et expliquez les tables de routage de R1 et R5


![image](https://hackmd.io/_uploads/Bk1zjYjsp.png)


R5
![image](https://hackmd.io/_uploads/SkhQiKojT.png)


Une fois la redistribution de routes configurée on récupère bien les routes ospf.
R1 et R5 peuvent maintenant également communiquer avec l'aire 1 de l'AS 200 car ils disposent des routes OSPF de l'as 200 redistribuée via BGP.(Code B ici)
C'est comme ça que son interconnectées les AS sur internet. 

