Configuración Basica
1. Habilitar el proceso OSPF
El process ID es de significancia local (NO tiene que coincidir entre routers para formar adyacencia.)
- Comando:
Router(config)# router ospf <process-id> - Ejemplo:
Router(config)# router ospf 1
El valor de
<process-id>ser un valor entre 1–65535, local a este router únicamente.
2. Fijar el Router ID
Eleccion de Router-ID (RID)
- **
router-idmanual. - IP más alta de loopback activa.
- IP más alta de interfaz física activa.
Asignar manualmente el Router ID del proceso
- Comando:
Router(config-router)# router-id <router-id-IPv4> - Ejemplo:
Router(config-router)# router-id 1.1.1.1
Router(config)# router ospf 1
Router(config-router)# router-id 1.1.1.1
Un cambio de Router ID no aplica hasta hacer
clear ip ospf process.
El valor de RID siempre debe ser diferente. Un Router ID nunca puede repetirse dentro del mismo dominio OSPF.
3. Anunciar redes
Método A - Comando network
Anunciar una red y asignarla a un área
- Comando:
Router(config-router)# network <red> <wildcard-mask> area <area-id> - Ejemplo:
Router(config-router)# network 192.168.10.0 0.0.0.255 area 0
Router(config)# router ospf 1
Router(config-router)# router-id 1.1.1.1
Router(config-router)# network 192.168.10.0 0.0.0.255 area 0
Router(config-router)# network 10.1.1.1 0.0.0.0 area 0
<wildcard-mask>→ máscara invertida.0.0.0.255hace match con un /24;0.0.0.0hace match con una sola IP exacta (lo más específico).
Cualquier interfaz cuya IP caiga en el rango se añade a OSPF en esa área.
Match más específico
Usar un wildcard
0.0.0.0con la IP exacta de la interfaz mete solo esa interfaz en OSPF — la forma más precisa y predecible de controlar qué interfaces corren OSPF.
Método B - Habilitar OSPF en una interfaz específica (Recomendado)
Primero buscar la interface que deseamos que participe en OSPF.
- Comando:
Router(config-if)# ip ospf <process-id> area <area-id> - Ejemplo:
Router(config-if)# ip ospf 1 area 0
Router(config)# router ospf 1
Router(config-router)# router-id 1.1.1.1
Router(config-router)# exit
Configuracion:
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ip ospf 1 area 0
Router(config-if)# exit
Hace el mismo trabajo que
network, pero aplicado por interfaz.
El enfoque moderno y explícito: sin cálculo de wildcard, nombras la interfaz directamente.
4. Opcional: Cambiar el tipo de Network Type
Ambos extremos (Interfaces) deben tener el mismo Network Type o algun Type compatible, de no ser asi no se formara OSPF.
| Network type | Hello | Dead | DR/BDR | Hellos to | Medios típicos |
|---|---|---|---|---|---|
| Broadcast | 10 s | 40 s | Sí | 224.0.0.5 / .6 | Ethernet, Token Ring, FDDI |
| Non-broadcast (NBMA) | 30 s | 120 s | Sí | Unicast | Frame Relay, X.25, ATM |
| Point-to-point | 10 s | 40 s | No | 224.0.0.5 | HDLC, PPP, enlaces seriales |
| Point-to-multipoint | 30 s | 120 s | No | 224.0.0.5 | NBMA / DMVPN hub-and-spoke |
| Point-to-multipoint non-broadcast | 30 s | 120 s | No | Unicast | Variantes NBMA sin multicast |
| Compatibilidad (con timers por defecto): |
| Broadcast | NBMA | Point-to-point | P2M | P2M non-broadcast | |
|---|---|---|---|---|---|
| Broadcast | Sí | No | Parcial | No | No |
| NBMA | No | Sí | No | Parcial | Parcial |
| Point-to-point | Parcial | No | Sí | No | No |
| P2M | No | Parcial | No | Sí | Parcial |
| P2M non-broadcast | No | Parcial | No | Parcial | Sí |
- Sí = forma adyacencia y funciona. Lo recomendado: el mismo tipo en ambos extremos.
- Parcial = los timers coinciden y la adyacencia puede subir, pero un lado espera DR/BDR y el otro no (o uno usa multicast y el otro unicast). Resultado típico: vecino en FULL pero rutas que no se instalan o next-hop incorrecto. No recomendado.
- No = los timers por defecto no coinciden (10/40 contra 30/120), así que no forma.
Si igualas los timers
Con
ip ospf hello-interval/dead-intervaliguales, las parejas que tienen el mismo comportamiento de DR funcionan bien: Broadcast con NBMA (ambos eligen DR) y Point-to-point con P2M (ninguno elige DR). Las demás pasan a “Parcial”.
- Comandos:
Router(config)# interface <Numero_Interface>
Router(config-if)# ip ospf network ?
broadcast Specify OSPF broadcast multi-access network
non-broadcast Specify OSPF NBMA network
point-to-multipoint Specify OSPF point-to-multipoint network
point-to-point Specify OSPF point-to-point network
Interfaces Ethernet (Gigabit, Fast, etc.) → por defecto Broadcast. Como Ethernet es lo más común hoy, en la práctica sí verás Broadcast como el default la mayoría de las veces.
Cambiar eleccion de DR/BDR
La función de este comando es controlar la elección del DR/BDR en un segmento de acceso múltiple (broadcast o NBMA).
- Comando:
Router(config-if)# ip ospf priority <Valor> - Ejemplo:
Router(config-if)# ip ospf priority 25
Valor de 0 a 255. Mayor número = más probabilidad de ser DR.
Una interfaz con priority 0 NUNCA puede ser DR ni BDR.
Usar el comandoshow ip ospf neighborpara saber los roles de los vecinos de OSPF.
Una vez cambiado la Priority, usar clear ip ospf process en los Routers a los cuales deseamos cambiar el DR/BDR. (No todos.)
- Orden de seleccion de DR/BDR:
- Gana la prioridad más alta → DR.
- La segunda más alta → BDR.
- El Router ID solo desempata si las prioridades son iguales.
Configuración Adicional (Opcional)
Interfaz passive
La regla general: haces passive toda interfaz por la que no hay otro router OSPF con el que formar adyacencia. Si al otro lado del cable solo hay hosts, impresoras, servidores o cualquier dispositivo final (no un router/switch L3 corriendo OSPF), esa interfaz debe ser passive.
Metodo 1 - Hacer passive una interfaz concreta
- Comando:
Router(config-router)# passive-interface <interface> - Ejemplo:
Router(config-router)# passive-interface GigabitEthernet0/2
Router(config)# router ospf 1
Router(config-router)# passive-interface GigabitEthernet0/2
Metodo B - Hacer todas passive por defecto
- Comando:
Router(config-router)# passive-interface default
Timers Hello y Dead
Se configuran por interfaz y deben coincidir en ambos extremos o la adyacencia no forma.
Por defecto Dead = 4 × Hello.
-
Comando:
Router(config-if)# ip ospf hello-interval <segundos> -
Ejemplo:
Router(config-if)# ip ospf hello-interval 5 -
Comando:
Router(config-if)# ip ospf dead-interval <segundos> -
Ejemplo:
Router(config-if)# ip ospf dead-interval 20
Router(config)# interface Gi0/0
Router(config-if)# ip ospf hello-interval 5
Router(config-if)# ip ospf dead-interval 20
El Dead no se reajusta solo
Si cambias el hello-interval, el dead-interval no se recalcula automáticamente a 4×. Configúralo de forma explícita y verifica que coincida con el vecino.
Cambiar el MTU de una interfaz
Un MTU distinto entre vecinos deja la adyacencia atascada en EXSTART/EXCHANGE. Se corrige igualando el MTU en ambos extremos.
- Comando:
Router(config-if)# ip mtu <bytes> - Ejemplo:
Router(config-if)# ip mtu 1500
Router(config)# interface Gi0/0
Router(config-if)# ip mtu <1500>
Verificar: Router# show ip interface <Interface>
mtu vs ip mtu vs mtu-ignore
mtu→ cambia el MTU de toda la interfaz (todos los protocolos).ip mtu→ cambia solo el MTU de IP en esa interfaz.ip ospf mtu-ignoreoculta el problema en vez de resolverlo; evítalo en producción y corrige el MTU real en ambos extremos.
Configuración para cambiar rutas
OSPF elige por cost, inversamente proporcional al ancho de banda. Fórmula: cost = reference-bandwidth ÷ interface-bandwidth. Hay tres formas de influir en él.
/ospf---open-shortest-path-first/ospfv2/photos/pasted-image-20260730173205.png)
(Imagen: Valor predeterminado del dispositivo.)
Metodo A - Reference bandwidth (afecta a todo el router)
- Comando:
Router(config-router)# auto-cost reference-bandwidth <Mbps> - Ejemplo:
Router(config-router)# auto-cost reference-bandwidth 10000= 10 Gbps
Router(config)# router ospf 1
Router(config-router)# auto-cost reference-bandwidth <Mbps>
Debe ser idéntica en todo el dominio
El reference-bandwidth por defecto es 100 Mbps, así que cualquier enlace de 100 Mbps o más rápido recibe cost 1 y SPF no los distingue. Si la cambias, hazlo igual en todos los routers o los cálculos de cost no coincidirán entre ellos.
Metodo B - Bandwidth de la interfaz
Definir el ancho de banda que OSPF usa para calcular el cost
- Comando:
Router(config-if)# bandwidth <kbps> - Ejemplo:
Router(config-if)# bandwidth 10000
Router(config)# interface Gi0/0
Router(config-if)# bandwidth <kbps>
Cambia el valor de ancho de banda que OSPF usa para calcular el cost; no altera la velocidad física real del enlace.
Metodo C - Fijar el cost de una interfaz manualmente (Recomendado)
- Comando:
Router(config-if)# ip ospf cost <valor> - Ejemplo:
Router(config-if)# ip ospf cost <valor>
Router(config)# interface Gi0/0
Router(config-if)# ip ospf cost 348
Verificar Costo: Router# show ip ospf interface <Interface>
Fija el cost a mano e ignora la fórmula por completo.