4 de abril de 2010

Redistribución de rutas.


Para que dos dispositivos (routers o switches capa 3) intercambien información de enrutamiento es preciso, en principio, que ambos dispositivos utilicen el mismo protocolo, sea RIP, EIGRP, OSPF, BGP, etc. Diferentes protocolos de enrutamiento, o protocolos configurados de diferente forma (p.e. diferente sistema autónomo en EIGRP) no intercambian información.
Sin embargo, cuando un dispositivo aprende información de enrutamiento a partir de diferentes fuentes (p.e. rutas estáticas o a través de diferentes protocolos) Cisco IOS permite que la información aprendida por una fuente sea publicada hacia otros dispositivos utilizando un protocolo diferente. Por ejemplo, que una ruta aprendida a través de RIP sea publicada hacia otros dispositivos utilizando OSPF.
Esto es lo que se denomina "Redistribución" de rutas. Utilizar un protocolo de enrutamiento para publicar rutas que son aprendidas a través de otro medio (otro protocolo, rutas estáticas o directamente conectadas).
El mecanismo de redistribución es propietario de Cisco IOS. Este mecanismo establece algunas reglas:
  • La ruta a redistribuir debe estar presenta en la tabla de enrutamiento.
  • No se redistribuyen rutas que están presentes en tablas topológicas de los protocolos pero no en la tabla de enrutamiento.
  • La ruta redistribuida será recibida por el dispositivo vecino con la métrica raíz del protocolo en el que se redistribuye.
¿Para qué se utiliza?
En principio es deseable que una red utilice un único protocolo de enrutamiento.
Sin embargo, en algunos casos puede requerirse el uso de redistribución: fusiones de empresas, diferentes departamentos de una misma empresa administrados por diferentes equipos de personal, entornos multi-vendor, migraciones, etc.
Al momento de abordar una redistribución de rutas se deben tener presentes algunos aspectos particulares del enrutamiento: las diferentes métricas, las distancias administrativas de cada protocolo, las capacidades de enrutamiento classful y classless, y la topología de la red.


Las métricas
Cada protocolo de enrutamiento utiliza una métrica diferente. Esto hace que al redistribuir rutas se pierda la métrica original del protocolo y sea redefinida en los términos del nuevo protocolo. Por ejemplo, si se redistribuye una ruta OSPF con una métrica de 1642 en RIP, RIP le asignará una métrica en cantidad de saltos (entre 1 y 15).
La métrica con la que un protocolo recibe las rutas aprendidas por otro, se denomina métrica raíz.
Cada protocolo utiliza una métrica raíz por defecto:
  • RIP - métrica raíz por defecto: infinito.
  • EIGRP - métrica raíz por defecto: infinito.
  • OSPF - métrica raíz por defecto: 20.
Esta mética raíz por defecto también puede ser modificada utilizando el comando default metric.


Los comandos básicos
Al configurar redistribución debemos indicar al protocolo qué información de enrutamiento redistribuir, y con qué métrica deseamos se redistribuyan esas rutas. Si no indicamos nada, las rutas son redistribuidas con la métrica por defecto.


Router(config)#router rip
Router(config-router)#network 129.100.0.0
Router(config-router)#redistribute ospf 1 metric 2


En este ejemplo indicamos a RIP que redistribuya la información de enrutamiento aprendida a través del proceso 1 de OSPF que se encuentra en la tabla de enrutamiento, con una métrica de 2 saltos.


Redistribución en EIGRP
Al redistribuir información de enrutamiento utilizando EIGRP, es preciso tener presente que la métrica por defecto es infinito. Por lo tanto, si no especificamos métrica, las rutas redistribuidas no aparecerán en la tabla de enrutamiento del dispositivo vecino.
Por otra parte, al definir la métrica es preciso indicar: bandwidth, delay, reliability, load y MTU.
Un ejemplo:


Router(config)#router eigrp 100
Router(config-router)#redistribute static
Router(config-router)#redistribute rip
Router(config-router)#default-metric 10000 100 255 1 1500


Redistribución en OSPF
La métrica por defecto que utiliza OSPF es de 20, por lo que no exige que especifiquemos una métrica para que la ruta sea aprendida por los dispositivos adyacentes. Sin embargo, cuando hay múltiples subredes de una misma red y se desea publicar rutas para cada subred, es preciso indicarlo pues de lo contrario OSPF sumarizará todas las subredes al límite de la clase y publicará una sola ruta.
Un ejemplo:


Router(config)#router ospf 1
Router(config-router)#redistribute static metric 200 subnets
Router(config-router)#redistribute eigrp 100 metric 500 subnets


Redistribución en RIP
Como en EIGRP, al redistribuir en RIP el protocolo utiliza una métrica por defecto de infinito, con lo que es necesario especificar una métrica diferente para que el router vecino incorpore la información de enrutamiento en su tabla.
Un ejemplo:


Router(config)#router rip
Router(config-router)#redistribute static metric 1
Router(config-router)#redistribute ospf 1 metric 2


Enlaces de referencia:


Espero que el post te haya resultado útil.
¿Tenés alguna información o referencia adicional para aportar en este tema....?
Perfecto!!!! agregá un comentario con el detalle.
Muchas gracias.

Oscar Gerometta.