Les policy-based routing sont toujours configurées en entrée
sur les interfaces de routeurs.
Les route-map sont une forme de policy-based
routing et analysent donc que les paquets entrants. Les route-map utilisent des
access-list standard pour étudier la source d'un paquet, ou étendue pour étudier
la source et la destination d'un paquet.
Les interfaces nulles sont des
interfaces virtuelles qui sont souvent utilisées à la place d'access-lists. Le
trafic envoyé sur une interface nulle est automatiquement détruit.
Exemple
router(config)#route-map drop_host permit
10
router(config-route-map)# match ip address
100
router(config-route-map)# set interface null0
router(config)#
route-map drop_host permit 20
router(config-route-map)# match ip address
1
router(config-route-map)# st interface S1
…
router(config)#
access-list 100 permit 10.0.2.14 0.0.0.0 10.0.1.98 0.0.0.255
router(config)#
access-list 1 permit any
router(config)# interface S0
router(config-if)#
ip policy route-map drop_host La commande route-map drop_host permit 10
définit une route-map qui se nomme drophost.
La séquence 10 représente la
première occurance de la route-map.
La configuration de la route-map: match
ip address 100, demande au routeur d'analyser l'adresse source des paquets qui
arrivent, en utilisant les définitions de l'access-list 100.
L'access-list
étendue 100 demande au routeur d'autoriser le trafic issu de l'adresse 10.0.2.14
à destination de l'adresse 10.0.1.98.
La commande set interface null0
commande au routeur de forwarder les paquets qui conviennent aux conditions de
la liste 100, sur l'interface virtuelle 100.
L'interface virtuelle null0 est
utilisée à destination du trafic qui doit être détruit.
La séquence 20
utilise une autre occurance math ip address , qui pointe sur l'access-list
standard 1.
L'access-list 1 se terminant par implicite deny any, elle permet
le passage pour tout le trafic reçu par la policy-routed-interface.
La
commande set interface S0 dirige ce trafic entrant sur l'interface de sortie
S0.
Les policy-based routing sont toujours basées sur les entrées
d'interfaces et n'analisent donc que les paquets entrants.
La conséquence est
l'utilisation de la commande ip policy route-map drop_host pour assigner la
route amp drop_host sur l'interface S0
L'optimisation du process de routage passe
par plusieurs mécaniques:
La redistribution
Le
filtrage
Les policies based
La redistribution est le fait d'implanter des routes apprises
par un protocle de routage dans un autre.
Seed Metric : C'est le
métrique initial d'une interface lors d'une redistribution.
Les routes
redistribuées ne sont pas directement connectées au routeur, elles sont apprises
par des protocoles.
Si un routeur frontalier doit redistribuer des routes, il
doit tenir être capable de traduire les métriques d'un protocole dans un
autre.
Ce type de métrique est appelé un seed métrique ou dfault-metric, il
est définit lors de la configuration de la redistribution.
router# default-metric --> La
commande pour établir un seed métrique à une route.
Les commandes
de redistribution s'introduisent sur le routeur de destination, celui qui agit
sur la redistribution.
Les commandes de redistribution dépendent du protocole
de routage.
La redistribution d'IGRP dans EIGRP est automatique si les 2
protocoles appartiennent au même AS.
La configuration de la redistribution
suit les étapes suivantes:
1° identifier le boundary router
2° déterminer
quel est le core protocol (OSPF et EIGRP)
3° déterminer quel est l'edge
protocol.
4° sélectionner une méthode d'injection de l'edge protocol dans le
core protocol.
5° Considérer comment injecter le core prorocol dans l'edge
protocol.
router(router-config)# redistribute eigrp 100 metric 30 metric-type 1 --> configure la redistribution d'EIGRP AS=100, avec un métrique (seed-metric) de 30, en utilisant des annonces E1 (externes)
Le métrique est obligatoire, soit dans la configuration
d'OSPF soit dans la configuration globale en utilisant :
router(config)# default-metric bandwidth delay reliability
loading mtu -->
pour EIGRP
router(config)# default-metric
number --> pour OSPF
On
redistribue souvent l'edge protocol dans le core, alors que dans le chemin
inverse on utilise plutôt une default route ou une route statique ou on filtre
la redistribution, ou on redistribue en changeant l'administrative
distance.
router(config-router)# passive interface
interface --> silent router. Dans ce cas
le routeur est réceptif aux protocoles de routages mais n'envoir plus
rien.
Le default-network: le routeur assure qu'il est le default
gateway. Il envoie donc une default route aux autres routeurs. en annonçant que
c'est lui qui est le default gateway. L'interêt réside dans la propagation de la
default-route. En fait cette commande ne procure aucun effet direct sur le
routeur sur lequel elle est configurée.
Le filtrage de routes s'établit par la commande
distribute-list.
Cette commande utilise une liste d'accès simple pour
permettre ou non certaines routes.
Les access-list peuvent être appliquées
pour transmettre ou recevoir des routing updates.
router# router eigrp
1
router(config-router)# network 172.16.0.0
router(config-router)# network
192.168.5.0
router(config-router)# distribute-list 7 out
S0
…
access-list 7 permit 172.16.0.0 0.0.255.255
Dans cet exemple une
access-list n°7 est créée, qui ne permet que l'adresse source
172.16.0.0.
Cette access-list est appliquée au protocole de routage EIGRP en
sortie de l'interface S0.
Seuls les informations concernant le réseau
172.16.0.0 seront propagées.
De ce fait le réseau 10.0.0. ne sera pas vu au
delà de l'interface S0.
Exemple d'une route staique redistribuée et filtrée dans
EIGRP:
ip route 10.0.0.0 255.0.0.0 192.168.7.9
ip route
172.16.0.0 255.255.0.0 192.168.7.5
!
router eigrp
1
network
192.168.7.0
default-metric 10000 100 255 1
1500
redistribute
static
distribute-list 3 out static
!
access-list 3 permit 10.0.0.0
0.255.255.255
Dans notre exemple, la route 10.0.0.0 est passée au
routeur suivant , alors que la route 172.16.0.0 est filtrée.
router(config-router)# distance weight [address
mask [access-list n°|name]] [ip]è utilisé par tous
les protocoles sauf EIGRP et BGP redistribution
router(config-router)#
distance eigrp internal-distance
external-distance è EIGRP redistribution
Il s'agit d'access-list complexes qui permettent le cas
échéant de modifier le routage, en fonction de la source on peut imposer le
routage.
router(config)# route-map map-tag
[permit|deny] [sequence n°]è définit les
conditions de la police de routage
match {conditions}
--> définit les conditions à réaliser
set
{actions}--> définit les actions quand une occurrence est
vérifiée
Les route amps permettent d'implanter des polices qui font que
sélectivement les paquets peuvent suivrent des chemins différents. De plus cette
fonction permet de marquer le trafic avec différentes valeur de TOS (Type Of
Service)
router(config-if)# ip policy route-map
map-tag --> sur l'interface
entrante, spécifie la police qui sera aplliquée.
router(config-if)# ip
route-cache
policy
--> permet le fast switching sur la police
appliquée.
On applique toujours la policy sur l'interface entrante, là où on
contrôle la distribution du trafic.
Le sequence number sert à organiser les
commandes dans la liste.show ip policy
show route-map
[map-name]
router(config)# route-map
map-tag [permit|deny]
[sequence-number]
router(config-route-map)# match
{conditions}
router(config-route-map)# set {actions}
exemple:
router(config)# route-map
map-tag [permit|deny] [sequence-number]
router(config-route-map)# match
{conditions}
router(config-route-map)# set ip next-hop
ip-address
router(config-route-map)# set interface type
number