Configuration Basique De BGP

Vous avez assimilé la théorie sur le protocole BGP ?

Voyons comment le mettre en place de manière basique.

Nous verrons plus tard des configurations plus complexes.

1)     La topologie à utiliser

Topologie BGP

Voici la topologie que nous utiliserons tout au long de cette mise en pratique.

Le but sera de voir les configurations de base de BGP.

Trois Autonomous System sont à connecter grâce à BGP.

2)     Configuration de base

La configuration de base à mettre en place afin de suivre cet article est la suivante :

  • Adresses IP
  • Interfaces Loopback
  • OSPF sur R1, R2 et R3

Une fois cela fait, vous pouvez passer à la suite : la configuration de BGP !

3)     Relations de voisinage BGP

Bien, voyons comment créer une relation de voisinage BGP entre deux routeurs

Relation eBGP

Tout d’abord, entrer dans le mode BGP en spécifiant le numéro d’AS :

R1(config)#router bgp 300

Puis ajouter une relation de voisinage :

R1(config-router)#neighbor 14.0.0.4 remote-as 100

On spécifie l’IP du voisin ainsi que son AS

Il faut maintenant faire de même sur R4 :

R4(config)#router bgp 100
R4(config-router)#neighbor 14.0.0.1 remote-as 300

Comme nous l’avions dit, BGP est un protocole lent.

Après un certain temps, la relation BGP va apparaitre :

R4 BGP Log

Nous pouvons voir la liste des relations comme ceci :

R4 Show Ip BGP Summary

Faisons de même pour R3 et R5 :

R3(config)#router bgp 300
R3(config-router)#neighbor 35.0.0.5 remote-as 200
R5(config)#router bgp 200
R5(config-router)#neighbor 35.0.0.3 remote-as 300

Les relations sont créées. Ce sont des relations eBGP car elles se mettent en place entre deux Autonomous System.

Relation iBGP

Il est aussi possible de mettre en place des relations iBGP (au sein d’un même AS).

Nous allons donc mettre en place une relation iBGP entre R1 et R3. Le but est qu’ils s’échangent leurs routes BGP sans qu’il soit nécessaire d’utiliser de la redistribution.

Vous pourrez constater qu’il n’est pas nécessaire que les routeurs soient directement connectés pour qu’une relation se forme.

Pour une relation iBGP, il est conseillé d’utiliser une IP de Loopback comme IP de voisin.

Pourquoi ? Car si nous utilisons une IP d’interface, et que celle-ci tombe en panne, la relation BGP disparait. Bien sûr, cela est utile que si notre réseau dispose de liens redondants vers ce voisin.

Si nous avions un lien direct entre R1 et R3 (en plus du lien R1 -> R2 -> R3), et que nous utilisions 10.0.23.3 comme IP de voisin pour R3, la relation BGP disparaitrait si le lien R1 -> R2 -> R3 tombait (alors qu’il reste le lien R1 -> R3).

Ici nous n’avons qu’un lien reliant R1 et R3. Mais voyons tout de même comment faire une relation de voisinage avec une IP de Loopback.

Sur R1 et R3, ajouter une interface de Loopback. Ne pas oublier d’inclure cette interface dans le processus OSPF.

R1(config)#interface loopback 0
R1(config-if)#ip address 1.1.1.1 255.255.255.255
R1(config)#router ospf 1
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0
R3(config)#interface loopback 0
R3(config-if)#ip address 3.3.3.3 255.255.255.255
R3(config)#router ospf 1
R3(config-router)#network 3.3.3.3 0.0.0.0 area 0

Ensuite, configurer la relation BGP :

R1(config)#router bgp 300
R1(config-router)#neighbor 3.3.3.3 remote-as 300
R3(config)#router bgp 300
R3(config-router)#neighbor 1.1.1.1 remote-as 300

Un « Show ip bgp summary » vous montrera que la relation n’est pas UP :

R1 Show Ip BGP Summary

Cela tient au fait que quand R3 envoie un message à R1, le message a pour source 10.0.23.3 (l’IP de l’interface qui envoie le message).

Or R1 s’attend à recevoir des messages de 3.3.3.3

Il faut donc changer la source des messages pour cette relation de voisinage :

R1(config-router)#neighbor 3.3.3.3 update-source loopback 0
R3(config-router)#neighbor 1.1.1.1 update-source loopback 0

Un peu de patience et la relation devrait apparaitre.

R1 Show Ip BGP Summary

Relation eBGP avec IP de Loopback

Finissons par une petite particularité, la mise en place de relation eBGP avec une IP de Loopback.

Si vous faites ceci, il faut ajouter une commande (en plus de la relation de voisinage avec IP de Loopback). La voici en exemple pour R5 :

R3(config-router)#neighbor 5.5.5.5 ebgp-multihop 2

Il est nécessaire d’utiliser cette commande, car par défaut, une relation eBGP ne peut pas s’établir sur une distance de plus de 1 saut.

Il faudra appliquer la même commande sur R5.

Il faut aussi que les deux routeurs sachent comment joindre l’IP de Loopback. Dans l’exemple, R5 doit avoir une route vers 3.3.3.3 (et inversement pour R5).

L’utilisation d’une IP de Loopback pour une relation eBGP est utile si vous possédez un lien redondant (double lien) vers le voisin.

4)     Distribution de route

Solution 1 : La commande Network

Les relations de voisinage sont en place, c’est une bonne chose.

Par contre, il manque quelque chose :

R3 Routing Table

Les routes ne sont pas redistribuées par BGP.

La commande « Neighbor » ne fait qu’établir la relation BGP.

Pour annoncer des réseaux (les inclurent dans le processus BGP), voici la procédure :

R4(config)#router bgp 100
R4(config-router)#network 40.0.0.0 mask 255.255.255.0
R4(config-router)#network 40.0.1.0 mask 255.255.255.0
R4(config-router)#network 40.0.2.0 mask 255.255.255.0

Contrairement aux autres protocoles, la commande « Network » ne fait qu’ajouter des réseaux au processus. Elle ne permet pas de créer une relation avec un voisin.

Voici le résultat :

R1 Routing Table

A ce stade, vous vous demandez surement pourquoi nous n’avons pas annoncé le réseau 40.0.0.0 /22.

Simplement parce que BGP ne peut annoncer une route que si elle est présente dans la table de routage.

Or, voici la table de routage de R4 :

R4 Routing Table

La route 40.0.0.0 /22 n’existe pas. Nous ne pouvons donc pas l’annoncer avec BGP.

Ensuite, annoncez les réseaux de R5 :

R5(config-router)#network 50.0.0.0 mask 255.255.255.0
R5(config-router)#network 50.0.1.0 mask 255.255.255.0
R5(config-router)#network 50.0.2.0 mask 255.255.255.0

Solution 2 : la redistribution

La deuxième solution consiste à utiliser la redistribution de route.

Ici rien de bien nouveau. Voyons tout de même un exemple pour BGP.

Nous allons ajouter deux interfaces de Loopback sur R5, de manière à créer de nouvelles routes.

R5(config)#interface loopback 3
R5(config-if)#ip address 50.1.0.1 255.255.255.0
R5(config-if)#interface loopback 4
R5(config-if)#ip address 50.1.1.1 255.255.255.0

Le but est que R5 annonce ces routes en BGP.

Profitons-en pour faire une redistribution propre :

R5(config)#access-list 10 permit 50.1.0.0 0.0.0.255
R5(config)#access-list 10 permit 50.1.1.0 0.0.0.255
R5(config)#route-map BGPRedistribution
R5(config-route-map)#match ip address 10
R5(config)#router bgp 200
R5(config-router)#redistribute connected route-map BGPRedistribution

Voici le résultat :

R3 Routing Table

5)     Distribution des routes par iBGP

Nous avons mis en place la distribution de route par BGP.

R4 annonce ses routes à R1, et R5 annonce ses routes à R3.

Mais il y a un problème que vous aurez peut être remarqué : R1 et R3 ne s’échange pas de route par BGP.

La relation iBGP entre R1 et R3 ne semble pas permettre la redistribution des routes apprises par eBGP.

Vous pouvez voir cela sur la table de routage juste au-dessus.R3 ne connait pas les réseaux 40.0.0.0 /22

En réalité, R1 connait les routes, mais il ne les places pas dans sa table de routage.

R1 BGP Table

Il n’y a pas de chevron devant la route. Elle n’est donc pas mise dans la table de routage.

Mais pourquoi donc ?

Il y a deux raisons.

1er raison : Un routeur n’apprend pas une route par iBGP (et ne la redistribue pas) tant qu’il n’a pas appris cette même route par un protocole de routage interne (type OSPF).

Dans notre topologie, R1 n’apprendra pas la route pour 50.0.0.0 /24 par iBGP (donc venant de R3), tant qu’il n’a pas reçus une MAJ OSPF contenant une route vers cette même destination.

Cette règle était valable sur les anciens routeurs Cisco. Pour l’annuler, il faut entrer la commande « no synchronization ».

Un « Show run » vous permettra de savoir si la commande est activée par défaut.

Si ce n’est pas le cas, il faut l’entrer sur R1 et R3.

2e raison : Quand eBGP annonce une route, il change le Next-Hop. Quand iBGP annonce une route, il ne change pas le next hop.

Qu’est-ce que cela pose comme problème ?

Et bien R3 va annoncer une route à R1, ayant pour destination 50.0.0.0 /24, et pour Next Hop 35.0.0.5.

Hors R1 n’a pas la moindre idée de comment joindre 35.0.0.5.

Il ne va donc pas placer cette route dans sa table de routage.

La commande « Show bgp » vous permet de voir les routes avec leurs Next-Hop.

R1 BGP Table

Il va donc falloir changer le Next-Hop au moment où R3 annonce les routes à R1.

La manipulation est simple :

R3(config)#router bgp 300
R3(config-router)#neighbor 1.1.1.1 next-hop-self

R3 va changer le Next-Hop par son IP quand il va redistribuer des routes à R1.

Pareil pour R1 :

R1(config)#router bgp 300
R1(config-router)#neighbor 3.3.3.3 next-hop-self

Voyons si cela a marché :

R1 Routing Table

En effet, R1 connait maintenant les routes redistribuées par R3 (et inversement pour R1).

Au passage, vous noterez que R4 a aussi appris les routes (pareil pour R5).

R4 Routing Table

6)     Les trous noirs causés par BGP

Aviez-vous remarqué que vous avez créé un trou noir ? Ou plutôt que je vous ai fait créer un trou noir ?

Bon certes, le terme est un peu fort, mais tout de même.

Pour constater les dégâts, faites un ping depuis R4 vers 50.0.0.1.

Normalement, il devrait passer, non ?

Ping vers 50.0.0.1

Et bien non …
Et pourquoi ? Car R2 ne connait pas la route vers 50.0.0.0 /22.

Et pourquoi ne connait-il pas la route ? Car celle-ci a été annoncée en BGP. La MAJ est venue de R5, elle est passée par R3 puis a traversé R2 (sans que celui-ci ne la prenne en compte), puis elle est arrivée à R1 (puis R4).

Au final, R2 a bien reçu la MAJ. Sauf que comme il n’utilise pas BGP (et donc qu’il n’a pas de relation de voisinage), il ne la pas assimilé. Il s’est contenté de la dirigé vers sa destination (R1).

Mais comment empêcher le trou noir ?

3 solutions :

  • Mettre en place un lien direct entre R1 et R3
  • Redistribuer les routes BGP dans OSPF (R2 va donc les assimiler)
  • Mettre en place BGP sur R2

La mise en place d’un lien est la solution la plus simple est la plus performante. Il faut tout de même que le câblage soit réalisable.

La redistribution de route est une bonne solution si R2 est capable de supporter toutes les routes. Dans cet exemple, il n’y a pas beaucoup de route. Mais imaginez une topologie avec de très grandes tables de routage (ce qui arrive quand on se connecte à un FAI).

Il faut donc voir si R2 possède suffisamment de ressources.

De plus, le routeur de destination doit connaitre la route de retour.

Par exemple, pour aller de R1 à R5, la redistribution permet à R1 de connaitre 50.0.0.0 /22, mais il faut que R5 connaisse la route pour revenir à 10.0.12.0 /24.

Il en est de même pour l’utilisation de BGP. A la différence près que BGP conserve toutes les routes reçues. Si R1 et R3 envoient des routes pour la même direction, R2 va toutes les conserver. Puis il va mettre la meilleure dans la table de routage.

Si R1 et R3 envoient des routes similaires, cette solution est plus gourmande que la redistribution.

Libre à vous de choisir la solution adéquate.

Vous devriez être capable de faire fonctionner les trois.

Pour ma part, je vais faire simple. Je vais placer un lien entre R1 et R3.

Néanmoins, je vous encourage à tenter unes des deux autres solutions.

Il y a un ou deux pièges à éviter. La mise en place peut donc être intéressante.

Il faut bien faire attention. Pour que les solutions fonctionnent il faut que les routes soient connues de tous les routeurs.

Voici pour la mise en place d’un lien :

Ajouter le lien :

Ajout Lien R1-R3

Configurer les interfaces.

Mettre en place de l’OSPF entre R1 et R3 (pour que le meilleur chemin vers 3.3.3.3 soit le lien Ethernet).

Inclure les réseaux 14.0.0.0 /24, 35.0.0.0 /24 et 10.0.13.0 /24 dans le processus BGP.

Voici le résultat :

Ping vers 50.0.0.1

Tagués avec :
Publié dans BGP

La Métrique De BGP

Maintenant que vous maitrisez le protocole BGP de manière basique, voyons comment fonctionne la métrique.

Nous allons voir que celle-ci est relativement complexe.

Nous verrons dans un premier temps les attributs utilisés par BGP pour calculer la métrique.

Ensuite nous ferons une mise en pratique, dans laquelle nous manipulerons la métrique.

Lire la suite ›

Tagués avec : , , ,
Publié dans BGP

Redistribution De Routes : Théorie

Parlons aujourd’hui d’un sujet important dans les grands réseaux : la redistribution de routes.

Si votre réseau fonctionne avec plusieurs protocoles de routage, il est essentiel de maitriser la redistribution.

Le but étant que les routes se propagent à travers tout le réseau, même si celui-ci utilise plusieurs protocoles de routage.

A travers cette série d’articles, nous allons voir pourquoi il est important de redistribuer les routes, quels sont les risques qui peuvent mener à des erreurs, et comment mettre en place la redistribution.

Il est préférable de bien maitriser les protocoles EIGRP et OSPF.

Lire la suite ›

Tagués avec : ,
Publié dans Redistribution De Routes

Redistribution De Routes : Configuration

Nous avons vu le but de la redistribution, les problèmes posés par celle-ci, puis nous avons fait un aperçu des méthodes qui existent pour redistribuer les routes.

Passons au plus intéressant, la pratique !

Nous allons implémenter les solutions vues précédemment, dans une topologie.

Nous verrons la Distribution List, la Prefix List et les Route Maps.

Lire la suite ›

Tagués avec : , , ,
Publié dans Redistribution De Routes

Introduction à OSPF

L’OSPF est l’un des protocoles de routage les plus utilisés aujourd’hui. Il possède de très bons atouts, et convient très bien aux grands réseaux. De plus, c’est un protocole standard, et donc utilisable par tous les constructeurs.

Dans cette série d’article, nous allons revenir sur toutes les notions à connaitre, en allant du niveau CCNA au niveau CCNP.

Ce premier article est consacré à la théorie de base à connaitre.

 

Lire la suite ›

Tagués avec : , , ,
Publié dans OSPF

OSPF : Configuration Basique

Comment configurer le protocole OSPF sur un réseau ?

Nous allons voir cela dans cet article.

Après une mise en place basique d’OSPF, nous verrons comment mettre en place de la Summarization et de la redistribution de route.

La configuration basique n’a rien de compliqué. Nous verrons par la suite des notions plus délicates.

 

 

1)     Configuration  d’OSPF

 

1.1 Topologie

Voici la topologie :

Topologie OSPF

Le réseau est divisé en 3 zones. Les routeurs R2, R6, R4 et R5 ont des interfaces de Looback, symbolisant des réseaux reliés aux routeurs.

R1 possède des routes statiques. Il servira à simuler une connexion vers d’autres réseaux.

Le but est de mettre en place l’OSPF dans les 3 zones, et de rendre les réseaux accessibles depuis tous les routeurs.

 

1.2 Area 0

Commençons par configurer R1 :

R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 172.16.1.1 0.0.0.0 area 0
R1(config-router)#network 172.16.2.1 0.0.0.0 area 0

Le numéro « 1 » après la commande « routeur OSPF », correspond au processus ID.

Il a une signification locale.

Cala permet d’activer plusieurs processus OSPF sur le routeur. Nous utiliserons toujours « 1 ».

 

Ici, nous avons choisi de configurer le routeur ID à la main. Bien entendu, nous aurions pu laisser OSPF le choisir.

Libre à vous de choisir une IP adéquate. Pour la simplicité de ce TP, nous choisirons une IP qui représente le nom du routeur.

 

Dans les commandes « Network », j’ai choisi de fournir directement l’IP de l’interface.

Ensuite, il faut indiquer le numéro de la zone.

 

Faisons de même sur les autres routeurs.

R2(config)#router ospf 1
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 172.16.1.2 0.0.0.0 area 0
R2(config-router)#network 172.16.3.2 0.0.0.0 area 0
R2(config-router)#network 10.0.0.0 0.0.3.255 area 0

 

R3(config)#router ospf 1
R3(config-router)#router-id 3.3.3.3
R3(config-router)#network 172.16.3.3 0.0.0.0 area 0
R3(config-router)#network 172.16.2.3 0.0.0.0 area 0

 

Vérifions que les relations de voisinage sont bonnes :

R1 OSPF Neighbor Table

 

Puis, vérifions la table de routage :

R1 Routing Table

R1 peut voir les réseaux qui sont connectés à R2.

Jusqu’ici tout semble bon !

 

1.2 Area 20

Faisons le lien avec l’area 20.

Pour cela, revenons sur R2.

Il faut le connecter à la zone.

R2(config)#router ospf 1
R2(config-router)#network 172.16.20.2 0.0.0.0 area 20

 

Faisons de même sur R6 :

R6(config-router)#network 172.16.20.6 0.0.0.0 area 20
*Mar  1 00:15:07.051: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Serial0/0 from LOADING to FULL, Loading Done

Nous pouvons directement voir que la relation est passée à l’état FULL

 

Il faut encore dire à R6 d’agir sur les réseaux 10.20.0.0 /22

R6(config-router)#network 10.20.0.0 0.0.3.255 area 20

 

Plaçons nous sur R3 pour voir si il connait les routes pour 10.20.0.0 /22

R2 Routing Table

En effet, R3 qui est dans la zone 0, et qui n’est pas directement connecté à R6, connait les routes pour 10.20.2.0 /22

Les routes possèdent le tag « IA ». Cela veut dire que c’est une route vers une autre area.

 

Autre chose à noter, R3 a choisi R1 comme Next Hop, au lieu de R2. Cela est dû au fait que la bande passante est meilleure du côté de R1 (ce qui est normal, car R2 – R3 est un lien série).

 

Nous pouvons aussi voir la métrique de cette route : 85.

 

Les plus attentifs d’entre vous, aurons surement remarqué que nous avons oublié de configurer quelque chose sur R6.

R2 OSPF Neighbor Table

Il s’agit du router ID.

 

R6 est donc identifié par sa plus haute IP de Loopback.

Libre à vous de laisser comme ça, ou de modifier le router ID.

Voici comment le modifier :

R6(config-router)#router-id 6.6.6.6
Reload or use "clear ip ospf process" command, for this to take effect

Comme nous l’indique le routeur, il faut remettre à zéro le process OSPF.

R6#clear ip ospf process
Reset ALL OSPF processes? [no]: y

Attention, cette commande va provoquer une interruption de service. En effet, les relations avec les voisins vont être coupées pendant quelques secondes.

 

R2 a bien pris connaissance du nouvel ID de R6 :

R2 OSPF Neighbor Table

 

1.2 Area 10

Passons à quelque chose de plus intéressent. Vous l’aurez deviné, dans la zone 10 les rôles DR / BDR vont entrer en jeu.

 

Mettons en place la configuration de base que vous connaissez bien.

R3(config)#router ospf 1
R3(config-router)#network 172.16.10.3 0.0.0.0 area 10

 

R4(config)#router ospf 1
R4(config-router)#router-id 4.4.4.4
R4(config-router)#network 172.16.10.4 0.0.0.0 area 10
R4(config-router)#network 10.10.0.0 0.0.3.255 area 10

 

R5(config)#router ospf 1
R5(config-router)#router-id 5.5.5.5
R5(config-router)#network 172.16.10.5 0.0.0.0 area 10
R5(config-router)#network 10.10.4.0 0.0.3.255 area 10

 

Vérifions les relations de voisinage :

R4 OSPF Neighbor Table

R4 voit bien ses voisins. De plus R3 est le DR.

 

Si l’on souhaite forcer un routeur à devenir le DR, il suffit de changer sa priorité :

R4(config)#interface fastEthernet 0/0
R4(config-if)#ip ospf priority 200

 

Par défaut la priorité est à 1.

Une priorité de 0 signifie que le routeur ne peut pas devenir le DR / BDR

R5(config)#interface fastEthernet 0/0
R5(config-if)#ip ospf priority 0

 

Pour que le statut DR / BDR change, il faut réinitialiser le process OSPF.

R3#clear ip ospf process

 

1.4 Vérification

Si vous avez bien suivi les étapes, vous pourrez constater que tous les routeurs connaissent toutes les routes.

Voyons R1 :

R1 Routing Table

En plus des liens entre les routeurs et des routes statiques, R1 connais les réseaux 10.10.0.0 /22, 10.20.0.0 /22, 10.0.0.0 /22.

 

Jusqu’ici, tout est bon !

 

Mais ne trouvez-vous pas que la table de routage est un peu chargée ?

Mettons en place de la Route Summarization pour arranger les choses.

 

1.5 Route Summarization

Le résumé de route fonctionne de manière un peu particulière en OSPF.
Il doit être mis en place sur les ABR – Area Border Router.

Par exemple, pour résumer les routes de l’area 20, il faut utiliser R2.

Pour la zone 10, il faut se placer sur R3.

 

Voyons comment faire.

R2(config)#router ospf 1
R2(config-router)#area 20 range 10.20.0.0 255.255.252.0

Ainsi, R2 annoncera une route résumée pour 10.20.0.0 /22.

Vérifions cela sur R3 :

R3 Routing Table

La table de routage est tout de suite plus simple non ?

 

Faisons de même pour la zone 10.

R3(config)#router ospf 1
R3(config-router)#area 10 range 10.10.0.0 255.255.248.0

 

Puis vérifions sur R1 :

R1 Routing Table

Pour le coup, la table est vraiment plus petite !

 

1.6 Redistribution de route

Vous vous demandez surement ce que nous allons faire des routes statiques sur R1, non ?

Nous avions dit qu’elles symbolisent une connexion vers d’autres réseaux (non représentées sur le schéma).

Comme les routes existent déjà, il faut les redistribuer.

OSPF sera chargé de dire aux autres routeurs que R1 connais des routes vers des réseaux externes.

 

La configuration est relativement simple :

R1(config)#router ospf 1
R1(config-router)#redistribute static subnets metric 200 metric-type 2

 

Voici ce que signifient les mots clés :

  • Subnet : le routeur va redistribuer les réseaux classfull et classless (sans le mot clé « subnet », si nous avions une route 182.168.2.0 /27, elle ne serait pas redistribuée)
  • Metrci 200 : les routes auront une métrique de 200
  • Metric-type 2 : la métrique n’évolue pas quand la route est redistribuée entre les routeurs (cad que R2 aura une métrique de 200 pour 192.168.0.0 /22, pareil pour R6)

 

Deux articles complets sont dédiés à la redistribution : http://www.networklab.fr/category/ccnp_routing/route-redistribution/

Vous pouvez les consulter si vous souhaitez plus de détails sur la théorie et la pratique.

 

Constatons le résultat :

R2 Routing Table

R2 a connaissance des routes externes.

De plus, la métrique n’a pas augmenté.

 

Mais vous ne trouvez pas qu’il y a un problème ? La table de routage a encore grandi ….

 

Encore un peu de Summarization et on n’en parle plus !

R1(config)#router ospf 1
R1(config-router)#summary-address 192.168.0.0 255.255.252.0

Ce type de résumé ne peut se faire que sur un ASBR – Autonomous System Border Router. C’est-à-dire, un routeur qui faire le lien avec un autre AS. En l’occurrence R1.

 

Et voilà le résultat !

R2 Routing Table

1.7 Calcul du coût

Pour finir, attardons nous un peu sur le calcul de coût en OSPF.

Nous avons vu que le coût d’un lien représente sa bande passante.

Voici la correspondance :

  • Lien Série 56 Kbps : 1785
  • Lien série T1 1.544 Mbps : 64
  • Lien Ethernet 10 Mbps : 10
  • Lien FastEthernet : 1
  • Lien Gigabit Ethernet : 1

 

La métrique d’une route est en fait l’addition de tous les coûts des liens entre le routeur est la destination.

 

Mais vous avez surement remarqué que le coût ne diminue plus après les liens FastEthernet.

 

En effet, le protocole OSPF a été inventé il y a plus de 20 ans. A l’époque, il était impensable d’arriver à des liens si rapides.

 

Pour corriger le problème, et que les liens Gigabits soient bien pris en compte, il faut changer le calcul du coût.

 

Voici comment faire :

R3(config)#router ospf 1
R3(config-router)#auto-cost reference-bandwidth 1000

 

Ainsi, les liens Gigabit auront un coût de 1, et les liens FastEthernet un coût de 10.

Attention, cette configuration est à appliquer sur tous les routeurs.

 

2)     Résumé

Faisons un dernier tour sur ce que l’on a vu.

Nous avons vu comment configurer les routeurs de manière basique :

R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 172.16.1.1 0.0.0.0 area

 

Nous avons vu que les routes circulent entre les Area, et qu’elles sont marquées comme externes

Exemple sur R3 :

R3 Routing Table

Nous avons vu comment fonctionnent les relations DR / BDR, et comment influencer l’élection

R4(config)#interface fastEthernet 0/0
R4(config-if)#ip ospf priority 200

(une priorité de 0 empêche le routeur de devenir DR / BDR)

 

Puis nous avons vu comment résumer les routes entre les zones :

R2(config)#router ospf 1
R2(config-router)#area 20 range 10.20.0.0 255.255.252.0

 

Nous avons aussi vu comment redistribuer les routes venant d’un autre protocole de routage (ou des routes statiques) :

R1(config)#router ospf 1
R1(config-router)#redistribute static subnets metric 200 metric-type 2

 

Nous avons vu comment résumer ces routes (sur l’ASBR) :

R1(config)#router ospf 1
R1(config-router)#summary-address 192.168.0.0 255.255.252.0

 

Enfin, nous avons vu comment changer le calcul du coût, si notre réseau comporte des liens supérieurs au FastEthernet :

R3(config)#router ospf 1
R3(config-router)#auto-cost reference-bandwidth 1000
Tagués avec : , ,
Publié dans OSPF

Les Différents Types De Zones OSPF

Les grands réseaux OSPF sont généralement séparés en plusieurs zones.

Nous avons vu que cela permettait d’alléger le travail des routeurs.

A travers cet article, nous allons revenir sur l’utilité des zones, puis nous étudierons différents types de zones.

Dans le prochain article, nous verrons la configuration de ces zones.

Lire la suite ›

Tagués avec : ,
Publié dans OSPF

Configuration Des Différents Types De Zones OSPF

Après avoir vu la théorie des zones OSPF, voyons la pratique.

Nous allons voir comment configurer les différentes zones détaillées dans l’article précédent.

Nous ne reviendrons que très peu sur la théorie. Il est donc important de maitriser les bases.

 

1)     La topologie

 

Voici la topologie qui sera utilisée dans cet article. Il s’agit de la même que dans l’article précédent.

Topologie OSPF

 

1)     Configuration Basique

 

Avant de passer à la configuration des zones, mettons en place la configuration basique.

Premièrement, appliquez les IP indiquées sur les interfaces associées.

Une fois cela fait, il faut configurer le protocole OSPF.

Voici la procédure :

R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 10.0.12.1 0.0.0.0 area 0
R1(config-router)#network 10.0.13.1 0.0.0.0 area 0

 

R2(config)#router ospf 1
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 10.0.12.2 0.0.0.0 area 0
R2(config-router)#network 10.0.23.2 0.0.0.0 area 0
R2(config-router)#network 10.40.1.2 0.0.0.0 area 40
R2(config-router)#network 10.50.1.2 0.0.0.0 area 50

 

R3(config)#router ospf 1
R3(config-router)#router-id 3.3.3.3
R3(config-router)#network 10.0.13.3 0.0.0.0 area 0
R3(config-router)#network 10.0.23.3 0.0.0.0 area 0
R3(config-router)#network 10.60.1.3 0.0.0.0 area 60

 

R4(config)#router ospf 1
R4(config-router)#router-id 4.4.4.4
R4(config-router)#network 10.40.1.4 0.0.0.0 area 40
R5(config)#router ospf 1
R5(config-router)#router-id 5.5.5.5
R5(config-router)#network 10.50.1.5 0.0.0.0 area 50

 

R6(config)#router ospf 1
R6(config-router)#router-id 6.6.6.6
R6(config-router)#network 10.60.1.6 0.0.0.0 area 60
R6(config-router)#network 10.70.1.6 0.0.0.0 area 70

 

R7(config)#router ospf 1
R7(config-router)#router-id 7.7.7.7
R7(config-router)#network 10.70.1.7 0.0.0.0 area 70

 

Configurons R1 comme un ASBR :

R1(config)#ip route 172.16.0.0 255.255.255.0 Null0
R1(config)#ip route 172.16.1.0 255.255.255.0 Null0
R1(config)#ip route 172.16.2.0 255.255.255.0 Null0
R1(config)#ip route 172.16.3.0 255.255.255.0 Null0

 

R1(config)#router ospf 1
R1(config-router)#redistribute static subnets metric-type 1 metric 200

 

Vérifions que les routes externes sont bien redistribuées et que les routes des zones voisines sont bien accessibles :

R2 Routing Table

 

Deux articles complets sont dédiés à la redistribution : http://www.networklab.fr/category/ccnp_routing/route-redistribution/

Vous pouvez les consulter si vous souhaitez plus de détails sur la théorie et la pratique.

 

Bien, la configuration de base est faite.

Les relations OSPF sont en place et toutes les zones sont en mode standard.

Actuellement, les LSA de types 3, 4 et 5 peuvent transiter librement entre les zones.

Il va donc falloir mettre en place les zones vues dans l’article précédent.

Autre chose que nous allons devoir traiter : la zone 70.

Si vous avez été attentifs, vous aurez surement remarqué que la zone 70 n’est pas directement reliée à la zone 0.

Cela est contraire aux principes des zones.

Ce type de topologie ne doit pas être mis en place dans une bonne architecture.

 

Mais si pour une bonne raison vous devez mettre en place ce type de topologie (une zone reliée à la zone 0 par une autre zone), il faudra utiliser un « Virtual Link ».

Sans cela, la zone 70 sera isolée du reste.

 

Voyons cela, avant de passer aux différents types de zone.

 

3)     Virtual Link

 

Comme dit précédemment, le Virtual Link permet de relier la zone 70 à la zone 0 et ce de manière virtuelle.

 

Pour l’instant, le routeur R7 est totalement isolé (malgré sa relation avec R6).

R7 Routing Table

La configuration du Virtual Link est très simple :

 

R3(config)#router ospf 1
R3(config-router)#area 60 virtual-link 6.6.6.6

 

R6(config)#router ospf 1
R6(config-router)#area 60 virtual-link 3.3.3.3

 

Voyons si R7 est moins seul :

R7 Routing Table

En effet, c’est comme si il était connecté à la zone 0.

 

4)     Stubby Area 

 

Attaquons le vif du sujet en commencent pas la Stubby Area.

Pour rappel, son but est d’empêcher les LSA de type 4 et 5 de rentrer (et de circuler) dans la zone.

Nous allons mettre cela en place pour la zone 40.

R4 n’aura donc plus les routes externes (172.16.0.0 /22) mais une route par défaut pointant vers R2.

 

La configuration est très simple :

 

R2(config)#router ospf 1
R2(config-router)#area 40 stub

 

R4(config)#router ospf 1
R4(config-router)#area 40 stub

 

Vérifions si les routes externes ont bien été remplacées par une route par défaut :

R4 Routing Table

En effet !

 

Vous pouvez aussi constater que R4 ne possède plus de LSA de type 4 et 5 dans sa base de données :

R4 OSPF Database

 

Les LSA de types 4 et 5 s’arrêtent à R2. La même commande sur ce dernier vous permettra de voir les LSA de types 4 et 5.

 

Il est à noter que tous les routeurs de la zone 40 doivent être en mode Stub.

 

5)     Totally Stubby Area

 

Comme dit dans le précédent article, le but de cette zone est d’empêcher le transit des LSA de types 3, 4 et 5.

Le routeur ne connaitra que les routes internes à sa zone. Les autres seront remplacées par une route par défaut.

Voyons cela pour la zone 50 :

 

R2(config)#router ospf 1
R2(config-router)#area 50 stub no-summary

 

R5(config)#router ospf 1
R5(config-router)#area 50 stub

 

Vérifions la table de routage :

R5 Routing Table

Parfait, il ne reste plus que les / la route interne.

Un petit coup d’œil à la base de données pour être sûr :

R5 OSPF Database

 

6)     Not So Stubby Area 

 

Pour ce type de zone, réutilisons la zone 40.

Mais avant toutes choses, retirons la configuration actuelle :

Vous pouvez aussi essayer de conserver la configuration Stub puis de configurer la redistribution. Un message d’erreur vous dira qu’il n’est pas possible de configurer la redistribution dans une zone Stub (voir article précédent).

 

R4(config)#router ospf 1
R4(config-router)#no area 40 stub

 

R2(config)#router ospf 1
R2(config-router)#no area 40 stub

 

Puis, ajoutons des routes statiques sur R4 :

 

R4(config)#ip route 172.18.0.0 255.255.255.0 Null 0
R4(config)#ip route 172.18.1.0 255.255.255.0 Null 0
R4(config)#ip route 172.18.2.0 255.255.255.0 Null 0
R4(config)#ip route 172.18.3.0 255.255.255.0 Null 0

 

Mettons en place la redistribution :

R4(config)#router ospf 1
R4(config-router)#redistribute static subnets metric 200 metric-type 1

 

Si vous consultez les tables de routage des autres routeurs, vous verrez que les routes ont été redistribuées.

 

Passons maintenant cette zone en Not So Stubby :

R2(config)#router ospf 1
R2(config-router)#area 40 nssa

 

R4(config)#router ospf 1
R4(config-router)#area 40 nssa

 

Normalement, à ce stade, R4 devrait être capable de redistribuer les routes 172.18.0.0 /22 vers le reste de la topologie.

Vérifions sur R3 :

R3 Routing Table

R3 a bien connaissance des routes !

Mais est ce que R4 fonctionne toujours comme un routeur Stub (c’est-à-dire qu’il ne reçoit pas les routes redistribuée) ?

R4 Routing Table

En effet, il ne possède pas les routes redistribuées (cad 172.16.0.0 /22).

On garde les avantages du mode Stub, tout en permettant la redistribution de route depuis l’intérieure de la zone.

Parfait non ?

Presque. Vous n’avez rien remarqué dans la table de routage de R4 ?

Oui, il manque bien la route par défaut !

R4 sera donc incapable de joindre les réseaux 172.16.0.0 /22.

En mode NSS, R2 n’annonce pas de route par défaut.

Pas de soucis, il y a une solution :

R2(config)#router ospf 1
R2(config-router)#area 40 nssa default-information-originate

 

Retour sur R4 :

R4 Routing Table

Et voilà !

R4 et en mode Stubb (ou plutôt NSS) et permet la redistribution de route.

 

Si vous êtes curieux, je vous invite à aller consulter les bases de données OSPF des différents routeurs, et voir quels types de LSA elles contiennent.

 

7)     Totally Stubby Not So Stubby Area 

 

Le principe est le même que pour le mode NSS.

Ici nous gardons les avantages du mode Totally Stubby (pas de LSA de types 3, 4 et 5), mais nous avons la possibilité de redistribuer des routes.

Il n’y a qu’une seule commande à changer.

(Bien entendu, il faut d’abord annuler la configuration précédente)

R2(config-router)#area 40 nssa no-summary

Voici à quoi ressemble alors la table de routage de R4 :

R4 Routing Table

 

8)     Conclusion

 

Et bien voilà, nous avons vu comment mettre en place une configuration OSPF avec des zones.

Nous avons d’abord vu l’utilité d’un Virtual Link.

Pour rappel, voici sa configuration :

R3(config)#router ospf 1
R3(config-router)#area 60 virtual-link 6.6.6.6

 

R6(config)#router ospf 1
R6(config-router)#area 60 virtual-link 3.3.3.3

 

Ensuite, nous avons vu comment configurer une Stubby Area :

R2(config)#router ospf 1
R2(config-router)#area 40 stub

 

R4(config)#router ospf 1
R4(config-router)#area 40 stub

 

Puis nous avons vu la Totally Stubby Area

R2(config)#router ospf 1
R2(config-router)#area 50 stub no-summary

 

R5(config)#router ospf 1
R5(config-router)#area 50 stub

Par après, nous avons vu la Not So Stubby Area :

R2(config)#router ospf 1
R2(config-router)#area 40 nssa
R2(config-router)#area 40 nssa default-information-originate

 

R4(config)#router ospf 1
R4(config-router)#area 40 nssa

 

Et enfin, la Totally Stubby Not So Stubby Area :

R2(config-router)#area 40 nssa no-summary

 

Tagués avec : , , ,
Publié dans OSPF

OSPF Sur Un Réseau NBMA : Théorie

Nouvel article, nouvelle notion !

Parlons aujourd’hui du protocole OSPF sur les réseaux NBMA.

Il s’agit surement du point le plus compliqué concernant OSPF dans la CCNP.

Mais pas de panique, nous allons prendre les choses dans l’ordre.

Au final, cela n’a rien de bien méchant.

Lire la suite ›

Tagués avec : ,
Publié dans OSPF

OSPF Sur Un Réseau NBMA : Configuration

Si vous avez bien compris comment fonctionnent les 5 modes d’OSPF en NBMA, le plus dur est fait.

Reste maintenant à voir comment se configurent ces modes.

A travers ce TP, nous allons revenir sur la configuration des 5 modes d’OSPF sur un réseau NBMA.

Lire la suite ›

Tagués avec : ,
Publié dans OSPF