CCNP ROUTE 5: Repaso y relaciones entre vecinos de OSPF
Repaso de OSPF
Terminos OSPF a tener en cuenta:
- Link State DataBase (LSDB) - la estructura de datos guardada por un router OSPF con el propósito de almacenar la topología.
- Shortest Path First (SPF) - es el nombre (el camino más corto primero) del algoritmo que usa OSPF para analizar LSDB y determinar la mejor ruta (mejor coste) por cada prefijo.
- Link State Update (LSU) - es el nombre del paquete OSPF que contiene la información detallada de la topología, especialmente LSAs.
- Link State Advertisement (LSA) - el nombre de una clase de estructuras de datos de OSPF que contienen información de la topología. LSAs se mantienen en memoria en la LSDB y y se transmiten por la red en mensajes LSU.
- Area - es un grupo de routers e interfaces de routers. Routers en un área se esfuerzan por aprender toda la información de la topología sobre ese área, pero no aprenden información de topología de áreas a las cuales no están conectados.
- Area Border Router (ABR) - es un router que tiene interfaces conectadas a al menos dos áreas OSPF diferentes, incluyendo el área backbone. ABRs mantienen los datos de topología de cada área y calculan rutas para cada área anunciando esas rutas entre las áreas.
- Backbone router - cualquier router que tiene al menos una interface conectada al área backbone.
- Internal routers - un router que tiene interfaces conectadas a un área solamente, haciendo el router completamente interno a ese área.
- Designated Router (DR) - es un router elegido para realizar funciones especiales . Estas funciones incluyen la generación de LSAs representando la subred y jugando un papel clave en el proceso de intercambiar la base de datos.
- Backup Designated Router (BDR) - un router que monitoriza al DR y se prepara para llegar a ser el DR en caso de que el DR actual fallase.
Para habilitar OSPF en el router y sus interfaces vale con la siguiente configuración pudiendo repetir el comando "network":
router ospf process-id
network net-id wildcard-mask area area-id
Estos comando siguen estas reglas:
- El valor de "process-id" no tiene por qué ser idéntico en los routers vecinos para que se establezca vecindad.
- IOS solo habilita OSPF en las interfaces que coincidan con el comando network de OSPF, entonces hace lo siguiente:
- Intenta descubrir vecinos OSPF en ese interface enviando mensajes OSPF Hello multicast.
- Incluye la subred conectada en los futuros intercambios de topología.
- Para que coincida una interface con el comando "network", IOS compara el valor "net-id" con la dirección IP de cada interface mientra usa la máscara "wildcard-mask" como una máscara ACL.
- Independientemente del orden en que se hayan configurado los comandos "network" IOS los ordena en la configuración colocando primero los más específicos (mayoría binaria 0).
- El primer comando "network" (mostrado por la salida del comando "show running-config) que coincida con un interface determina el número de área asociado con el interface.
Para elegir el "router ID" OSFP sigue estos pasos:
- Usa el "router id" definido en el subcomando de OSFP "router-id x.x.x.x".
- Usa la dirección IP más alta de cualquier interface de loopback que esté up/up.
- Usa la dirección IP más alta de cualquier interface que no sea loopback que esté up/up.
NOTA: las opciones 2 y 3 no es necesario que la interface tenga OSFP habilitado. Tabla resumen de los comando mayormente utilizados para comprobar OSPF:
- show ip ospf interface brief - lista la interfaces en las cuales OSPF está habilitado (basado en los comandos "networks"), omite interfaces pasivos.
- show ip protocols - lista los contenidos de los comandos de configuración "network" para cada proceso de enrutamiento y lista las interfaces pasivas habilitadas.
- show ip ospf neighbors - lista los vecinos conocidos incluyendo el estado, no lista vecinos para los cuales algún parámetro evitó una relación de vecindad.
- show ip ospf database - lista todas las LSAs para todas las áreas conectadas.
- show ip route - lista el contenido de la tabla de enrutamiento, indicando con un "O" a la izquierda las rutas aprendidas por OSPF.
Sumario de caracteristicas de OSPF:
- Transport - IP, tipo de protocolo 89 (no usa UDP o TCP).
- Metric - basada en el coste acumulativo de todas las interfaces salientes en una ruta.
- Hello interval - Intervalo en el cual un router envía mensajes Hello en una interface.
- Dead Interval - Tiempo para determinar cuando un router vecino ha caído, basado en que un router no recibe ningún mensaje incluyendo Hellos en este periodo de tiempo.
- Update destination address - Normalmente enviado a 224.0.0.5 (todos los routers SFP) y 225.0.0.6 (todo los routers designated).
- Full or partial update - Actualizaciones completas se usan cuando se descubren nuevos vecinos, luego se usan actualizaciones parciales.
- Authentication - Están soportadas las autenticaciones en texto plano y MD5.
- VLSM/classless - OSPF incluye la máscara con cada ruta permitiendo redes discontinuas y VLSM.
- Route Tags - Permite a OSPF marcar rutas según se van distribuyendo en OSPF.
- Next-hop field - Soporta el anuncio de rutas con un router next-hop diferente al router anunciado.
- Manual route summarization - Permite la sumarización de rutas solo en los routers ABR.
Vecinos y adyacencias OSPF en LANs
OSPF envía mensajes Hello de OSPF multicast en las interfaces LAN intentando descubrir vecinos OSPF si estos dos requerimientos se cumplen:
- Se ha habilitado OSPF en el interface usando el subcomando "network" o el subcomando de interface "ip ospf area".
- El interface no está en modo pasivo por el subcomando "passive-interface".
A continuación un listado de puntos que requiere OSPF para su correcto funcionamiento:
- Las direcciones IP primarias de la interface deben estar en la misma subred.
- La interface NO debe estar en pasivo (passive interface).
- Debe usarse la misma área.
- Hello interval y Dead timer tienen qué coincidir.
- Debe pasar la autenticación si se configura.
- El router ID debe ser único.
- IP MTU debe coincidir.
La autenticación OSPF hace que los routers verifiquen cada mensaje OSPF, para ello usan una clave pre-compartida que genera un MD5 por cada mensaje OSPF el cual se envía como parte de cada mensaje OSPF. Si un router recive un mensaje y no pasa la autenticación el mensaje es descartado, con lo que no se puede establecer vecindad (ya que ignora los mensajes Hello). Se usan tres tipos de autenticación:
Tipo |
Significado |
sub-Comando para activar |
sub-Comando para la clave |
0 |
ninguno |
ip ospf authentication null |
no hay clave |
1 |
texto plano |
ip ospf authentication |
ip ospf authentication-key clave |
2 |
MD5 |
ip ospf authentication message-digest |
ip ospf message-digest-key numero-de-clave md5 clave |
Por defecto OSPF no autentica, pero si queremos eutenticación debemos seguir estos 2 pasos:
- Habilitar la autenticación seleccionando el tipo de autenticación y configurando el comando apropiado (ver tabla) en cada interface que queramos/necesitemos o globalmente usando el subcomando bajo "router ospf": area numero autentication [message-digest].
- La clave debe configurarse por cada interface.
NOTA: la longitud máxima de la clave es de 16 caracteres.
Vecinos y adyacencias OSPF en WANs
Tipo interface |
¿ Usa DR/BDR ? |
Intervalo Hello por defecto |
¿ Descubrimiento dinámico de vecinos ? |
¿ Se permite más de 2 routers en la misma subred ? |
Broadcast |
Si |
10 |
Si |
Si |
Point-to-Point1 |
No |
10 |
Si |
No |
Lookback |
No |
-- |
-- |
No |
NonBroadcast2 (NBMA) |
Si |
30 |
No |
Si |
Point-to-Multipoint |
No |
30 |
Si |
Si |
Point-to-Multipoint NonBroadcast |
No |
30 |
No |
Si |
1 = Por defecto en interfeces Frame Relay point-toPoint. 2 = Por defecto en interfaces Frame Relay y multipoint. |