Académique Documents
Professionnel Documents
Culture Documents
Resumen
En este documento se redacta las caracterı́sticas principales del protocolo de enrutamiento OSPF, su algoritmo y métricas
usadas para el cálculo de la tabla de enrutamiento. Posteriormente se realiza una simulación usando el emulador GNS3 donde
se creará una topologı́a de red como ejemplo, donde se configuraran los routers con el protocolo OSPF. Finalmente, mediante
Wireshark se capturarán los paquetes de la red, y se analizará a detalle los paquetes OSPF.
Index Terms
MicroTik, router, topologı́a de red, OSPF.
I. I NTRODUCCI ÓN
E L protocolo Open Shortest Path First (OSPF) es un protocolo de enrutamiento de puerta de enlace interior y que se
encuentra descrito en la RFC 2328 [1]. Este protocolo distribuye información de enrutamiento dentro de un único sistema
autónomo.
OSPF es un protocolo de enrutamiento open source, por lo tanto puede ser utilizado por equipos que no pertenezcan a
la marca Cisco. Ha sido pensado para el entorno de Internet y su pila de protocolos TCP/IP, como un protocolo de routing
interno, es decir, que distribuye información entre routers que pertenecen al mismo Sistema Autónomo.
Tras la inicialización o debido a cualquier cambio en la información de enrutamiento, un enrutador genera un anuncio de
estado de enlace. Este anuncio representa la colección de todos los estados de enlace en ese enrutador. Todos los enrutadores
intercambian estados de enlace por medio de inundaciones. Cada enrutador que recibe una actualización de estado de enlace
debe almacenar una copia en su base de datos de estado de enlace y luego propagar la actualización a otros enrutadores [2].
Una vez que se completa la base de datos de cada enrutador, el enrutador calcula un árbol de ruta más corto para todos los
destinos. El enrutador utiliza el algoritmo Dijkstra para calcular el árbol de ruta más corto. Los destinos, el costo asociado y
el próximo salto para llegar a esos destinos forman la tabla de enrutamiento IP.
En caso de que no se produzcan cambios en la red OSPF, como el costo de un enlace o la adición o eliminación de una
red, OSPF deberı́a ser muy silencioso. Cualquier cambio que ocurra se comunica a través de paquetes de estado de enlace, y
el algoritmo Dijkstra se recalcula para encontrar la ruta más corta.
El algoritmo coloca cada enrutador en la raı́z de un árbol y calcula la ruta más corta a cada destino en función del costo
acumulativo requerido para llegar a ese destino. Cada enrutador tendrá su propia vista de la topologı́a, aunque todos los
enrutadores construirán un árbol de ruta más corto utilizando la misma base de datos de estado de enlace [3].
II-A. Jerarquı́a
Existen 3 tipos de routers en una jerarquı́a OSPF [2] (figura 1). Estos son:
AS Boundary Routers: Intercambian información de enrutamiento con otro AS y pueden ser de cualquiera de los
anteriores tipos
Figura 1. Jerarquı́a
II-B. Métrica
La métrica utilizada por OSPF [1] se muestra en la figura 2.
Figura 2. Métrica
III. D ESARROLLO
La topologı́a propuesta para la configuración y análisis del protocolo OSPF se muestra en la figura 3. Como se observa en esta
figura, se tiene tres áreas (0, 1 y 2) y se han elegido tres direcciones de red para asignarlas a las distintas áreas. Las interfaces
de los routers de área 1 están configurados con una dirección clase B 172.16.32.0 con una máscara de red de 255.255.255.252
esto para conexiones punto a punto, como en este caso. Las interfaces de los routers de área 2 están configurados con una
dirección clase A 10.50.45.0 con una máscara de red de 255.255.255.252 y los de área 2 con una dirección clase C 192.168.1.0
con máscara de red de 255.255.255.252.
De acuerdo a las direcciones IP utilizadas antes mencionadas, se configuró una dirección IP a cada interfaz Ethernet de los
routers. El proceso para la configuración de una dirección se muestra en la figura 4. EL proceso es el siguiente:
ip address 192.168.1.221 255.255.255.252: Asigna la dirección 192.168.1.221 con máscara de red de 255.255.255.252
a esa interfaz.
Para realizar una comprobación de las direcciones IP asignadas a las interfaces, se procede a ejecutar el comando show ip
int brief , cuyo resultado se puede observar en la figura 5, en donde se muestra también si la interfaz está levantada o no.
MAYO 2019 3
Una guı́a detallada sobre la configuración de routers Cisco con el protocolo de enrutamiento OSPF se puede encontrar en
[4]. En este caso, por demostración, se realizará la configuración más simple, la cual se muestra en la figura 6. EL proceso es
el siguiente:
router ospf process id: Mediante este comando se crea un proceso de enrutamiento OSPF. El argumento process id es
un identificador utilizado internamente para este proceso de enrutamiento y puede ser cualquier entero positivo [4]. Esta
ID no tiene que coincidir con la ID en ningún otro dispositivo; es sólo para uso interno. Se puede utilizar un máximo de
dos procesos.
network ip address mask area area id: Define las direcciones IP en las que se ejecuta OSPF y el ID de área para esa
interfaz. Al agregar un área nueva, se ingresa el ID de área. Se puede especificar el ID de área como un número decimal
o una dirección IP. Los valores decimales válidos varı́an de 0 a 4294967295
Para comprobar la correcta configuración de las áreas de routers y del protocolo OSPF se procede a desplegar la tabla
de enrutamiento de los mismos. El resultado presentado por uno de los routers se muestra en la figura 7, donde se puede
observar el identificador a lado de cada subred en su tabla, una O significa que esa subred la aprendió mediante OSPF
mientras que una C significa que es una subred conectada directamente. Como se observa en esta figura, se encuentran
todas las 12 subredes de la topologı́a planteada.
MAYO 2019 4
• Los paquetes Hello son los primeros mensajes enviados por cada router que trabaja con OSPF, el cual es utilizado
para formar adyacencias y como un mecanismo de keepalive.
• Hay tres tipos de contenido principal de un paquete. Hello, los cuales son: OSPF Header, OSPF Hello Packet y
OSPF LLS Data Block.
Respecto al contenido de la cabecera OSPF Header (figura 10) se puede observar que esta contiene, la versión de OSPF
(versión 2), el tipo de mensaje OSPF (Hello), la dirección del router que envı́a el mensaje, el ID del área, checksum OSPF
de paquetes, el tipo de autenticación compuesta por 2 bytes (0- Sin contraseña 1- texto como contraseña 2- autenticación
MD5) y finalmente, datos de autenticación para verificar la integridad del paquete.
En cuanto al contenido del OSPF Hello Packet se presenta en la figura 11. Los parámetros de este contenido son los
siguientes:
• Network Mask: La máscara de subred de la red a la que se envı́a el enrutador, estos paquetes se envı́a en multicast.
• Hello Interval: El número de segundos que este enrutador espera entre el envı́o de mensajes de saludo. Se puede
observar que el valor por defecto es de 10 segundos.
• Options: Indica qué capacidades OSPF opcionales admite el enrutador. En este caso el valor es de 12 en hexadecimal,
y se observa que esta presente un bloque LLS que es la señalización local de enlace para esa interfaz. Además está
activada la opción de External Routing.
• Router Priority: Indica la prioridad del enrutador, al elegir un enrutador designado de respaldo.
• Router Dead Interval: Indica la cantidad de segundos que un enrutador puede estar .en silencio.antes de que se
considere que ha fallado. El valor por defecto es 40 segundos, eso da ha entender que si 4 paquetes hello OSPF se
pierden, el enrutador es dado por muerto.
• Designated Router: La dirección de un enrutador designado para ciertas funciones especiales en algunas redes. Se
establece en ceros si no hay un enrutador designado.
MAYO 2019 6
• Active Neighboor: Las direcciones de cada enrutador desde donde este enrutador ha recibido mensajes de saludo
recientemente.
Finalmente el contenido de OSPF LLS Data Block se muestra en la figura 12. El bloque de datos utilizado para la
señalización local de enlace está formado como se describe a continuación:
• Checksum: El campo suma de comprobación contiene la suma de comprobación IP estándar de todos los contenidos
del bloque LLS.
• LLS Data Length: El campo de longitud de datos LLS de 16 bits contiene la longitud del bloque LLS, incluidos
el encabezado y la carga útil.
• Extended options TLV: El campo Tipo contiene el ID de TLV que es único para cada tipo de TLV. El campo
Longitud contiene la longitud del campo Valor (en bytes) que es variable y contiene datos arbitrarios.
Al momento de intercambiar mensajes DB, los routers definen quien será el Master de la comunicación, con el fin de
que este inicie la comunicación definiendo un número de secuencia, el cual solo puede ser cambiado por el.
El número de secuencia es utilizado como acuse de recibo, debido que el equipo que queda como Slave, utiliza el mismo
número de secuencia para responder con su propio mensaje DBD, y este lo cambia cuando el Master lo hace. En un
principio, ambos routers se consideran el Master de la comunicación, pero al final, el que tiene el Router ID más alto,
es el que se elige como Master.
La cabecera de este tipo de mensaje se mantiene igual en todos los paquetes OSPF, excepte en el parámetros del tipo
de mensaje. De igual manera ocurre con los datos de LLS (Ambos fueron descritos anteriormente). El campo OSPF DB
Description se muestra en la figura 13, cuyo contenido es el siguiente:
MAYO 2019 7
• Interface MTU: El tamaño del mensaje IP más grande que se puede enviar en la interfaz de este enrutador sin
fragmentación.
• Options: Indica cuál de las varias capacidades OSPF opcionales que admite el enrutador.
• DB Description: Indicadores especiales utilizados para indicar información sobre el intercambio de mensajes de
descripción de bases de datos.
• DB Sequence: Se utiliza para numerar una secuencia de mensajes de descripción de la base de datos para que se
mantengan en orden.
IV-C. Formato de mensaje de actualización de estado de enlace (Link State Update Message)
De igual manera, este tipo de mensaje mantiene la misma cabecera que los anteriores y solo cambia el parámetro del tipo de
mensaje. El contenido de LS UPdate Packet se muestra en la figura 14. Se observa que es muy corto el contenido el cual es:
• Number of LSAs: Indica el número de anuncios de estado de enlace incluidos en este mensaje.
• LSA-type 1 Uno o más anuncios de estado de enlace.
• Options: Indica cuál de las varias capacidades OSPF opcionales que admite el enrutador (descritas anteriormente).
3. Summary LSA (IP Network): Cuando las áreas son usadas, se genera información de resumen de la red
4. Summary LSA (ASBR): Cuando áreas son usadas, información de resumen acerca de enlace a un AS lı́mite de
router es generada
• Link State ID: Identifica el enlace. Por lo general, esta es la dirección IP del enrutador o de la red que representa
el enlace.
• Sequence Number: Un número de secuencia utilizado para detectar LSA antiguos o duplicados.
• LS Checksum: Una suma de comprobación de la LSA, para la protección contra la corrupción de datos.
El cuerpo del LSA contiene campos especı́ficos que dependen del valor del campo Tipo LS. A modo de resumen:
• Para los enlaces normales a un enrutador, el LSA incluye una identificación del enrutador y la métrica para llegar a
él, ası́ como detalles sobre el enrutador, por ejemplo, si es un enrutador de lı́mite de área o lı́mite.
• Los LSA para redes incluyen una máscara de subred e información sobre otros enrutadores en la red.
• Los LSA de resumen incluyen una métrica y una dirección resumida, ası́ como una máscara de subred.
• Los LSA externos incluyen una serie de campos adicionales para permitir la comunicación del enrutador externo.
En la figura 15 se puede observar que es un LSA (Router), en el que se puede observar un ID de enlace, Dato del enlace,
Tipo del enlace, el número de métrica, y la métrica.
• Link State Request: El identificador de la LSA, generalmente la dirección IP del enrutador o de la red vinculada.
• Advertising Router: La ID del enrutador que creó la LSA cuya actualización se está buscando.
V. C ONCLUSIONES
Mediante Wireshark se emuló una topologı́a de red propuesta, de la cual se comprobó la correcta configuración del
protocolo OSPF en los routers mediante el comando ping de un extremo al otro. Posteriormente se capturo paquetes
OSPF mediante Wireshark y se pudo comprobar que existen 5 tipos de mensajes OSPF los cuales son: Hello, Data Base
Description, Link State Request, Link State Update y Link State Acknowledgment. De todos estos tipos de mensajes
OSPF se analizó el contenido y se describió en completitud.
MAYO 2019 10
R EFERENCIAS
[1] OSPF version 2, RFC 2328, 1998. [Online]. Available: http://www.faqs.org/rfcs/rfc2328.html
[2] J. T. Moy, OSPF: Anatomy of an Internet Routing Protocol, Addison-Wesley (Safari Books Online), 1998.
[3] C. M. Kozierok, TCP/IP GUIDE. A Comprehensive, Illustrated Internet Protocols Reference, No Starch Press, 2005.
[4] Configuring OSPF, Cisco. [Online]. Available: https://www.cisco.com/c/en/us/td/docs/security/asa/asa90/configuration/guide/asa 90 cli config/route ospf.pdf