Depto. Automática y computación
Universidad Pública de Navarra
Daniel Morató
daniel.morato@unavarra.es

41309 Laboratorio de Programación de Redes

3º Ingeniero Técnico en Informática de Gestión

Práctica 9 - Enrutamiento con RIP

1.- Objetivos

En esta práctica vamos a ver cómo configurar el protocolo de enrutamiento RIP en los routers Cisco.

2.- Material

3.- Avisos generales

En los ordenadores dispuestos para la realización de estas prácticas (PC A, B y C) se ha creado una cuenta de nombre lpr y password telemat. Esta cuenta tiene permisos para ejecutar mediante el comando sudo ciertos comandos restringidos normalmente al superusuario. Igualmente se le han otorgado permisos para modificar el contenido de ciertos ficheros del sistema necesarios para la realización de la práctica. Para más detalle diríjanse a la documentación sobre los armarios.

Si quieren conservar cualquier fichero entre sesiones guárdenlo en un disquete, dado que no se asegura que los ficheros creados o modificados durante una sesión de prácticas se mantengan para la siguiente.

Disponen de todos los privilegios en los routers Cisco, es decir, como si fueran el superusuario de un sistema UNIX. En general no tengan miedo de explorar los comandos disponibles en el Cisco IOS, sin embargo, tengan cuidado de no realizar cambios que lo inutilicen. Tengan cuidado con comandos que borren ficheros o sistemas de ficheros. También tengan especial cuidado cuando copien ficheros en la flash dado que puede haber un momento en que el router les pregunte si antes de copiar el fichero desean borrar la flash. Nunca le digan que sí a que borre la flash dado que en ella se encuentra el sistema operativo. Si por error proceden a borrar la flash no reinicien ni apaguen el router y avisen al profesor de prácticas. Serán capaces de recuperar este tipo de accidentes cuando aprendan cómo transferir al router ficheros desde un servidor de TFTP.

Al empezar a trabajar con un router tengan cuidado con la configuración que pueda tener grabada y eliminen lo que no necesiten. Antes de abandonar el laboratorio borren de la configuración del arranque sus modificaciones. Para evitar problemas con configuraciones de los routers en sesiones anteriores de prácticas lo primero que deben hacer cuando enciendan el router es borrar el fichero de configuración que carga en el arranque, es decir, en modo privilegiado:

Router# erase startup-config

Una vez hecho esto reinicien el router (comando reload). Al terminar de arrancar y no encontrar el fichero de configuración el sistema ejecuta un script (setup) para realizar una primera configuración del router. Salgan del script indicando que no quieren configurar nada. Con eso ya tendrán una configuración en curso limpia (running-config). Guárdenla como el nuevo fichero de configuración de arranque:

Router# copy running-config startup-config

Recuerden: Nunca le digan que sí a que borre la flash dado que en ella se encuentra el sistema operativo.

4.- Configurando RIPv1

Figura 1.- Topología con 3 redes

A.- Activando el proceso de RIP

Como paso previo vamos a desactivar el mecanismo llamado split horizon que evita las cuentas a infinito en ciertas situaciones. Lo vamos a desactivar para ver primero el caso más simple de RIP. Se puede activar/desactivar en cada interfaz de forma independiente.

Este comando también ha activado un proceso de RIP. Ahora, debemos decirle en qué redes (classful) queremos que emplee RIP. Para ello, se especifican con el siguiente comando:

Router(config-router)# network direcciondelared

Pueden obtener información sobre la configuración del proceso de RIP con el comando:

Router> show ip protocols

En el resultado de ese comando identifiquen: cada cuánto se envían las actualizaciones de RIP, cuánto falta para que se envíe la próxima y en qué redes se ha activado.

En los routers Cisco se pueden activar funciones de depuración para que nos digan lo que está haciendo ante ciertos paquetes o eventos. No es recomendable tenerlas activas mas que cuando se busquen problemas de configuración o de red porque ralentizan el funcionamiento del router. Se activan desde modo privilegiado con el comando debug.

La primera de ellas hará que el router nos indique cuando envía o recibe paquetes de RIP. Con la segunda nos notificará cuando se produzcan cambios en la tabla de rutas. Se desactivan sin más que poner no delante de cada una de ellas. Generalmente hace falta conectarse al router por el puerto de consola para ver los mensajes de depuración.

B.- Reaccionando a la desconexión de redes

router2 desactiva automáticamente su interfaz. router3 no sabe que el router router2 se ha desconectado de la red. Sigue pensando que puede llegar a la LAN2 través de él. Transcurrido cierto tiempo, router3 marca esa red como posiblemente inalcanzable y empieza a mandar los paquetes de RIP con métrica 16 en esa ruta. ¿Cúanto es ese tiempo? En la salida del comando show ip protocols aparece marcado como "Invalid after". Un tiempo después el router borra la ruta de su tabla.

El proceso en router2 ha sido diferente. El router detecta que ya no está conectado al conmutador y desactiva ese interfaz. Al desactivarlo elimina todas las rutas que iban por ese interfaz.

Verán que router3 desactiva inmediatamente ese interfaz y desaparece la ruta a esas red de su tabla de rutas. Si tienen activado el debug de RIP verán que en el siguiente paquete de RIP que manda sigue anunciando la ruta a la LAN1 pero ahora con métrica 16. ¿Qué tiene este valor de especial? Al recibir el otro router este paquete, como tenía apuntado que llegaba a esa red a través de ese router cambia la métrica de su ruta aunque el nuevo valor es mayor que el que él conocía. Pero dado que el valor de métrica que le llega es 16 elimina la ruta de su tabla de rutas. En las siguientes actualizaciones enviadas por router2 aún se incluye la ruta a esa red ahora inalcanzable, pero se envía indicando una métrica de 16. Este mecanismo de enviar la ruta inválida con métrica 16 en vez de simplemente borrarla se conoce como poison reverse y reduce el tiempo de convergencia, es decir, el tiempo que tardan los routers de la red en enterarse de cambios en la misma.

C.- Timers

Hemos visto varios timers en funcionamiento. Por un lado el tiempo entre cada actualización de RIP que envía el router. Por otro lado el tiempo hasta que marca como inalcanzable una red por no recibir actualizaciones y finalmente el tiempo hasta que la borra. Podemos cambiar estos valores desde el modo de configuración del proceso de RIP con el comando timers.

D.- Split-Horizon

Este mecanismo viene activado por defecto y evita que se produzcan ciclos en ciertas topologías. Lo que se hace es, en la tabla de rutas que se envía por un interfaz no enviar las rutas a todas las redes a las que el router llega por ese interfaz. Veamos un ejemplo.

A partir de ahí verán que los paquetes que por ejemplo envía router3 a esa red no incluyen la ruta a la LAN3 ni a la LAN2. Dado que para alcanzar esas redes él envía los paquetes por ese interfaz, o sea, ha aprendido las rutas por él, es lógico pensar que los routers que estén en la LAN3 no necesitan que él les comunique de nuevo esa información.

Checkpoint 1
Muestren al profesor de prácticas que saben configurar RIP y que entienden cómo funciona

5.- RIPv1 y máscaras de longitud variable

Seguimos con la topología de la figura 1.

Ahora empleen la red 10.3.32+armario.0/24 (tomen el que corresponda a uno de los grupos). En ese espacio de direcciones creen subredes. En la LAN 3 empleen una máscara de 29 bits. Para la LAN 1 escojan una máscara de 26 bits y para la LAN 2 de 27 bits.

Los PC de la LAN 1 no pueden comunicarse todavía con los de la LAN 2 porque router3 no sabe llegar a esa red ni router2 a la LAN 1.

Configuren RIP en los dos routers tal y como hicieron en la práctica anterior. ¿Qué rutas aprende cada router? Vean con la opción de depuración y con un tcpdump en PC B qué rutas anuncian los routers. Recuerden que RIPv1 no envía la máscara asociada a cada ruta en el paquete de actualización por lo que da problemas cuando en una red se hacen subredes con diferentes máscaras.

6.- Configurando RIPv2

RIPv2 es una pequeña modificación a RIP para añadirle ciertas funcionalidades como autentificación, soporte para resumir rutas, soporte para CIDR, etc. El formato del paquete que envían los routers es muy parecido pero ahora con cada ruta se envía también la máscara asociada.

Si miran el resultado del comando show ip protocols verán que su router está configurado para enviar paquetes de RIPv1 pero para aceptar paquetes de RIPv1 y de RIPv2. Lo que vamos a hacer a continuación es configurar que envíe paquetes de RIPv2.

Checkpoint 2
Muestren al profesor de prácticas que les funciona.

7.- Topología conectada al laboratorio

A continuación creen la topología de la figura 2, la cual está conectada a la red del laboratorio.

Figura 2.- Topología conectada al laboratorio

Vean cómo router2 y router3 aprenden las rutas de sus redes internas. Si miran la tabla de rutas del router de acceso verán que éste aprende las rutas que router3 anuncia.

Checkpoint 3
Muestren al profesor de prácticas que todo les funciona.

8.- RIP en PC

Investiguen qué programa o programas emplerían para tener un proceso de RIP en un PC con Linux y cómo se configuran. Pista: Están instalados y tienen página de manual

9.- Conclusiones

En esta práctica hemos configurado un proceso de RIP en los routers Cisco y hemos visto cómo se poblaba la tabla de rutas a medida que recibían paquetes de RIP. Hemos visto brevemente los mecanismos de split-horizon y poison-reverse que mejoran el funcionamiento de RIP. Así mismo hemos empleado RIPv2 en una red con máscaras de longitud variable, algo que no podíamos hacer con RIPv1. Otro protocolo que se puede emplear en estas circunstancias es OSPF pero la complejidad de su funcionamiento y configuración y el tiempo limitado del que disponemos lo dejan fuera de las posibilidades de estas prácticas.


Depto. Automática y computación
Universidad Pública de Navarra
Daniel Morató
daniel.morato@unavarra.es