Laboratorio de OSPF

Red con una única área

Diagrama de red para el protocolo OSPF <span data-label="fig:ospf1"></span>

Introducción

  1. En el fichero lab-OSPF.tgz está definida una red como la que se muestra en la figura [fig:ospf1]. Descomprime el fichero de configuración del escenario lab-OSPF.tgz. Al arrancar NetGUI debes abrir el escenario definido en el directorio lab-OSPF.

  2. Arranca todas las máquinas de una en una. Las máquinas pc1 y pc2 tienen rutas por defecto a r1 y r4 respectivamente. Los routers no tienen configurada ninguna ruta, salvo la de las subredes a las que están directamente conectados. Compruébalo con la orden route. En los siguientes apartados se configurará OSPF en cada router para que las tablas de encaminamiento permitan alcanzar cualquier punto de la red

Activación de r1

Para observar los mensajes que envíe r1 cuando se active OSPF, arranca tcpdump en pc1, en r2(eth0) y en r5(eth0) utilizando la opción -s 0 para que capture los paquetes completos y guardando la captura en un fichero con la opción -w.

A continuación configura OSPF en el encaminador r1 para que su identificador de router sea la mayor de sus direcciones IP y para que exporte las rutas hacia las tres redes a las que está conectado. Para ello edita los ficheros daemons y ospfd.conf, y después arranca quagga. Debes configurar todos los routers de la figura dentro del mismo área, con identificador de área igual a 0.

Espera un minuto aproximadamente e interrumpe las capturas.

Analiza el comportamiento de r1 estudiando las capturas con wireshark y consultando el estado de OSPF a través de su interfaz VTY y de la orden route:

  1. Observa los mensajes HELLO que se envían al arrancar quagga en r1 y analízalos utilizando Wireshark.

    1. ¿Cada cuanto tiempo se envían dichos mensajes? Observa si coincide con el valor del campo Hello Interval de los mensajes.

    2. Comprueba que el campo Area ID se corresponde con el identificador de área que has configurado en el fichero ospfd.conf.

    3. Comprueba que el identificador del router se corresponde con el que has configurado en el fichero mirando el campo Source OSPF Router de la cabecera obligatoria de OSPF en los mensajes HELLO.

      Comprueba que este identificador es el mismo para los mensajes enviados por cualquiera de las interfaces de r1, aunque los mensajes se envíen con dirección IP origen diferente (cada mensaje llevará como dirección IP origen la de la interfaz de red de r1 por la que se envíe).

    4. Observa el valor de los campos DR y BDR en los primeros mensajes HELLO. ¿Qué ocurre con dichos campos transcurridos 40 segundos después del primer mensaje HELLO? ¿Por qué?

  2. ¿Se observan en las capturas mensajes DB Description o LS Update? ¿Por qué?

  3. ¿Debería haber aprendido alguna ruta r1? Compruébalo consultando la tabla de encaminamiento mediante la orden route.

  4. Consulta la información de OSPF relativa a la tabla de encaminamiento utilizando la interfaz VTY en r1 con show ip ospf route.

  5. Consulta la información de los vecinos que ha conocido r1 a través de los mensajes HELLO recibidos mediante show ip ospf neighbor.

  6. Consulta la información de la base de datos de Router Link States de r1 con show ip ospf database router.

  7. Consulta la información de la base de datos de Network Link States de r1 con show ip ospf database network

Activación de r2

Para observar los mensajes que envíe r2 cuando se active OSPF, y los que envíe r1 a consecuencia de la activación de r2, arranca tcpdump en r1(eth1), en r3(eth0) y en r5(eth0) utilizando la opción -s 0 para que capture los paquetes completos y guardando la captura en un fichero con la opción -w.

A continuación configura OSPF en el encaminador r2 para que su identificador de router sea la mayor de sus direcciones IP y para que exporte las rutas hacia las dos redes a las que está conectado. Para ello edita los ficheros daemons y ospfd.conf, y después arranca quagga.

Espera dos minutos aproximadamente e interrumpe las capturas.

Analiza el comportamiento de r2 y r1 estudiando las capturas con wireshark y consultando el estado de OSPF a través de las interfaces VTY y de la orden route en cada encaminador:

  1. Observa la captura realizada en r1 y responde a las siguientes cuestiones:

    1. ¿Qué tipo de mensajes aparecen cuando r1 detecta la presencia de r2 y viceversa? ¿Cuál es su propósito? ¿Qué IP de destino llevan esos mensajes?

    2. Observa los mensajes LS Request que envían r1 y r2. ¿Qué LSA pide cada uno al otro? ¿Qué IP de destino llevan estos mensajes?

    3. Observa el primer mensaje LS Update que envía r1. Comprueba que se corresponde con el LS Request enviado por r2. Comprueba cómo se corresponde su contenido con lo almacenado en la base de datos de r1 analizada en el apartado anterior. Observa sus campos para ver si este mensaje incluye la información de que r1 ha descubierto a r2 como vecino. ¿Crees que la información contenida en este mensaje deberá cambiar próximamente? ¿Por qué?

      Observa el campo LS Age del anuncio que viaja en el mensaje, y explica su valor.

    4. Observa el primer mensaje LS Update que envía r2. Comprueba que se corresponde con el LS Request enviado por r1. Observa sus campos para ver si este mensaje incluye la información de que r2 ha descubierto a r1 como vecino. ¿Crees que la información contenida en este mensaje deberá cambiar próximamente? ¿Por qué?

      Observa el campo LS Age del anuncio que viaja en el mensaje, y explica su valor.

    5. Observa el segundo y tercer mensajes LS Update que envía r1. ¿Responden a algún LS Request previo? ¿Por qué se envían? ¿Qué información contienen?

      Observa el campo LS Age de los anuncios que viajan en los mensajes, y explica su valor.

    6. Observa el segundo mensaje LS Update que envía r2. ¿Responde a algún LS Request previo? ¿Por qué se envía? ¿Qué información contiene?

      Observa el campo LS Age del anuncio que viaja en el mensaje, y explica su valor.

    7. ¿Por qué razón r2 no envía ningún mensaje Network-LSA?

    8. Observa los mensajes LS Acknowledge. Mira su contenido para comprobar a qué LSAs asienten.

    9. Pasados 40 segundos del arranque de r2, ¿qué ocurre con los campos DR y BDR de los mensajes HELLO que intercambian?

  2. Observa la captura realizada en r5:

    1. Explica por qué no aparecen los mensajes LS Update que crea r1 y envía a r2.

    2. Explica por qué no aparecen los mensajes LS Update que crea r2 y envía a r1, y r1 debería propagar por inundación.

  3. Observa la captura realizada en r3:

    1. Explica por qué no aparecen los mensajes LS Update que crea r2 y envía a r1.

    2. Explica por qué no aparecen los mensajes LS Update que crea r1 y envía a r2, y r2 debería propagar por inundación.

  4. ¿Deberían haber aprendido alguna ruta r2 y r1? Compruébalo consultando la tabla de encaminamiento en ambos encaminadores mediante la orden route.

  5. Consulta la información de OSPF relativa a la tabla de encaminamiento utilizando la interfaz VTY en cada encaminador con show ip ospf route. Comprueba la métrica de cada ruta y a través de qué router se alcanza.

  6. Consulta la información de los vecinos que ha conocido cada encaminador a través de los mensajes HELLO mediante show ip ospf neighbor.

  7. Consulta en cada encaminador la información de las bases de datos de Router Link States y de Network Link States mediante show ip ospf database router y show ip ospf database network respectivamente.

    Comprueba que la información mostrada coincide con el contenido de los últimos LS Update enviados por los encaminadores.

  8. Consulta un resumen de las bases de datos en cada encaminador con show ip ospf database.

Activación de r3 y r4

Para observar los mensajes que envíen r3 y r4 cuando activen OSPF, y los que envíe r2 a consecuencia de la activación de r3 y r4, arranca tcpdump en r1(eth1), en r2(eth1) y en r3(eth1) utilizando la opción -s 0 para que capture los paquetes completos y guardando la captura en un fichero con la opción -w.

Configura OSPF en r3 y en r4, y arráncalos a la vez. Analiza el comportamiento de los encaminadores estudiando las capturas con wireshark y consultando el estado de OSPF a través de las interfaces VTY y de la orden route en cada encaminador:

  1. Trata de suponer los valores de DR y BDR en las subredes 12.0.0.0/24 y 13.0.0.0/24. Comprueba si tus suposiciones son ciertas. Comprueba en los mensajes HELLO de la captura en r3 cómo se ha producido la elección de DR y BDR al arrancar r3 y r4 a la vez.

  2. En la captura en r3 observa el intercambio de mensajes LS Update que se produce mientras arrancan r3 y r4.

  3. En la captura en r2 observa el intercambio de mensajes LS Update que se produce mientras arrancan r3 y r4.

    Observa también en dicha captura los mensajes LS Update que r3 envía por inundación de los recibidos por él de r4. Indica cómo puedes saber si un LS Update lo ha originado el encaminador que lo envía o está siendo propagado por inundación.

  4. Antes de examinar la captura en r1 trata de suponer qué tipos de mensaje aparecerán en ella. Comprueba tus suposiciones.

  5. Trata de suponer qué modificaciones se habrán realizado en las tablas de encaminamiento de cada router. Observa las tablas de encaminamiento utilizando la interfaz VTY con el proceso ospfd para verificar tus suposiciones.

  6. Consulta la información de los vecinos que ha conocido cada encaminador a través de los mensajes HELLO mediante la interfaz VTY.

  7. Consulta en cada encaminador la información de las bases de datos de Router Link States y de Network Link States.

    Comprueba que la información mostrada coincide con el contenido de los últimos LS Update enviados por los encaminadores.

  8. Consulta el resumen de las bases de datos en cada encaminador.

Reconfiguración de rutas:\

Activación y desactivación de r5

Después de realizar los apartados anteriores, OSPF está funcionando en los encaminadores r1, r2, r3 y r4. Por tanto, pc1 y pc2 deberían tener conectividad IP. Compruébalo con las órdenes ping y traceroute.

  1. Interrumpe quagga en los encaminadores r1, r2, r3 y r4. Comprueba que ya no funciona un ping de pc1 a pc2. Deja lanzado el ping de pc1 a pc2, y rearranca quagga en r1, r2, r3, r4, fijándote en los segundos (aproximadamente) que pasan desde que está arrancado quagga en todos los encaminadores hasta que el ping empieza a funcionar. Apunta este valor de tiempo.

  2. Comprueba cómo ahora los valores de DR y BDR en las subredres de la figura pueden haber cambiado con respecto a lo que observaste en los apartados anteriores, ya que ahora quagga estará arrancando más o menos simultáneamente en todos. Indica cuáles son los valores actuales de DR y BDR en cada subred.

  3. Fíjate en la tabla de encaminamiento de r1 que se muestra con la orden route. Fíjate en la métrica para la red 14.0.0.0/24.

  4. Realiza los cambios necesarios para que la ruta seguida por los datagramas IP que envía pc1 a pc2 vayan por la ruta pc1 => r1 => r5 => r4 => pc2 , y para que los que envía pc2 a pc1 vayan por la ruta pc2 => r4 => r5 => r1 => pc1. Para realizar este apartado no podrás añadir o eliminar manualmente rutas en las tablas de encaminamiento. Mirando la tabla de encaminamiento de r1, observa y apunta el número de segundos que aproximadamente tarda en aprender r1 la nueva ruta.

    Comprueba que se está utilizando dicha ruta a través de la orden traceroute. Comprueba las rutas y sus métricas en las tablas de encaminamiento de cada encaminador.

    Comprueba cómo ha mejorado la métrica para la red 14.0.0.0/24 desde el router r1.

  5. Comprueba la ruta que están siguiendo los mensajes intercambiados entre pc1 y pc2 con traceroute.

    Deja corriendo en pc1 un ping hacia pc2.

  6. A continuación interrumpe la ejecución de quagga en el encaminador r5 utilizando la orden /etc/init.d/quagga stop. Podrás observar con la orden route que ahora r5 no conoce rutas aprendidas por OSPF. Tampoco exporta información de vecinos hacia otros encaminadores.

  7. Observarás que el ping de pc1 a pc2 deja de funcionar durante un buen rato (fíjate en el número de secuencia icmp_seq, éste aumenta con cada paquete enviado cada segundo).

    Observa durante este periodo, en el que no está funcionando r5, la tabla de encaminamiento de r1 y r4.

    Observa también durante este periodo la lista de vecinos conocidos por r1 y por r4 (utilizando la interfaz VTY con el proceso ospfd). Observa la evolución de la columna Dead Time de las distintas entradas. ¿Qué entradas no reinician la cuenta desde los 40 segundos? ¿Por qué?

  8. Espera hasta que vuelva a funcionar el ping (fíjate en el número icmp_seq). Observa y apunta el número de segundos que aproximadamente está sin funcionar el ping debido a que aún no se ha olvidado la ruta a través de r5. Comprueba que finalmente r5 ha desaparecido de entre los vecinos conocidos por r1 y r4.

  9. Comprueba ahora las entradas de las tablas de encaminamiento de r1 y de r4.

    Interrumpe el ping y comprueba la ruta que están siguiendo los mensajes intercambiados entre pc1 y pc2 con traceroute.

  10. Por último, vuelve a arrancar de nuevo quagga en r5. Observa cómo cambian las tablas de encaminamiento en r1 y r4 y apenas se interrumpe el ping.

    Comprueba de nuevo cuál es ahora la ruta que están siguiendo los mensajes intercambiados entre pc1 y pc2 con traceroute. Observa y apunta el número de segundos que aproximadamente tarda en aprenderse de nuevo la ruta a través de r5, mirando continuamente la tabla de encaminamiento de r1. Mira también los números de secuencia de los icmps del ping, y fíjate si alguno se pierde mientras se cambia de la ruta antigua a la ruta nueva.

Borrado de rutas

Comprueba ahora qué ocurre cuando se interrumpe quagga en uno de los routers de la figura:

  • Interrumpe quagga en los encaminadores r1, r2, r3, r4, y r5. Inicia quagga en los mismos de tal forma que el arranque sea aproximadamente simultáneo y observa los DR y BDR de cada subred.

  • Arranca dos capturas de tráfico para que se capturen todos los paquetes de la subred 15.0.0.0/24 y de la subred 11.0.0.0/24. Interrumpe quagga en r4. Espera unos segundos hasta que en r1 haya desaparecido la subred 14.0.0.0/24 e interrumpe las capturas de tráfico. Comprueba que no funciona un ping entre pc1 y pc2. Observa cómo han cambiado las tablas de encaminamiento de los routers.

  • Analiza las capturas de tráfico e indica que anuncios LSA ha recibido r1 como resultado de haber apagado r4. Explica por qué crees que no hay un mensaje Network-LSA de la subred 13.0.0.0/24 y sí hay un mensaje Network-LSA de la subred 16.0.0.0/24. Observa con atención el campo LS-Age de este mensaje.

  • Observa en las bases de datos de Router-LSA como el mensaje Router-LSA de r4 sigue permaneciendo. ¿Cuándo crees que se borrará? ¿Cómo saben los routers de la figura que ha desaparecido r4?

Red con varias áreas

En el fichero lab-OSPF-Areas.tgz está definida una red como la que se muestra en la figura [fig:ospf2]. Descomprime el fichero de configuración del escenario lab-OSPF-Areas.tgz. Al arrancar NetGUI debes abrir el escenario definido en el directorio lab-OSPF-Areas.

Diagrama de red con todos los *routers* en el área 0<span
data-label="fig:ospf2"></span>

  • Arranca todas las máquinas de una en una. Las máquinas pc1 y pc2 tienen rutas por defecto a r1 y r4 respectivamente. Los routers tienen configurado OSPF, estando todos ellos en el área 0.

  • Arranca quagga en todos los routers, y espera aproximadamente un minuto.

  • Con la orden route comprueba las tablas de encamiento en r1, r4, r6 y r9. Deberían tener ruta a todas las redes de la figura. Comprueba el coste de cada ruta.[rutas]

  • Comprueba en esos mismos routers, a través de su interfaz VTY, los mensajes LSU Router-LSA y Network-LSA presentes en sus bases de datos. Toma nota de qué mensajes hay exactamente.[databases]

  • Apaga quagga en todos los routers. Configura ahora todos ellos de forma que se establezcan las áreas que se muestran en la figura [fig:ospf3]. Para ello, edita sus ficheros /etc/quagga/ospfd.conf y cambia el área al que pertenece cada interfaz de cada router en las líneas network.

    Diagrama de red con diferentes áreas<span
data-label="fig:ospf3"></span>

  • Reinicia quagga en todos los routers excepto r4 y r6, y espera aproximadamente un minuto.

  • Mira las bases de datos de r1 y r5. ¿Hay algún mensaje LSU Summary-LSA en ellas? ¿Por qué?

  • Para observar los mensajes que envíen r4 y r6 cuando activen OSPF, arranca tcpdump en r3(eth1), r4(eth3) y r7(eth0).

  • Arranca ahora quagga en r4 y r6, y espera aproximadamente un minuto. Interrumpe las capturas.

  • Localiza en la captura los mensajes LS Update que envía r4 a r3 que permiten a r3 añadir una ruta para cada una de las siguientes redes:

    • 18.0.0.0/24

    • 19.0.0.0/24

    • 20.0.0.0/24

    • 21.0.0.0/24

    ¿De qué tipo de LSAs se trata?

  • Localiza en la captura los mensajes LS Update que envía r6 a r7 que permiten a r7 añadir una ruta para cada una de las siguientes redes:

    • 11.0.0.0/24

    • 12.0.0.0/24

    • 13.0.0.0/24

    • 14.0.0.0/24

    • 15.0.0.0/24

    • 16.0.0.0/24

    • 17.0.0.0/24

    ¿De qué tipo de LSAs se trata?

  • Localiza en las tres capturas qué tipo de LSA contiene el anuncio de la existencia de la red 22.0.0.0/24:

    • cuando r3 la aprende de r4

    • cuando r6 la aprende de r4

    • cuando r7 la aprende de r6

  • Localiza en las tres capturas qué tipo de LSA contiene el anuncio de la existencia de la red 14.0.0.0/24:

    • cuando r3 la aprende de r4

    • cuando r6 la aprende de r4

    • cuando r7 la aprende de r6

  • Comprueba las tablas de encaminamiento en r1, r4, r6 y r9. Comprueba el coste de cada ruta. Compara los resultados con los obtenidos en la pregunta [rutas].

  • Comprueba en esos mismos routers, a través de su interfaz VTY, los mensajes LSU Router-LSA, los Network-LSA y los Summary-LSA presentes en sus bases de datos. Compara con los resultados obtenidos en la pregunta [databases].

results matching ""

    No results matching ""