informatique:cisco:redistribution_de_route
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
informatique:cisco:redistribution_de_route [2008/12/13 16:28] – créée pteu | informatique:cisco:redistribution_de_route [2015/11/06 09:35] (current) – [Redistribution de routes] pteu | ||
---|---|---|---|
Line 4: | Line 4: | ||
La redistribution de route permet d' | La redistribution de route permet d' | ||
- | Cela se configure dans le protocole de routage grâce à la commande '' | + | Cela se configure dans le protocole de routage grâce à la commande '' |
- | Par exemple le routeur R1 utilise 2 protocoles de routage (c'est un ASBR) : eigrp 4 et ospf 3. La commande suivante permet d' | + | Par exemple le routeur R1 utilise 2 protocoles de routage (c'est un ASBR) : eigrp 4 et ospf 3. La commande suivante permet d' |
+ | <code bash> | ||
+ | (config)# | ||
+ | (config-router)# | ||
+ | </ | ||
- | | + | **NB** : cette commande n' |
- | (config-router)# | + | <code bash> |
+ | (config)# | ||
+ | (config-router)# | ||
+ | </ | ||
- | **NB** : cette commande n' | ||
+ | =====default-information originate===== | ||
- | =====default-metric===== | + | Cette commande, à placer dans un processus de routage, ne peut être utilisée que sur un ASBR (un routeur qui fait la jonction entre plusieurs zones de routage (AS)). Elle sert à diffuser une route par défaut dans ledit protocole (ce qui n'est pas le cas par défaut, même si le routeur possède une route par défaut). |
- | Précise la métrique par défaut (**seed metric**) | + | Exemple avec un routeur qui redistribue |
- | (router-if)#default-metric 30 | + | <code bash> |
+ | router ospf 1 | ||
+ | router-id 10.0.0.1 | ||
+ | | ||
+ | default-information originate | ||
+ | </ | ||
+ | Les paramètres optionnels sont les suivants : | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
- | =====subnet===== | ||
- | Pour redistribuer les masques avec les réseaux, il faut ajouter le mot-clé '' | + | =====default-metric===== |
- | | + | Précise la métrique par défaut (**seed metric**) |
+ | |||
+ | (router-if)# | ||
- | router ospf 3 | ||
- | | ||
=====Modifier la métrique===== | =====Modifier la métrique===== | ||
Line 40: | Line 56: | ||
| BGP | égale à la métrique de l'IGP | | | BGP | égale à la métrique de l'IGP | | ||
- | exemple : redistribuer des routes OSPF dans du RIP avec une métrique de 15 | + | <note warning> |
+ | Il est plus que recommandé de définir explicitement la métrique de redistribution d'un protocole | ||
+ | </ | ||
- | router rip | + | Exemple : redistribuer des routes OSPF dans du RIP avec une métrique de 5 |
- | | + | |
- | | + | |
- | no auto-summary | + | |
- | | + | |
+ | <code bash> | ||
+ | router rip | ||
+ | | ||
+ | | ||
+ | no auto-summary | ||
+ | | ||
+ | ! | ||
+ | ! ou pour tous les protocoles redistribués | ||
+ | | ||
+ | </ | ||
====Métrique EIGRP==== | ====Métrique EIGRP==== | ||
+ | |||
EIGRP utilise une métrique composite (c-metric), qui permet de prendre en compte plus de paramètres que le coût d'un lien (5 en tout). On peut affiner ces paramètres lors de la redistribution, | EIGRP utilise une métrique composite (c-metric), qui permet de prendre en compte plus de paramètres que le coût d'un lien (5 en tout). On peut affiner ces paramètres lors de la redistribution, | ||
Line 59: | Line 84: | ||
* Les routes redistribuées dans l'OSPF on le statut d' | * Les routes redistribuées dans l'OSPF on le statut d' | ||
* **E1** précise que la métrique sera incrémenté suivant les liens pris | * **E1** précise que la métrique sera incrémenté suivant les liens pris | ||
- | * **E2** (par défaut) précise que la métrique sera statique = quel que soit le chemin pris, la métrique restera la même | + | * **E2** (métrique |
+ | * à coût égal, les routes de type E1 sont préférées aux E2. | ||
+ | Exemple de redistribution de routes statiques dans l'OSPF avec une métrique de 30 et de type E1 : | ||
+ | <code bash> | ||
+ | redistribute static metric 30 metric-type 1 | ||
+ | </ | ||
- | * OSPF permet de filtrer les routes qu'on va redistribuer | + | * le mot clé **subnets** __doit__ être utiliser pour redistribuer |
+ | Par exemple pour redistribuer | ||
+ | <code bash> | ||
+ | router ospf 3 | ||
+ | redistribute | ||
+ | </ | ||
- | | + | |
- | | + | * leur type de métrique : ce paramètre n'est disponible que quand on redistribue des routes depuis l' |
+ | <code bash> | ||
+ | router eigrp 2 | ||
+ | | ||
+ | </ | ||
+ | * leur adresse : en utilisant une **route-map** | ||
+ | <code bash> | ||
+ | router ospf 1 | ||
+ | | ||
+ | ! | ||
+ | route-map redistibute-EIGRP_to_OSPF permit 10 | ||
+ | match ip address ACL-redistibute-EIGRP_to_OSPF | ||
+ | ! | ||
+ | ip access-list standard ACL-redistibute-EIGRP_to_OSPF | ||
+ | | ||
+ | deny any | ||
+ | </ | ||
+ | Par défaut, tout ce qui ne matche pas l'ACL " | ||
+ | ====OSPF vers OSPF==== | ||
+ | |||
+ | Des problèmes peuvent surgir lorsqu' | ||
+ | * le routage sera indéterministe (implémentation Cisco) : les distances administratives des 2 instances OSPF étant égales (110), c'est le premier processus qui s' | ||
+ | * on risque des boucles de routage | ||
+ | |||
+ | Des solutions / contournements à ces problèmes sont indiqués dans cette doc Cisco : [[http:// | ||
+ | |||
+ | Une solution est : | ||
+ | * de diminuer la distance administrative d'un AS pour le préférer à l' | ||
+ | <code bash> | ||
+ | router ospf 1 | ||
+ | | ||
+ | ! | ||
+ | router ospf 2 | ||
+ | ! on ne touche pas à la distance administrative par défaut de l' | ||
+ | ! à savoir 110 | ||
+ | </ | ||
+ | Ceci provoque la priorité inconditionnelle (pas exactement : voir [[informatique: | ||
+ | |||
+ | * de mettre en place une route-map avec ACL pour filtrer la redistribution et ainsi éviter les boucles de routage : | ||
+ | <code bash> | ||
+ | router ospf 1 | ||
+ | | ||
+ | ! | ||
+ | router ospf 2 | ||
+ | | ||
+ | ! | ||
+ | route-map AS2_to_AS1 permit 10 | ||
+ | match ip address network_2 | ||
+ | ! | ||
+ | route-map AS1_to_AS2 permit 10 | ||
+ | match ip address network_1 | ||
+ | </ | ||
+ | |||
+ | Cela évite que les routes de l'AS2, redistribuées par un R1 dans l'AS1, soient apprises par R2 en tant que route externe et soit également redistribuées à nouveau dans l'AS2, créant une boucle de routage. | ||
+ | |||
+ | Cette solution pourrait être réaliser avec des '' | ||
=====IS-IS===== | =====IS-IS===== | ||
Line 72: | Line 162: | ||
router isis | router isis | ||
- | | + | |
=====Configuration avancée===== | =====Configuration avancée===== | ||
- | * Changer le distance administrative | + | ====passive-interface==== |
+ | |||
+ | Cette commande permet d' | ||
+ | |||
+ | <code bash> | ||
+ | (config-router)# | ||
+ | </ | ||
+ | |||
+ | On peut, par sécurité, mettre le mode passif par défaut sur toutes les interfaces de routage, et ne les activer qu'une par une : | ||
+ | |||
+ | <code bash> | ||
+ | (config-router)# | ||
+ | (config-router)# | ||
+ | </ | ||
+ | ====distribute-list==== | ||
+ | |||
+ | On peut filtrer les routes | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | ex: Filtrer les réseaux RIP redistribués dans l'OSPF (en sortie) | ||
router ospf 3 | router ospf 3 | ||
- | distance 125 10.0.0.1 255.255.255.255 64 | + | distribute-list 61 out rip |
| | ||
- | access-list | + | access-list |
- | access-list 64 permit 10.3.0.0 0.0.255.255 | + | access-list 61 permit any |
+ | |||
+ | ====route-map==== | ||
+ | |||
+ | Les route-map permettent de sélectionner certains réseaux (match) et de leur associer une action (set). | ||
+ | |||
+ | Comme les ACLs, elles utilisent un deny implicite à la fin. | ||
- | * Changer la métrique des routes injectées dans l'OSPF : on remplace 1 par 1000 et 2 par 2000 (on utilise une route-map): | + | ex: Changer la métrique des routes injectées dans l'OSPF : on remplace 1 par 1000 et 2 par 2000 (on utilise une route-map): |
router ospf 3 | router ospf 3 | ||
Line 100: | Line 216: | ||
route-map CONVERT permit 30 | route-map CONVERT permit 30 | ||
- | * Filtrer les réseaux RIP redistribués dans l'OSPF | ||
- | | + | ====Distance administrative==== |
- | distribute-list 61 out rip | + | |
- | + | La distance administrative permet aux routeurs de privilégier les routes apprises par certains protocoles de routage (jugés plus fiables), indépendamment de la métrique de celle-ci. Plus une source est jugée fiable, plus sa distance administrative sera faible pour prioriser ses routes par rapport à une source moins fiable. | |
- | access-list | + | |
- | | + | Chaque source possède une distance administrative par défaut dont voici le récapitulatif : |
+ | ^Connected | ||
+ | ^Static | ||
+ | ^EIGRP summary route |5| | ||
+ | ^eBGP |20| | ||
+ | ^EIGRP (internal) | ||
+ | ^IGRP |100| | ||
+ | ^OSPF |110| | ||
+ | ^IS-IS | ||
+ | ^RIP | ||
+ | ^Exterior Gateway Protocol (EGP) |140| | ||
+ | ^On Demand Routing (ODR) |160| | ||
+ | ^EIGRP (external) | ||
+ | ^iBGP |200| | ||
+ | ^Inconnu* | ||
+ | |||
+ | * : La distance de 255 détermine une source inconnue qui ne sera pas prise en compte dans la table de routage. | ||
+ | |||
+ | <note warning> | ||
+ | Rappel : la détermination de la meilleure route se fait dans l' | ||
+ | * plus long préfixe (~ masque réseau) | ||
+ | * plus faible distance administrative | ||
+ | * plus faible métrique | ||
+ | Cela signifie que la distance administrative ne rentre en ligne de compte qu'à préfixe équivalent. Si tous ces paramètres sont égaux, on se trouve en ECMP et les paquets sont répartis sur les 2 next hop | ||
+ | |||
+ | Concrètement, | ||
+ | </ | ||
+ | |||
+ | Pour changer le distance administrative des routes apprises par la source 10.0.0.1 qui matchent l'ACL 64 : | ||
+ | <code bash> | ||
+ | router ospf 3 | ||
+ | distance 125 10.0.0.1 255.255.255.255 64 | ||
+ | ! | ||
+ | access-list | ||
+ | access-list 64 permit 10.3.0.0 0.0.255.255 | ||
+ | </ | ||
+ | |||
+ | Avec l' | ||
+ | <code bash> | ||
+ | distance eigrp 80 100 | ||
+ | </ | ||
+ | |||
+ | (Avec du BGP : '' | ||
+ | =====Liens===== | ||
+ | * [[http:// | ||
+ | * [[http:// |
informatique/cisco/redistribution_de_route.1229185702.txt.gz · Last modified: 2013/10/14 20:52 (external edit)