PROTOCOL INDEPENDING
ROUTING
JNO-102
GRUPO UNIREG 2016
Rutas estáticas. Next-Hop Options.
Una ruta estática en JUNOS es una ruta hacia un destino con una dirección de siguiente salto asignada. Si queremos
introducir una ruta en la tabla de enrutamiento, la dirección de siguiente salto tiene que ser valida. Esto implicara que el
router sea capaz de reenviar paquetes usando la dirección de siguiente salto.
• Next-Hop Options
Dirección IP directamente Una dirección ip perteneciente a una subred físicamente conectada suele usarse como dirección de
conectada siguiente salto. La interfaz conectada al router remoto es usada para el reenvio de paquetes.
Dirección IP remota Se puede usar cualquier dirección IP conocida perteneciente a la red como dirección de siguiente salto. El
router local realizará una búsqueda recursiva en la tabla inet.0 para localizar la subred a la que pertenece la
dirección asignada y asociarla a una interfaz de salida.
reject El paquete recibido se desechará informando al emisor del paquete ip recibido con un mensaje ICMP
“Destination Host Unreachable”.
discard El paquete recibido se desechará sin informar al emisor del paquete ip recibido.
Siguiente salto calificado Las rutas que utilizan un qualifield next hop permiten asignar varias direcciones ip de siguiente salto y/o
(Qualified next hop) diferentes valores de preference (distancia administrativa) a una sola ruta estática. Varias versiones de la
misma ruta aparecerán en la tabla de enrutamiento al mismo tiempo, pero con diferentes puertas de
enlace y distancias administrativas.
Label switched path (LSP) En una red configurada para usar MPLS una ruta estatica asignará un LSP como dirección de siguiente salto.
Rutas estáticas. Next-Hop Options.
• Floating static route
Este concepto sirve para aclarar el concepto de Qualified next hop, donde una misma ruta puede tener varias direcciones de siguiente
salto. Si visualizamos la floating static route de forma vertical.
Los valores en la parte superior,
“los que flotan”, son poco confiables.
Next-hop N preference value N
Next-hop N-1 preference value N-1
Next-hop N-2 preference value N-2
Valores confiables (regular static routes)
……………
……………
Next-hop 1 preference value 1
Los valores en el fondo del todo
Son los mas confiables y son los
Que deben ser usados como primera opción.
Static Routes. Attributes.
Atributos por defecto para rutas
estáticas.
Atributos para rutas estáticas
para cada bloque que defina una ruta en cuestión.
Si se duplica algún atributo que ya esta definido en
El bloque default siempre prevalecerá el definido en
El bloque de la ruta. Lo definido explícitamente en cada bloque
Prevalece sobre lo definido generalmente.
Static Routes. Ejemplos de configuracion
Definición una ruta estática y su comprobación.
Rutas estáticas. Static Routes Attributes.
Opciones de configuración de ruta estática (static-options).
A continuación se muestras las opciones más comunes, no todas la rutas requerirán la configuración de cada atributo.
active * La ruta se quita de la tabla de enrutamiento si la dirección de siguiente salto no está disponible.
passive La ruta se mantiene en la tabla si la dirección de siguiente salto no está disponible.
as-path Asignación manual del atributo as-path para su redistribución en BGP.
community Asignación del valor BGP community a una ruta para su redistribución en BGP.
install * La ruta puede ser copiada en la forwarding table en el PFE.
no-install Una ruta con está opción no será colocada en la forwarding table del router
metric El RE comparará los valores de métrica de cada versión de una ruta y decidirá cual versión usar, en el caso de
que los valores preference de la rutas sean iguales.
no-readvertise La ruta estática no será redistribuida a los protocolos de enrtuamiento.
readvertise Permite que la ruta estatica se exportada de la routing-table y redistribuida .
no-retain * La ruta estática es borrada de la forwarding-table si el proceso de enrutamiento se para.
retain La ruta estática permanece en el forwarding-table aunque el proceso de enrutamiento se pare.
preference Asingación de un valor preference distinto (5 por defecto). Distancia administrativa en CISCO.
* = default values
Aggregated Routes.
Aggregated Routes
Una aggregate route es la segunda forma de encontrar una ruta configurada en JUNOS. Una vez activadas en la tabla de
enrutamiento inet.0, las aggregate route permanecerán hasta que sean manualmente borradas de la configuración. Se usan
para representar varias rutas IP en un solo aviso.
Contributing Routes
La clave para crear una aggregate route activa en la tabla de enrutamiento es la presencia de una o más contributing routes.
Una contributing route es una ruta activa en la tabla de enrutamiento que es mas especifica que la resumida y comparte los
mismos bits más significativos.
Ruta 3º octeto Tipo
192.168.0.0/17 00000000
Aggregate Route
255.255.128.0 10000000
192.168.16.0/24 00010000 Contributing Route
192.168.32.0/24 00100000 Contributing Route
192.168.48.0/24 00110000 Contributing Route
Aggregated Routes. Next-Hop Options
Al contrario que con las rutas estáticas solo se podrán asignar dos valores de siguiente salto para las aggregated
routes.
reject
discard
Los paquetes de estas rutas en realidad no serán rechazados. Recordar, que el propósito de esta ruta es
simplemente representar otras rutas que ya están en la tabla de enrutamiento. Estas rutas más especificas serán
las encargadas de facilitar el siguiente salto para realizar el forwarding.
En el único caso que un paquete será rechazado será cuando una aggregate route no contenga ninguna
contributed route. Más adelante en está presentación, en los atributos de aggregated routes se analizaran los
valores que impiden este comportamiento.
Aggregated Routes. Attributes.
Opciones de configuración de las aggregated routes (aggregated-options).
A continuación se muestras las opciones más comunes, no todas la rutas requerirán la configuración de cada atributo.
active * La ruta se quita de la tabla de enrutamiento si las contributing routes no están disponibles.
passive La ruta se mantiene en la tabla si no existen contributing routes que la compongan.
as-path Asignación manual del atributo as-path para su redistribución en BGP.
community Asignación del valor BGP community a una ruta para su redistribución en BGP.
brief Con esta opción solo la secuencia mayor común del AS Path de las BGP contributing routes
serán incluidas en la aggregated route.
full * Todos los valores AS Path de las BGP contribuitig routes serán incluidad en la aggregate route.
policy Politicas que definirán que contributing routes compondrán las aggregated routes.
metric El RE comparará los valores de métrica de cada versión de una ruta y decidirá cual versión usar
cuando los valores preference sean iguales..
preference Asingación de un valor preference distinto (130 por defecto).
* = default values
Aggregated Routes. Attributes.
Bloque de opciones por defecto comunes
para todas las aggregated routes.
Bloque de opciones para cada bloque de ruta.
Al igual que en con la rutas estáticas, estos valores
prevalecerán sobre los definidos en el bloque default
en el caso de que se hayan definido las mismas opciones
en ambos bloques.
Generated Routes.
Generated Routes
Una generated route al igual que una aggregated route, sumariza las rutas formadas por
contributing routes y comparte los mismo atributos que las aggregated routes, de hecho el
sistema las reconoce del mismo modo. La diferencia entre generated routes y aggregated
routes es que en las primeras se debe definir una dirección IP de siguiente salto válida con
una opción de descarte.
Contributing Routes
Para activar una generated route se necesita de al menos una contributing route en la tabla
de enrutamiento. Las contributing routes deberán tener asignada una dirección IP de
siguiente salto o ser una interfaz conectada punto a punto. Valores de siguiente salto
discard o reject en una ruta implicaran que la ruta no es apta para agregarse a una
generated route.
Generated Routes.
Si suponemos que tenemos varias posibles contributed routes aún si ser participes de ningún conjunto
y ejecutamos un show.
Observamos que tenemos seis rutas, dos estáticas sin siguiente salto, y las siguientes con una dirección ip asignada
de siguiente salto
Generated Routes.
A continuación creamos la generated route.
Comprobamos que la nueva ruta aparece en la tabla de enrutamiento inet.0
Se ha generado una aggregated
con Next-Hop 3.3.3.2. Más adelante
en este capítulo se justificará el porqué
de esta elección de dirección ip de
siguiente salto .
Generated Routes.
Para verificar que sólo las rutas con siguiente salto son participes de la generated route realizamos un show route.
Solo las rutas con dirección
de siguiente salto contribuyen
en la creación de la generated route
Generated Routes. Primary Contributing Route
Cuando se crea una generated route se elige una dirección de siguiente salto. Este siguiente salto es lo que define a la
primary contributing route que no es más que la dirección con el prefijo numérico más bajo. En el caso del ejemplo que
estamos siguiendo correspondería a la ruta 192.168.16.0/24.
El next-hop de la generated route
y el de la ruta con el prefijo numérico
más bajo coinciden, lo que implica que
esta última es la primary contributing route
Generated Routes. Primary Contributing Route
Un modo fácil de ver cual es la primary contributing route es invocar el comando show route
Si se añadiese una ruta con menor prefijo a la
contributing route, automáticamente pasaría
A ser la nueva primary contributing route.
Martian Routes.
Las direcciones “Martian” son direcciones de host o red sobre las cuales toda la información de enrutamiento es
ignorada. Cuando son recibidas por el dispositivo de enrutamiento, estas rutas son ignoradas. Suelen ser enviadas por
sistemas mal configurados en la red y que tienen direcciones de destino que son obviamente invalidas.
Muchas de la rutas establecidas por defecto en Juniper proceden del espacio de direcciones de la IANA
Martian Routes.
Las direcciones “Martian” son direcciones de host o red sobre las cuales toda la información de enrutamiento es
ignorada. Cuando son recibidas por el dispositivo de enrutamiento, estas rutas son ignoradas. Suelen ser enviadas por
sistemas mal configurados en la red y que tienen direcciones de destino que son obviamente invalidas.
Muchas de la rutas establecidas por defecto en Juniper proceden del espacio de direcciones de la IANA
Martian Routes. Implementación
En JUNOS no será permitida la inclusión de una “martian route” en la tabla de enrutamiento. El router local nunca
reenviara paquetes a esos destinos. Muchas redes confían en el uso de espacios direcciones IP privadas y requieren
que esas rutas aparezcan en la tabla de enrutamiento. La inclusión en la lista “martian” por defecto puede hacer que su
uso sea implosible. Para permitir la máxima flexibilidad de usuario, se puede definir “martian routes” adicionales
mediante la siguiente sintaxis. De esta manera una “martian route” podrá ser incluida en la tabla de enrutamiento.
• Exact
• Longer
• Orlonger
• Prefix-length-range
• Through
• Upto
Estas variables se discutirán en el
Tema 4
Quita la ruta de la “martian list” por defecto
y permite que la ruta pueda estar en la tabla de
Ruta actual que esta designada como “martian route” enrutamiento
Martian Routes. Implementación
Definición de una “martian route”.
Verificación.
Si realizamos un show route, veremos que la ruta que hemos definido como martian no aparecerá en
La tabla de enrutamiento. Tendriamos que invocar el comando show route hidden para poder observarla.
JUNOS software Routing Tables.
Tabla Descripción
inet.0 Tabla usada para almacenar rutas unicast IPv4. Tabla por defecto donde las interfaces y
protocolos de enrutamiento guardan la información
inet.1 Tabla usada para almacenar rutas multicast IPv4. Llamada multicast forwarding cache
inet.2 Tabla usada para que los protocols multicast eviten routing loops. Reverse Path Forwarding
(RPF)
inet.3 Contiene las direcciones ip de salida de una ruta conmutada etiquetada (LSP) de MPLS
inet.4 Guarda información aprencidad mediate Multicast Source Discovery Protocol (MSDP)
inet6.0 Contiene las rutas IPv6 unicast.
mpls.0 Es una switching table. Se guardan los valores de las etiquetas MPLS
bgp.13vpn.0 Guarda información de capa 3 de un entorno VPN.
bgp.12vpn.0 Guarda información de capa 2 de un entorno VPN.
JUNOS software Preference Values.
Balanceo de Carga.
Por defecto, sólo se instala una dirección de siguiente salto en la tabla de enrutamiento. Si queremos que JUNOS balancee la
carga cuando existen varias rutas con el mismo coste a un destino realizaremos los siguiente.
• Creación de una “routing policy” que balancee la carga.
[edit policy-options]
user@router1# set policy-statement balance-traffic from route-filter 192.168.10.0/24 orlonger
user@router1# set policy-statement balance-traffic then load-balance per-packet
• Para aplicar la política.
user@router1# top edit routing-options
[edit routing-options]
user@router1# set forwarding-table export balance-traffic
• Comprobación
user@router1> show route forwarding-table matching 192.168.10/24
El uso, configuración y definición de políticas se explican en el siguiente tema.