A veces es necesario repasar el enrutamiento y justo después de haber publicado una entrada sobre comandos de verificación del enrutamiento, me solicitan una entrada sobre las bases de enrutamiento. Pues ahí les va y espero que la acompañen de algún material del currículo oficial de Cisco ya que esta entrada es un resumen ultra corto sobre la configuración del enrutamiento.A continuación voy a reproducir la introducción que puse a la entrada sobre comandos de verificación de enrutamiento que recomiendo que lean después de ésta y que describe en términos muy simples en qué consiste el enrutamiento.

–> Introducción en 5 comandos básicos de verificación de enrutamiento

¿En qué consiste el enrutamiento?

El enrutamiento es el relevo de tráfico de una red a otra paquete por paquete. ¿Por qué relevo? porque éste consiste en pasar la reponsabilidad de un enrutador a otro, es decir, un enrutador decide cómo enviar un paquete y se desentiende de lo que le pueda pasar al mismo de ahí para adelante, eso en inglés se llama relay, en español se llama relevo. Otra forma de decirlo, más técnica, es la conmutación de paquetes de una red a otra. La idea del enrutamiento está estrechamente ligada a las redes/subredes (IP, IPX, etc.) y al hecho de que los enrutadores son los separadores de esas redes/subredes, entonces, el enrutador es un dispositivo que conoce hacia dónde quedan las redes que él conoce y el hacia dónde significa después de cuál de sus interfaces o a través de qué enrutador vecino se puede llegar más cerca de las redes destino en cuestión.

La base de todas estas decisiones es la tabla de enrutamiento, una especie de base de datos sobre las rutas que dice justamente esa información: por dónde se está más cerca de una red en particular. La tabla de enrutamiento es la información que usa el enrutador efectivamente, es decir, aún si están configuradas ciertas rutas eso no significa que tengan que aparecer en la tabla de enrutamiento y por ende no implica que se vayan a enrutar, pero si éstas están en la tabla de enrutamiento eso sí va a influenciar la forma en que se enrutan los paquetes destinados a una red de las que están presentes en la tabla.

¿Entonces qué le pasa a un paquete IP cuando llega al enrutador? Simple, si el paquete tiene una dirección IP que no pertenece a alguna interfaz del enrutador (es decir que no sea para el enrutador mismo, como un telnet por ejemplo), se le busca un destino en la tabla de enrutamiento y ese destino se debe resolver en una interfaz de salida o una IP de siguiente salto (un vecino al que se asocia mayor cercanía a la red destino). El paquete entonces es encapsulado con encabezados de capa dos (L2) apropiados para la interfaz de salida, hay que recordar acá que los enrutadores tienen la responsabilidad de hacer de intermediarios con las tecnologías de WAN y éstas son básicamente encapsulaciones especiales para esos enlaces, por ejemplo Frame Relay, donde en vez de direcciones MAC hay DLCI. Una vez que el paquete es encapsulado en la tecnología de la interfaz de salida, la responsabilidad de éste enrutador termina, el siguiente enrutador deberá repetir el proceso y nosotros debemos esperar que el resultado sea que el paquete estará efectivamente más cerca de la red destino. El proceso que acabo de describir sucede, en teoría, para cada paquete y así el flujo de datos entre dos nodos de la red (dos PCs o dos dispositivos de red) llega a su destino.

Es importante notar que nunca hemos dicho red origen y eso se debe a que el paradigma del enrutamiento sólo considera hacia dónde se dirige el tráfico, el tráfico de vuelta se considera también un destino pero en dirección opuesta, es decir, el enrutamiento se debe analizar en una dirección y luego se debe analizar en la dirección inversa para poder garantizar que existe la información necesaria en las tablas de enrutamiento para que el tráfico pueda regresar. ¡El hecho de que el tráfico llegue al destino original no garantiza que el tráfico pueda regresar!.

–> Hasta acá el contenido de la entrada anterior.

Lo único que parece faltar de la introducción anterior es aclarar qué es exactamente una ruta, una ruta es una red destino con unos parámetros asociados, como son la interfaz de salida y la métrica o costo asociado al camino para llegar hasta la red destino entre otras cosas. Es importante reconocer que el elemento clave de una ruta es la red destino. Consecuencia de lo anterior es que una tabla de enrutamiento debe tener todas las rutas que existan en un dominio de enrutamiento.

¿Cómo se configura el enrutamiento?

En resumen, el enrutamiento es llenar la tabla de enrutamiento de información con la que se van a enviar/conmutar paquetes en un enrutador y a su vez que todos los enrutadores en una red tengan esa misma información. Ésta información le llega al enrutador bien sea porque la conoce directamente, porque se la configuramos manualmente o porque se le informa a través de un protocolo de enrutamiento en particular.

Para ilustrar lo que voy a explicar en los párrafos siguientes, les dejo un gráfico en el que vemos una red pequeña que tiene dos enrutadores conectados por un cable serial y cada uno tiene una subred de usuarios (LAN). La red del enlace serial es 10.0.0.0/8 y las lan son 192.168.0.0/24 y 192.168.1.0/24 respectivamente. Los ejemplos de configuración se hacen para la parte que está señalada en el recuadro.

Topología Mínima

Rutas conectadas directamente

Dada la brevísima explicación sobre las operaciones de enrutamiento que escribí en la sección anterior, podemos entrar a mirar la configuración del enrutamiento. Lo primero que hay que tener en cuenta es que el enrutador crea automáticamente rutas hacia las redes directamente conectadas una vez que se configuran y levantan las interfaces, es decir, el enrutador pasa paquetes entre sus redes directamente conectadas sin necesidad de ningún comando adicional. Entonces la primera configuración básica de enrutamiento consiste en configurar interfaces correctamente, esto inyecta rutas directamente conectadas a la tabla de enrutamiento y el enrutador puede entonces enviar paquetes de una red a otra entre las que él conoce directamente.

  • configure terminal
  • interface serial 0/0
  • ip address 10.0.0.1 255.0.0.0
  • no shutdown

Una vez que se configuran las interfaces, la tabla de enrutamiento contendrá las redes de cada interfaz, en el caso del ejemplo la 10.0.0.0, éste es un ejemplo de una ruta a una red directamente conectada o ruta directamente conectada, a partir de ésto se debe configurar cualquier otro tipo de  ruta, es decir, rutas estáticas o dinámicas. La base del enrutamiento es que existan rutas directamente conectadas. La verificación inicial de ésta configuración es hacer ping exitosamente entre los dispositivos conectados directamente y observar que la tabla de enrutamiento tiene las rutas directas (ver entrada de comandos de verificación).

Rutas estáticas

Una vez que se tienen rutas directamente conectadas, se pueden crear rutas estáticas. Éstas rutas son una forma de decirle al enrutador a través de qué enrutador vecino se puede alcanzar cierta red, por lo tanto, para cada red se debe indicar una salida de este enrutador, bien sea indicando la dirección del siguiente enrutador en el camino hacia esa red o indicando la interfaz por la que se deben encapsular los paquetes hacia la red destino.

  • configure terminal
  • ip route 192.168.1.0 255.255.255.0 10.0.0.2

Note que los primeros parámetros indican la red destino (dir de red y máscara), es decir la que no se conoce directamente y tanto la dirección como la máscara son mecanismos locales para diferenciar una red de otra, es decir, sólo aplican en el enrutador local. El último parámetro es la dirección IP del siguiente enrutador en el camino hacia la red 192.168.1.0. Éste parámetro se puede reemplazar por la interfaz de salida de éste enrutador, aquella por la cual los paquetes se acercan a la red destino. El siguiente comando sería equivalente:

  • ip route 192.168.1.0 255.255.255.0 serial 0/0/0

Lo anterior ayuda a entender por qué la ruta estática por defecto es la 0.0.0.0 con máscara 0.0.0.0, un caso especial de ruta estática que se corresponde con cualquier red destino pero que sólo se consulta como última opción en el enrutador en el que es configurada, es decir, cuando la red destino de un paquete no se corresponde con ninguna ruta en la tabla de enrutamiento, la última opción siempre va a corresponder porque es la ruta estática por defecto.

La verificación de éstas rutas consiste, sabiendo previamente que la interfaz misma está arriba (up/up), en mirar la configuración activa y asegurarse de que lo que aparece ahí es lo que se quería configurar, lo que se había planificado, la otra verificación se hace en los otros enrutadores: hay que observar la tabla de enrutamiento y confirmar que haya rutas correspondientes en los otros enrutadores (siempre y cuando los otros estén bien configurados). Mientras la red no esté completamente configurada, el ping puede no funcionar, dado que es probable que algún enrutador en el camino no tenga información suficiente para enviar los paquetes de ICMP (protocolo del ping) bien sea hacia el destino o de regreso y ésto sucede con mayor probabilidad si la red se configura sólo con rutas estáticas.

Protocolos de enrutamiento

Finalmente después de tener rutas directamente conectadas y configurar algunas rutas estáticas se pueden configurar protocolos de enrutamiento. Un protocolo de enrutamiento establece relaciones de vecindad con enrutadores que ejecutan el mismo protocolo en interfaces comunes y a través de esa relación se comunica la información de enrutamiento que se le haya configurado a cada enrutador para intercambiar. El propósito de esta entrada no es exponer extensivamente el funcionamiento de los protocolos sino dar una guía ultra simple de cómo configurarlos.

RIP

  • configure terminal
  • router rip
  • network 10.0.0.0
  • network 192.168.0.0

EIGRP

  • configure terminal
  • router eigrp 100
  • network 10.0.0.0
  • network 192.168.0.0

OSPF

  • configure terminal
  • router ospf 1
  • network 10.0.0.0 0.255.255.255 area 0
  • network 192.168.0.0 0.255.255.255 area 0

Los comandos anteriores activan el protocolo en las interfaces que corresponden con las redes especificadas por el comando y agregan estas redes a las actualizaciones enviadas, por lo tanto el comando network efectúa dos operaciones:

  1. Activa el protocolo en las interfaces que pertenecen a esas redes
  2. Ingresa esas redes a la información a propagar a través de ese protocolo en particular.

De las dos operaciones que efectúa el comando network se deduce una importante consecuencia práctica: la configuración básica de un protocolo de enrutamiento sólo incluye la información de las redes directamente conectadas, es decir, la información sobre otras redes más allá de las propias se conoce por medio de actualizaciones que envían otros enrutadores o por rutas estáticas.

¿Qué puede fallar en la configuración de los protocolos de enrutamiento?

Sobre qué puede fallar al configurar los protocolos de enrutamiento, existen varias condiciones que deben coincidir dependiendo del protocolo, pero sólo mencionaré las más básicas. Para Rip hay que tener en cuenta reglas como horizonte dividido y que las versiones del protocolo sean iguales a ambos lados. Para EIGRP, el número que acompaña el comando router debe ser el mismo para todos los enrutadores de la red y contrario a OSPF porque para este último, ese número sólo tiene significado local. Existen muchas otras cosas que pueden hacer fallar el enrutamiento dinámico, las que se estudian en los módulos de enrutamiento de CCNA, pero son cosas que normalmente no se cambian y su funcionamiento por defecto es perfectamente operativo. Finalmente, asegúrese de que no existen direcciones IP duplicadas en la red o que las redes están bien definidas con máscaras de subred correctas en todos los nodos (PCs y enrutadores) que participan.

Para comprobar el correcto funcionamiento de los protocolos de enrutamiento se sebe consultar la tabla de enrutamiento primero, ella debe indicar las rutas provenientes de otros enrutadores que se comunican con éste a través de los protocolos configurados y las tablas de enrutamiento de todos los enrutadores deben tener todos los posibles destinos de red (todas las redes), en especial las redes de usuarios. Otra comprobación clave es el comando show ip protocols que muestra la información de cómo está funcionando cada protocolo de enrutamiento. Éste es el comando más importante para diagnosticar problemas con protocolos de enrutamiento, ya que muestra los parámetros particulares de cada protocolo y en especial dice qué redes se están publicando y qué otros enrutadores se reconocen como vecinos en éste protocolo. Ver la entrada anterior.

Conclusiones

El enrutamiento es un concepto realmente elemental que se vuelve complejo a través de reglas muy simples, es decir, la complejidad del enrutamiento proviene de la composición de muchas cosas simples. Por eso es indispensable configurar y comprobar sistemáticamente cada detalle, entendiendo lo que se hace y comprobando el funcionamiento de cada paso para que al final, cuando todas las cosas simples funcionen juntas, no haya errores o sean más fáciles de detectar.

Lecturas similares:

Etiquetas: , ,

5 comentarios on ¿Cómo se configura el enrutamiento?

  1. César dice:

    Hola Tidus,

    gracias por el comentario tan halagador. Las rutas estáticas usualmente son un complemento a las rutas dinámicas, no son indispensables.

    La ruta estática por defecto o predeterminada es indispensable en el enrutador que tenga la salida a Internet porque ellos se pasan sus rutas solamente, pero ¿qué hacer con rutas que no están en el sistema autónomo?. Por otro lado la ruta estática predeterminada como tal generalmente está en un sólo enrutador, luego se propaga por un protocolo y ya todos tienen una ruta predeterminada (pero no estática).

    Espero que haya quedado más claro. Gracias y hasta pronto.

  2. Tidus dice:

    Waooo, su pagina me ha ayudado mucho, de veras que muchas gracias…pero tengo una pregunta.¿Es estrictamente necesario configurar rutas estaticas antes de configurar las dinamicas?, ya que practicando me he encontrado que configurando el protocolo EIGRP solamente, los routers no encaminan hacia su destino, pero si intercambia actualizacion con los otros routers (refiriendome a las tablas de enrutamiento)….y eso me hizo pensar un poco en ese asunto…de antemano le agradesco su ayuda y sus valiosos aportes a toda la comunidad que lo sigue.

  3. César dice:

    Hola José,

    gracias por el comentario. No, esta entrada sólo es para referencia, no para explicar la configuración específica de ningún protocolo, de hecho la escribí pensando en mis estudiantes que ya habían visto protocolos de enrutamiento. En futuras publicaciones voy a escribir en más detalle sobre cada protocolo.

    Gracias y hasta pronto.

  4. JOSE dice:

    quisiera que tenga el diagrama de routers para la configuracion de los protocolos rip ,rutas estaticas, dinamicas,ospf,etc ademas este bien detallado como configurar con los comandos

  5. labiral dice:

    En los laboratorios del primer capítulo del módulo 4 de Cisco Exploration (y creo que en algunos de los siguientes) se nos pedía no utilizar RIP, OSP ni EIGRP, por lo que las rutas debían ser estáticas. La forma de lograr eso es usando el comando “ip route” en el modo de configuración global:
    (config)# ip route 192.168.1.0 255.255.255.0 fa0/1
    Ajusten los parámetros según sea necesario Incluso se puede configurar una dirección IP de destino en lugar de una interfaz de salida, como lo apuntó el profe.

Deja un comentario