jueves, 27 de junio de 2013

OSPF. Qué son los LSA?

Para trabajar con un protocolo de enrutamiento, en especial con OSPF, es muy importante tener bien clara la teoría, así que me voy a tomar unos minutos para explicar que son los famosos LSA, para que sirven y por qué es tan importante conocerlos.

Los LSA (Link State Advertisements) son, como dicen sus siglas en inglés, actualizaciones del estado de los enlaces, es decir, son los paquetes que contienen toda la información referente a rutas, quien se conecta con quien, interfaces, costos, etc... Cada vez que una interfaz levanta o cae, son los LSA quienes llevan esta información a todos los routers. Obviamente juegan un papel FUNDAMENTAL en el funcionamiento del OSPF, es por ello que para un buen diseño y troubleshoot debemos conocerlos, entenderlos y quererlos.

Existen diferentes tipos de LSA, los cuales describo a continuación:

LSA Type 1 (Router LSA)

Un LSA tipo 1 es quien lleva la identificación de cada router (Router-id) dentro de un área y los enlaces que lo conectan. Cada router que hable OSPF crea un LSA tipo 1 para si mismo, y luego lo envia dentro del área al que pertenece. Este LSA es transmitido hacia cada neighbour y viceversa, hasta que todos tengan la misma copia de LSA. Si aún no se ha elegido ningún DR, muestra una lista de las interfaces con sus subredes, mascaras y costos. Si ya se eligió el DR entonces muestra la IP del DR


LSA Type 2 (Network LSA)

Los LSA tipo 2 son enviados dentro del área por el DR y contienen las redes que tiene conectadas y sus máscaras, ayudando así a moldear la topología de la red.


LSA Type 3 (Network summary)

Los LSA tipo 1 y 2 solo fluyen dentro de un área, o sea los ABR no los transmiten. Ellos generan LSA tipo 3 para cada subred en un área y luego las publica en las otras áreas, permitiendo que las mismas aprendan sobre ellas.

Hay que acotar que, aunque se llamen "Network summary" los LSA tipo 3 no son utilizados para hacer sumarización.


LSA Type 4 (ASBR Summary)

Son como los tipo 3, pero publica son las rutas necesarias para llegar a un ASBR.


LSA Type 5 (External LSA)

Los LSA Tipo 5 son creados por los ASBR y contienen las rutas que son redistribuidas por otro protocolo de enrutamiento o por rutas estáticas.


LSA Type 7 (NSSA External)

Los LSA tipo 7 solo existen en redes Cisco, porque son generados por ASBR dentro de un NSSA (Not-so-stubby Area). En un NSSA los LSA tipo 5 son filtrados, entonces si dentro de esa área existe un router que quiera redistribuir rutas estáticas u otro protocolo de enrutamiento, este debe transmitirlos a través de LSA tipo 7 para que el ABR no los filtre, sino que al recibirlo los convierte en LSA tipo 5 y los transmite al resto de las áreas.


Para comprender mejor el uso de los LSA, les recomiendo leer el post referente a las áreas OSPF.
Espero haber ayudado en algo, cualquier duda y/o comentario por favor comenten!

Néstor.

OSPF. Areas y Sumarización

Nota: para comprender mejor este post recomiendo leer el post referente a los LSA de OSPF

Levantar OSPF, así como cualquier otro protocolo de enrutamiento parece ser una tarea superfacil. Basta con escribir Router OSPF X, declarar las interfaces que van a hablar OSPF y listo... Todo fino... o no?

...El detalle está en que el OSPF realmente sea más eficiente que el esquema de enrutamiento estático. Y es que una vez arriba el OSPF a lo hagas un show ip route o un show ip route ospf vas a ver la cantidad ENORME de rutas, muchas más que las que verías en un esquema de enrutamiento estático. Cómo arreglamos esto? es ahí donde entran las áreas en OSPF.

Imaginemos una topología como la siguiente:



En la tabla de enrutamiento de cada uno de los routers veremos absolutamente todas las rutas. Pero si nos fijamos bien, R1 sólo tiene una forma de llegar a los otros routers, que es a traves de R2. De igual manera pasa con R5, solo puede llegar al resto de la red a traves de R4. Si fuese enrutamiento estático utilizaríamos una ruta por default en R1 y R5... pero como estamos hablando de OSPF, entonces la solución es crear un area para R1 y otra para R5, de la siguiente manera:

Y aqui es cuando introducimos los siguientes tipos de area:

1. Stubby Area: filtra los paquetes LSA tipo 5 que contienen la información acerca de rutas externas al sistema autónomo, es decir, rutas estáticas redistribuidas o de otros protocolos de enrutamiento. Cuando los routers necesiten enrutar hacia redes que esten en otro sistema autónomo van a usar una ruta por defecto que se la envia el ABR (en nuestro caso R2) a los otros routers internos del área Stub (R1). Un area Stubby no puede tener un ASBR, es decir ni conexiones a otros protocolos de enrutamiento, ni redistribucion de rutas estaticas o redes conectadas.
Se configura de la siguiente manera:


R1:
router ospf 1
area 1 stub
R2:
router ospf 1
area 1 stub

2. Totally Stubby Area: Este es más depravao que Stubby porque filtra los LSA tipo 3, 4 y 5, en este caso R2 enviaría una ruta por defecto para todas las rutas externas y a diferencia de en el caso anterior SUMARIZADAS (esa es la mayor diferencia con Stub).

Tampoco puede tener ASBR ni nada de eso chevere...

Se configura de la siguiente manera:

R1:
router ospf 1
area 1 stub
R2:
router ospf 1
area 1 stub no-summary

3. Not-So-Stubby Area: Imagínense que R1 tiene unas rutas estáticas que quiere transmitir, pero está dentro de un Stubby Area. Como el router filtra los LSA tipo 3, 4 y 5, el NSSA transmite esta información como LSA tipo 7. Luego esta información llega a R2 y la convierte de nuevo en LSA 5. Es una hermosa maraña, y es la forma de tener ASBR en un area Stub. Este area es propietario de Cisco.
Se configura de la siguiente manera:
R1:
router ospf 1
area 1 nssa
R2:
router ospf 1
area 1 nssa

4. Totally Stuby Not-So-Stubby Area: Bingo! esta es la que más me gusta. Esta viene siendo como la Totally Stubby Area, pero, al igual que en la NSSA, transmite la información como LSA7 y luego el ABR lo convierte en LSA tipo 5. Este es el area que permite mayor sumarización, pero manteniendo la libertad de redistribuir una que otra ruta y/o protocolo. Por supuesto, tambien es propietaria de Cisco.
Se configura de la siguiente manera:
R1:
router ospf 1
area 1 nssa
R2:
router ospf 1
area 1 nssa no-summary

Siempre es bueno tener presente la teoría para poder comprender las los escenarios que se presentan en la vida real, sin embargo en una próxima entrada montaré un laboratorio en gns3 para ilustrar esta configuración.

Cualquier duda o comentario por favor comenten.

Néstor

Areas OSPF. Laboratorio


Este es un laboratorio para complementar el post sobre las Areas OSPF y la sumarización. Veamos el siguiente ejemplo:




En el router R1 está creada la loopback 10.1.1.1/32 declarada en ospf, en r2 tengo la loopback 200.44.32.12/24 recreando una salida a internet, y tengo rutas estáticas de la red 200.59.x.x redistribuidas en el proceso OSPF; en R4 tengo la loopback 10.4.4.1/24 y una ruta estatica de la red 69.25.x.x redistribuida en OSPF.

Veamos la tabla de enrutamiento de R1:


Podemos ver las direcciones IP 200.59.x.x como E2 que son las rutas estáticas creadas en R2 hacia internet, las 10.x.x.x que son las interfaces de los routers presentes en otras áreas que no sean el área 1; la ruta 0.0.0.0 también como E2 que dice que el default Gateway lo tiene R2. Ahora veamos lo que sucede si convertimos el área 1 en un stubby área. Configuremos lo siguiente:


R1:

Router ospf 1

Área 1 stub

R2:

Router ospf 1

Área 1 stub



Al ingresar estos comandos estamos diciendo que el área 1 es un área stub. El ospf caerá y levantará de nuevo. Y qué debería suceder? Pues recordemos que en un área stub el ABR (en nuestro caso R2) filtrará todos los LSA 5, es decir, las rutas externas a nuestro proceso OSPF. Veamos cómo queda la tabla de enrutamiento de R1:




Efectivamente podemos ver que todas las rutas que aparecían como E2 desaparecieron de la tabla de enrutamiento. R1 sabe ahora que cualquier cosa que no conozca debe buscarla por R2, lo que podemos ver en la última ruta.


Ahora convirtamos el área 1 en un área Totally Stub. De esta forma filtraremos los LSA tipo 3, 4 y 5. Simplemente debemos agregar el comando no-summary en el ABR (R2):


R2:

Router ospf 1

Área 1 stub no-summary



Veamos cómo queda la tabla de enrutamiento:



Como podemos ver la tabla de enrutamiento se redujo drásticamente. Ahora sólo aparecen las interfaces directamente conectadas, y como el área 1 solo tiene 1 salida hacia las otras áreas que es a través de R2, simplemente utiliza una ruta por default para acceder al resto de las áreas. Si comparamos esta tabla de enrutamiento con la tabla original es evidente el procesamiento que estaremos ahorrándole a R1.

Ahora veamos la tabla de enrutamiento de R4:

R4:



En el caso de R4 no podemos convertirla en un Totally Stuby Area porque tenemos unas rutas estáticas, las cuales se transmiten a las otras áreas por medio de LSA tipo 5. La solución para este caso es configurarla como un Totally Stuby Not-so-stubby Área. De esta forma el ABR (R3) va a filtrar los LSA de igual manera que lo hace R2, sólo que al ser un NSSA las rutas estáticas de R4 no se van a transmitir por LSA 5 sino por LSA7; entonces R3 no las va a filtrar pero va convertir los LSA7 en LSA 5 para poder transmitirlos hacia las otras áreas. Suena complicado pero veamoslo en acción. Configuremos:



R1:

Router ospf 1

Área 1 nssa

R2:

Router ospf 1

Área 1 nssa no-summary





La tabla de enrutamiento de R4 queda de la siguiente manera:





Igual que en R1, todas las rutas aprendidas por OSPF fueron sumarizadas en una única ruta 0.0.0.0 hacia R3, y la ruta estática 69.25.160.15 se mantiene, ya que es una ruta creada en el mismo router. Veamos la tabla de R3:





Como podemos ver en R3 aparece la ruta hacia la 69.25.160.15 como N2 que se refiere a un NSSA y se le hace ping a todo.



Con este laboratorio pudimos ilustrar los distintos comportamientos de las áreas en OSPF y cómo sumarizar con ellas, así como entender para que sirve cada tipo de LSA y por qúe es tan importate conocerlos. Espero que este post haya sido de ayuda, cualquier duda por favor comenten.



Saludos,
Néstor

viernes, 21 de junio de 2013

Plantilla de configuración de QoS like a boss...

    Esta es una plantilla para configurar calidad de voz en los routers cisco. Lo unico que hay que hacer es configurarle el comando bandwith a la interfaz donde se va a aplicar, para que el router pueda calcular el porcentaje de ancho de banda correctamente. También se pueden cambiar los porcentajes de BW si se desea.

    1. Crear los class-map para taguear los DSCP.

class-map match-any VOZ-SIGNALING
 match  dscp cs3
 match  dscp af31
 exit
class-map match-any VOZ-RTP
 match  dscp ef
 exit


    2. Crear la politica en donde se le asocia un porcentaje del ancho de banda a cada class-map creado.


policy-map qos
  class VOZ-RTP
  priority percent 10
  class VOZ-SIGNALING
  bandwidth percent 8
  class class-default
  fair-queue
  random-detect
 


3. Aplicar la política a la interfaz.

interface FastEthernet 4
 service-policy output qos

C'est tout!

Néstor.