Contenido

Introducción

Topología

Requisitos de Configuración de Peering OSPF

Solución de problemas de adyacencia OSPF - Lista de comprobación general

Resolución de problemas de adyacencia OSPF - fallas

Captura del tráfico del plano de control en el nodo

Verificación de Wireshark

Escenarios de resolución de problemas

Resolución de problemas de adyacencia OSPF: discrepancia de ID de área

Resolución de problemas de adyacencia OSPF:discrepancia de tipo de área

Solución de problemas de adyacencia OSPF:ID de router duplicado

Solución de problemas de adyacencia OSPF:discordancia de MTU

Solución de problemas de adyacencia OSPF:discrepancia de autenticación

Solución de problemas de adyacencia OSPF: discrepancia de temporizadores Hello/Dead

Resolución de problemas de adyacencia OSPF:discrepancia de tipo de interfaz

Difusión

punto a punto

Hoja de referencia del comando de verificación

Información Relacionada

Introducción

Este documento describe la solución de problemas de adyacencias OSPF (Open Shortest Path First) de Infraestructura centrada en aplicaciones (ACI).

Topología

Topología

Requisitos de Configuración de Peering OSPF

OSPF es uno de los protocolos que puede habilitar entre Cisco ACI y un router externo. Cisco ACI admite todas las opciones comunes, como el área OSPF, incluida la red troncal, varias opciones de rutas internas, autenticación de vecinos y otras opciones similares.

Una L3Out incluye las opciones del protocolo de routing, la configuración específica del switch (un perfil de nodo) y la configuración específica de la interfaz (un perfil de interfaz). Los parámetros relacionados con OSPF se pueden configurar principalmente en dos lugares, al igual que un router normal. La primera es la configuración de todo el routing y reenvío virtual (VRF) o de todo el nodo, como el ID de área y el tipo de área que se pueden configurar en la L3Out. El segundo es parámetros de nivel de interfaz como el intervalo hello OSPF o el tipo de interfaz (Broadcast, Point-to-Point(P2P)).

Estos son los requisitos para que se establezca la adyacencia OSPF entre la hoja de borde de ACI y el router externo:

1. El ID de área OSPF y el tipo deben coincidir

2. El ID del router OSPF debe ser único

3. La unidad de transmisión máxima (MTU) debe coincidir (de forma predeterminada, el fabric la establece en 9000 y la mayoría de Cisco IOS®/NXOS la establece en 1500)

4. La clave y el tipo de autenticación OSPF deben coincidir (si se utilizan)

5. Los intervalos Hello y Dead de OSPF deben coincidir

6. El tipo de red OSPF debe coincidir

El informe técnico proporcionaba una explicación detallada de los conceptos de diseño y las opciones relacionadas con ACI L3Out para los protocolos de routing compatibles.

Consulte el informe técnico si no está familiarizado con la configuración de L3Out y otros requisitos básicos.

Solución de problemas de adyacencia OSPF - Lista de comprobación general

Independientemente de si la adyacencia OSPF estaba activa antes o nunca ha aparecido, lo mejor es validar primero los requisitos básicos.

Paso 1. Haga ping en la interfaz final remota. Esto ayuda a confirmar si tiene disponibilidad de IP para el extremo lejano, que es un requisito principal para que OSPF aparezca.

iping -V <vrf> <remote_end_IP>

example:

BL-301# iping -V abc1:vrf-1 192.0.2.50

Paso 2. Valide los parámetros de configuración básicos:

1. El ID de área OSPF y el tipo deben coincidir

2. El ID del router OSPF debe ser único

3. MTU debe coincidir (de forma predeterminada, el fabric lo establece en 9000 y la mayoría de Cisco IOS/NXOS lo establece en 1500)

4. La clave y el tipo de autenticación OSPF deben coincidir (si se utilizan)

5. Los intervalos Hello y Dead de OSPF deben coincidir

6. El tipo de red OSPF debe coincidir

Los resultados del comando muestran los atributos de configuración enviados a la hoja.

BL-301# show ip int bri vrf abc1:vrf-1

IP Interface Status for VRF "abc1:vrf-1"(137)

Interface            Address              Interface Status

vlan1                192.0.2.1/24         protocol-up/link-up/admin-up  --> l3out SVI

lo9                  192.168.0.1/32       protocol-up/link-up/admin-up  --> Router ID SVI

BL-301# show ip ospf interface vlan 1

Vlan1 is up, line protocol is up

IP address 192.0.2.1/24, Process ID default VRF abc1:vrf-1, area backbone

Enabled by interface configuration

State P2P, Network type P2P, cost 4

Index 84, Transmit delay 1 sec

1 Neighbors, flooding to 1, adjacent with 1

Timer intervals: Hello 10, Dead 40, Wait 40, Retransmit 5

Hello timer due in 00:00:03

No authentication

Number of opaque link LSAs: 0, checksum sum 0

BL-301# show int vlan 1 | egrep "MTU"

MTU 9000 bytes, BW 10000000 Kbit, DLY 1 usec

BL-301# show ip ospf vrf abc1:vrf-1 | grep Routing

Routing Process default with ID 192.168.0.1 VRF abc1:vrf-1 --> Router ID

Anote todos los detalles resaltados y confirme que los parámetros finales remotos correspondientes están sincronizados.

Resolución de problemas de adyacencia OSPF - fallas

[+]From the border Leaf we can identify the state of the neighbor state

BL-301# show ip ospf neighbors vrf abc1:vrf-1

<<EMPTY>>

[+] You can check the associated faults to the VRF.

BL-301# moquery -c faultInst -x 'query-target-filter=wcard(faultInst.dn,"abc1:vrf-1")' | egrep "code|rule|dn|descr|lastTransition"

<<EMPTY>>

Hay algunos escenarios sin fallas activas en el entorno, pero puede haber un registro de fallas F1385 (protocol-ospf-adjacency-down) en la hoja que nos indica la última vez que esta vecindad estuvo activa o si nunca estuvo en estado completo.

Puede identificarlo con el moquery -c faultRecord -f 'fault.Inst.code=="F1385"' -x 'query-target-filter=wcard(faultRecord.dn,"abc1:vrf-1")' | grep dn comando.

Verifique el número de registros de fallas para cualquier fecha específica con el moquery -c faultRecord -f 'fault.Inst.code=="F1385"' -x 'query-target-filter=wcard(faultRecord.dn,"abc1:vrf-1")' -x 'query-target-filter=wcard(faultRecord.created,"2024-01-01")' | egrep "dn" | wc -l comando.

Debe identificar la interfaz OSPF y las IP configuradas local y remotamente.

[+] Identify the IP applied on the external device from the ARP associated to the interface

BL-301# moquery -c arpAdjEp -x 'query-target-filter=wcard(arpAdjEp.ifId,"vlan1")' | grep "ip "

ip           : 192.0.2.50

Captura del tráfico del plano de control en el nodo

Con la interfaz virtual de switch de origen y destino (SVI) esperada desde la hoja de borde, puede utilizar la utilidad tcpdump para verificar.

Nota: Para esto, se utiliza la interfaz kpm_inb que le permite ver todo el tráfico de red del plano de control dentro de la banda de la CPU.

[+] Capture a single OSPF hello packet using TCPDUMP coming for local BL OSPF IP 192.0.2.1

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb

tcpdump: listening on kpm_inb, link-type EN10MB (Ethernet), capture size 262144 bytes

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP 192.0.2.50

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb

tcpdump: listening on kpm_inb, link-type EN10MB (Ethernet), capture size 262144 bytes

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Verificación de Wireshark

Puede capturar el tráfico OSPF y específico de HOST para analizarlo en Wireshark.

BL-301# tcpdump -i kpm_inb proto ospf -vv -e -w - | tee /data/techsupport/Node-XXX_OSPF.pcap | tcpdump -r - host any

BL-301# tcpdump -xxxvi kpm_inb 'proto ospf and (host <<X.X.X.X>> or host <<Y.Y.Y.Y>>)' -w /data/techsupport/Node-XXX_OSPF_HOST.pcap

BL-301# tcpdump -i kpm_inb proto ospf -vv -e -w - | tee /data/techsupport/Node-XXX_OSPF_HOST.pcap | tcpdump -r - host X.X.X.X

Para las capturas pcap, puede utilizar los filtros de Wireshark buscando y utilizando Analizar > Aplicar como columna.

ospf.area_id = para identificar AreaID

ospf.auth.type = para verificar que el tipo de autenticación configurado coincida

ospf.hello.hello_interval = para verificar si hay diferentes MTU

ospf.hello.router_dead_interval = para verificar si hay diferentes configuraciones de intervalo muerto

ospf.srcrouter = RouterID

Escenarios de resolución de problemas

Resolución de problemas de adyacencia OSPF: discrepancia de ID de área

En la configuración de APIC con ID de área 0.0.0.42, vaya a Fabric > Tenants > Networking > L3Outs > <<L3outName> > Policy > Main.

ID de área OSPF incorrecta configurada 0.0.0.42

Desde la hoja de borde:

[+] Check OSPF interface details to confirm current area

BL-301# show ip ospf interface vlan 1 | grep area

IP address 192.0.2.1/24, Process ID default VRF abc1:vrf-1, area 0.0.0.42

Or

BL-301# moquery -c ospfIf -x 'query-target-filter=wcard(ospfIf.id,"vlan1")' | grep area

area         : 0.0.0.42

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Area 0.0.0.42, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb -c 1

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Desde dispositivo externo:

NX-OS# show logging log | tail -n 100 | grep ospf-bootcamp

2023 Dec 28 15:17:09 NX-OS %OSPF-4-AREA_ERR: ospf-bootcamp [22263] (301-l3-abc1) Packet from 192.0.2.1 on Ethernet1/2 received for wrong area 0.0.0.42

NX-OS# show ip ospf interface Ethernet1/2 | grep area

Process ID bootcamp VRF 301-l3-abc1, area 0.0.0.0

Solución: haga coincidir el área OSPF con 0.0.0.0 o la estructura básica en BL o con 0.0.0.42 en el dispositivo externo.

Resolución de problemas de adyacencia OSPF: discrepancia de tipo de área

En ACI GUI, configuración con tipo de área NSSA o Stub, navegue hasta Fabric > Tenants > Networking > L3Outs > "L3outName" > Policy > Main.

NSSA o configuración de área stub.

Desde la hoja de borde:

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# moquery -c ospfArea -x 'query-target-filter=wcard(ospfArea.dn,"abc1:vrf-1")' | egrep "type"

type               : nssa

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Area 0.0.0.42, Authentication Type: none (0)

Options [NSSA]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

or

BL-301# moquery -c ospfArea -x 'query-target-filter=wcard(ospfArea.dn,"abc1:vrf-1")' | egrep "type"

type               : stub

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Area 0.0.0.42, Authentication Type: none (0)

Options [none]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb -c 1

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 172.16.0.1, Area 0.0.0.42, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Desde dispositivo externo:

[+] Check OSPF interfaces con vrf

NX-OS# show ip int bri vrf 301-l3-abc1

IP Interface Status for VRF "301-l3-abc1"(21)

Interface            IP Address      Interface Status

Lo1001               110.1.0.1       protocol-up/link-up/admin-up

Eth1/2.1120          192.0.2.50      protocol-up/link-up/admin-up

NX-OS# show ip ospf interface Ethernet1/2 | grep area

Process ID bootcamp VRF 301-l3-abc1, area 0.0.0.0

Solución: haga coincidir el tipo de área OSPF regularmente en L3Out o coincida desde el dispositivo externo.

Solución de problemas de adyacencia OSPF: ID de router duplicado

Un ID de router duplicado evita que se forme la adyacencia OSPF. En el fabric ACI, después de configurar el ID de router OSPF, la hoja crea un loopback con la dirección IP del ID de router. Debido a que esta dirección se utiliza para el loopback, no puede superponerse con la IP de la interfaz que se utiliza cuando falla.

En este ejemplo, puede confirmar que estaba mal configurado con el ID de router del dispositivo vecino.

En GUI de ACI, vaya a Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Configured Nodes > topology/pod-Y/node-X.

mal configurado con el ID de router del dispositivo vecino.

Desde la hoja de borde:

[+] Check OSPF interfaces associated with the VRF

BL-301# show ip int bri vrf  abc1:vrf-1

IP Interface Status for VRF "abc1:vrf-1"(137)

Interface            Address              Interface Status

vlan1                192.0.2.1/24         protocol-up/link-up/admin-up

lo9                  172.16.0.1/32       protocol-up/link-up/admin-up

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb -c 1

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 48

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Desde dispositivo externo

NX-OS# show logging log | tail -n 100 | grep ospf-bootcamp

2024 Jan  4 13:55:36 NX-OS %OSPF-4-DUPRID:  ospf-bootcamp [22263] (301-l3-abc1) Router 192.0.2.1 on interface Ethernet1/2.1120 is using our routerid, packet dropped

Solución: utilice diferentes ID de router en ambos dispositivos.

utilizar ID de router diferentes en ambos dispositivos

Solución de problemas de adyacencia OSPF: discordancia de MTU

Después de que dos routers vecinos OSPF establezcan comunicación bidireccional y completen la elección de Router designado (DR)/BDR (en redes de difusión), los routers pasan al estado Exstart. En este estado, los routers vecinos establecen una relación activo/en espera y determinan el número de secuencia del descriptor de base de datos (DBD) inicial que se utilizará al intercambiar paquetes DBD.

Una vez que se ha negociado la relación activo/en espera (el router con el ID de router más alto se convierte en el activo), los routers vecinos pasan al estado de intercambio. En este estado, los routers intercambian paquetes DBD, que describen la base de datos de estados de link completa. Los routers también envían paquetes de solicitud del estado del link, que solicitan anuncios más recientes del estado del link (LSA) de sus vecinos.

Si la configuración de MTU para las interfaces del router vecino no coincide, los routers se atascan en el estado Exstart/Exchange. Esto se debe a que el router con la MTU más alta envía un paquete más grande que la MTU establecida en el router vecino, por lo que el router vecino ignora el paquete.

En Configuración de la GUI de APIC con configuración heredada predeterminada, vaya a Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Logical Interface Profiles > OSPF Interface Profile.

De forma predeterminada, el fabric de ACI establece la MTU de la interfaz de capa 3 en 9000 en lugar de en 1500

De forma predeterminada, el fabric de ACI establece la MTU de la interfaz de capa 3 en 9000 en lugar de en 1500. Dado que la ACI tiene una MTU más alta, continúa aceptando los paquetes DBD del router externo e intenta reconocerlos.

Si el router externo tiene una MTU inferior o superior, ignora los paquetes DBD junto con el ACK de ACI, continúa retransmitiendo el paquete DBD inicial y permanece en el estado Exstart/Exchange.

Desde la hoja de borde:

[+]From the border Leaf we can identify the state of the neighborship relation

BL-301# show ip ospf neighbors vrf abc1:vrf-1

OSPF Process ID default VRF abc1:vrf-1

Total number of neighbors: 1

Neighbor ID     Pri State            Up Time  Address         Interface

172.16.0.1       1 EXCHANGE/ -      01:10:05 192.0.2.50      Vlan1

[+] You can check the associated faults to the Tenant:VRF / OSPF interface

BL-301# moquery -c faultInst -x 'query-target-filter=wcard(faultInst.dn,"abc1:vrf-1\/if-\[vlan1\]")' | egrep "code|rule|dn|descr|lastTransition"

code             : F1385

descr            : OSPF adjacency is not full, current state Exchange

dn               : topology/pod-1/node-301/sys/ospf/inst-default/dom-abc1:vrf-1/if-[vlan1]/adj-172.16.0.1/fault-F1385

lastTransition   : 2023-12-28T12:26:23.369-05:00

rule             : ospf-adj-ep-failed

title            : OSPF Adjacency Down

code             : F3592

descr            : OSPF interface vlan1 mtu is different than neighbor mtu

dn               : topology/pod-1/node-301/sys/ospf/inst-default/dom-abc1:vrf-1/if-[vlan1]/fault-F3592

lastTransition   : 2023-12-28T12:26:23.369-05:00

rule             : ospf-if-mtu-config-mismatch-err

[+] Identify the MTU applied on the OSPF interface

BL-301# show int vlan 1 | egrep "MTU"

MTU 9000 bytes, BW 10000000 Kbit, DLY 1 usec

[+] If the default configuration is on place there will be a missmatch with the 1500 default

BL-301# show ip ospf event-history adjacency | grep "neighbor mtu"

2023-12-28T12:24:31.986149000-05:00 ospf default [20751]: TID 21885:ospfv2_check_ddesc_for_nbr_state:492:(abc1:vrf-1-base) DBD from 192.0.2.50,neighbor mtu [1500] is smaller than if mtu 9000

[+] Or if the locally configured MTU is lower tham external router

[2023-12-28T14:05:48.495659000-05:00:T:ospfv2_check_ddesc_for_nbr_state:478] abc1:vrf-1DBD from 192.0.2.50,neighbor mtu [1500] is large than if mtu 1200

Posibles soluciones:

- Haga coincidir la MTU en ambos dispositivos

Cuando se cambia una MTU en cualquiera de los lados, dado que la membresía ya está establecida, permanece así hasta la siguiente negociación y puede ser activada por múltiples razones. Por ejemplo, interfaz física inactiva, reimplementación de políticas, recarga de hojas, actualización, etc.

Desplácese hasta Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Logical Interface Profiles > OSPF Interface Profile  como se muestra en la imagen.

MTU configurada a 1500

- La omisión de MTU en la política de interfaz OSPF asociada restablece la conectividad.

El problema con la omisión de MTU puede aparecer cuando la base de datos OSPF crece. Cuando las MTU difieren en solo unos pocos bytes, la configuración puede funcionar durante mucho tiempo hasta que se encuentre con la combinación correcta de LSA que generan el DBD o el paquete de actualización del tamaño correcto.

Las pruebas en un laboratorio pequeño funcionan bien, pero la red de producción puede encontrar comportamientos inesperados.

Desplácese hasta Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Logical Interface Profiles > OSPF Interface Profile > Associated OSPF Interface Policy  como se muestra en la imagen.

MTU ignore configuration

Solución de problemas de adyacencia OSPF: discrepancia de autenticación

Puede habilitar la autenticación en OSPF para intercambiar información de actualización de ruteo de manera segura. La autenticación OSPF puede ser none (o null), simple o MD5. El método de autenticación 'none' significa que no se utiliza ninguna autenticación para OSPF y es el método predeterminado. Con la autenticación simple, la contraseña se transmite en texto sin cifrar a través de la red. Con la autenticación MD5, la contraseña no pasa por la red.

Estos son los tres tipos diferentes de autenticación compatibles con OSPF.

Null Authentication—Esto es también llamado Tipo 0 y significa que se incluye en el encabezado del paquete información sin autenticación. Es el valor predeterminado.

Autenticación simple: también se denomina Tipo 1 y utiliza contraseñas de texto simple sin cifrar.

Autenticación MD5: también se denomina tipo 2 y utiliza las contraseñas cifradas MD5.

No es necesario establecer la autenticación. Sin embargo, si está configurado, todos los routers pares del mismo segmento deben tener la misma contraseña y método de autenticación.

Desde la GUI de ACI, vaya a Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Logical Interface Profiles > OSPF Interface Profile  como se muestra en la imagen.

MD5 o autenticaciones simples configuradas

Desde CLI:

[+] Check Authentication type configured

APIC# moquery -c ospfIfP -x 'query-target-filter=wcard(ospfIfP.dn,"tn-abc1\/out-Site2-L3Out-OSPF-BL-301")' | grep authType

authType     : simple

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Backbone Area, Authentication Type: simple (1)

Simple text password: cisco

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

or

[+] Check Authentication type configured

APIC# moquery -c ospfIfP -x 'query-target-filter=wcard(ospfIfP.dn,"tn-abc1\/out-Site2-L3Out-OSPF-BL-301")' | grep authType

authType     : md5

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Backbone Area, Authentication Type: MD5 (2)

Key-ID: 1, Auth-Length: 16, Crypto Sequence Number: 0x026c0a34

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb -c 1

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 48

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

[+] Live OSPF trace Decode for VRF

BL-301# log_trace_bl_print_tool /var/sysmgr/tmp_logs/ospfv2_1_trace.bl | tail -n 250 | grep abc1:vrf-1 | grep key

[2024-01-04T16:23:29.650806000-05:00:T:ospfv2_set_authentication:70] abc1:vrf-1out pkt on Vlan1: auth simple text: key cisco

or

[2024-01-04T16:24:22.794682000-05:00:T:ospfv2_set_authentication:96] abc1:vrf-1out pkt on Vlan1: auth md5: key cisco, key id 1 Seq 40635829 (time 1704403462)

Desde dispositivo externo:

NX-OS#  show logging log | tail -n 100 | grep ospf-bootcamp

2024 Jan  4 16:55:01 NX-OS %OSPF-4-AUTH_ERR:  ospf-bootcamp [22263] (301-l3-abc1) Received packet from 192.0.2.1 on Ethernet1/2.1120 with bad authentication 1

or

2024 Jan  4 16:55:20 NX-OS %OSPF-4-AUTH_ERR:  ospf-bootcamp [22263] (301-l3-abc1) Received packet from 192.0.2.1 on Ethernet1/2.1120 with bad authentication 2

Solución: coincidencia de autenticaciones.

Solución de problemas de adyacencia OSPF: discrepancia de temporizadores Hello/Dead

Los paquetes de saludo OSPF son paquetes que un proceso OSPF envía a sus vecinos OSPF para mantener la conectividad con esos vecinos. Los paquetes de saludo se envían en un intervalo configurable (en segundos). Los valores predeterminados son de 10 segundos para un enlace Ethernet (para P2P y Tipo de red de difusión). Los paquetes de saludo incluyen una lista de todos los vecinos para los cuales se ha recibido un paquete de saludo dentro del intervalo muerto. El intervalo muerto también se puede configurar (en segundos) y el valor predeterminado es cuatro veces el valor del intervalo hello. El valor de todos los intervalos hello debe ser el mismo dentro de una red. Del mismo modo, el valor de todos los intervalos muertos debe ser el mismo dentro de una red.

Estos dos intervalos funcionan juntos para mantener la conectividad al indicar que el link está operativo. Si un router no recibe un paquete de saludo de un vecino dentro del intervalo muerto, declara que ese vecino está inactivo.

Si se modifican los temporizadores hello y dead OSPF predeterminados en el fabric ACI, deben coincidir con el router externo.

Desde la GUI de ACI, vaya a Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Logical Interface Profiles > OSPF Interface Profile > Associated OSPF Interface Policy  como se muestra en la imagen.

Temporizadores Hello/Dead personalizados

Desde la hoja de borde:

[+] Check OSPF interface configuration

BL-301# show ip ospf interface vlan 1 | egrep "Timer|Network"

State P2P, Network type P2P, cost 4

Timer intervals: Hello 20, Dead 42, Wait 42, Retransmit 5

Or

BL-301# moquery -c ospfIf -x 'query-target-filter=wcard(ospfIf.id,"vlan1")' | egrep "deadIntvl|helloIntvl|nwT"

deadIntvl    : 42

helloIntvl   : 20

nwT          : p2p

Or

APIC# moquery -c ospfRsIfPol -x 'query-target-filter=wcard(ospfIfP.dn,"abc1\/out-Site2-L3Out-OSPF-BL-301")' | grep tnOspfIfPolName

tnOspfIfPolName  : Custom_OSPF_Interface_Policy

APIC# moquery -c ospfIfPol -x 'query-target-filter=wcard(ospfIfPol.name,"Custom_OSPF_Interface_Policy")' | egrep "deadIntvl|helloIntvl|nwT"

deadIntvl    : 42

helloIntvl   : 20

nwT          : p2p

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 192.168.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 20s, Dead Timer 42s, Mask 255.255.255.0, Priority 1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb -c 1

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Desde dispositivo externo:

[+] Check OSPF interfaces con vrf

NX-OS# show ip int bri vrf 301-l3-abc1

IP Interface Status for VRF "301-l3-abc1"(21)

Interface            IP Address      Interface Status

Lo1001               110.1.0.1       protocol-up/link-up/admin-up

Eth1/2.1120          192.0.2.50      protocol-up/link-up/admin-up

[+] Check OSPF configuration by default Dead timer on NX-OS devices is 4 times hello interval

NX-OS# show run ospf all | section Ethernet1/2.1120 | grep hello

ip ospf hello-interval 10

[+] Check OSPF interface advertized parameters

NX-OS# show ip ospf interface Ethernet1/2.1120 | grep Timer

Timer intervals: Hello 10, Dead 40, Wait 40, Retransmit 5

Solución: ajuste los temporizadores OSPF.

Resolución de problemas de adyacencia OSPF: discrepancia de tipo de interfaz

En esta sección se describe la solución de problemas cuando se configura Broadcast (Difusión) o unspecified (sin especificar) en ACI y el dispositivo externo es P2P.

Difusión

- El tipo de red de difusión es el predeterminado para una interfaz Ethernet habilitada para OSPF

- El tipo de red de difusión requiere que un enlace admita funciones de difusión de capa 2

- El tipo de red de difusión tiene un temporizador de saludo de 10 segundos y de inactividad de 40 segundos (igual que P2P)

- Un tipo de red de difusión OSPF requiere el uso de un DR/BDR.

punto a punto

- Un tipo de red OSPF P2P no mantiene una relación DR/BDR

- El tipo de red P2P tiene un hello de 10 segundos y un temporizador de 40 segundos muerto

- Los tipos de red P2P están pensados para utilizarse entre dos routers conectados directamente

Desde la GUI de ACI, vaya a Fabric > Tenants > Networking > L3Outs > "L3outName" > "Node-X" > Logical Interface Profiles > OSPF Interface Profile > Associated OSPF Interface Policy  como se muestra en la imagen.

Tipo de red de difusión o no especificada configurado

Desde la hoja de borde:

[+] Check OSPF neighborship relation

BL-301# show ip ospf neighbors vrf abc1:vrf-1

OSPF Process ID default VRF abc1:vrf-1

Total number of neighbors: 1

Neighbor ID     Pri State            Up Time  Address         Interface

172.16.0.1       1 INITIALIZING/DROTHER 00:06:42 192.0.2.50      Vlan1

[+] Check OSPF interface configuration

BL-301# moquery -c ospfIf -x 'query-target-filter=wcard(ospfIf.id,"vlan1")' | egrep "deadIntvl|helloIntvl|nwT"

deadIntvl    : 40

helloIntvl   : 10

nwT          : bcast

or

BL-301# moquery -c ospfIf -x 'query-target-filter=wcard(ospfIf.id,"vlan1")' | egrep "deadIntvl|helloIntvl|nwT"

deadIntvl    : 40

helloIntvl   : 10

nwT          : unspecified

Or

APIC# moquery -c ospfRsIfPol -x 'query-target-filter=wcard(ospfIfP.dn,"abc1\/out-Site2-L3Out-OSPF-BL-301")' | grep tnOspfIfPolName

tnOspfIfPolName  : Custom_OSPF_Interface_Policy

APIC# moquery -c ospfIfPol -x 'query-target-filter=wcard(ospfIfPol.name,"Custom_OSPF_Interface_Policy")' | egrep "deadIntvl|helloIntvl|nwT"

deadIntvl    : 40

helloIntvl   : 10

nwT          : bcast

APIC# moquery -c ospfIfPol -x 'query-target-filter=wcard(ospfIfPol.name,"Custom_OSPF_Interface_Policy")' | egrep "deadIntvl|helloIntvl|nwT"

deadIntvl    : 40

helloIntvl   : 10

nwT          : unspecified

[+] Whether it is bcast or unspecified the interface will show as Broadcast

BL-301#  show ip ospf interface vlan 1 | egrep "Timer|Network"

State DR, Network type BROADCAST, cost 4

Timer intervals: Hello 10, Dead 40, Wait 40, Retransmit 5

[+] Capture a single packet TCPDUMP for local BL OSPF IP

BL-301# tcpdump src host 192.0.2.1 -vv -e -i kpm_inb -c 1

192.0.2.1 > ospf-all.mcast.net: OSPFv2, Hello, length 48

Router-ID 192.168.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Designated Router 192.0.2.1

Neighbor List:

172.16.0.1

[+] Capture a single OSPF hello packet using TCPDUMP coming from external device OSPF IP

BL-301# tcpdump src host 192.0.2.50 -vv -e -i kpm_inb -c 1

192.0.2.50 > ospf-all.mcast.net: OSPFv2, Hello, length 44

Router-ID 172.16.0.1, Backbone Area, Authentication Type: none (0)

Options [External]

Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.0, Priority 1

Desde dispositivo externo:

[+] Check OSPF interfaces con vrf

NX-OS# show ip int bri vrf 301-l3-abc1

IP Interface Status for VRF "301-l3-abc1"(21)

Interface            IP Address      Interface Status

Lo1001               110.1.0.1       protocol-up/link-up/admin-up

Eth1/2.1120          192.0.2.50      protocol-up/link-up/admin-up

[+] Check OSPF configuration by default Dead timer on NX-OS devices is 4 times hello interval

NX-OS# show run ospf all | section Ethernet1/2 | grep network

ip ospf network point-to-point

[+] Check OSPF interface advertized parameters

NX-OS# show ip ospf interface Ethernet1/2 | grep type

State P2P, Network type P2P, cost 1

Hoja de referencia del comando de verificación

En este documento se hizo referencia a estos comandos para resolver problemas en los diferentes escenarios.

Nodo

Comandos

Propósito

Switch ACI

show ip ospf neighbors vrf <<TNT:VRF>>

Verifique la relación de vecindad en VRF

show ip ospf interface brief vrf <<TNT:VRF>>

Verifique las interfaces OSPF asociadas con el VRF

moquery -c faultInst -x 'query-target-filter=wcard(faultInst.dn,"<<TNT:VRF>>")'

Puede verificar los fallos asociados al VRF

moquery -c ospfIf -x 'query-target-filter=wcard(ospfIf.dn,"<<TNT:VRF>>")'

Verifique todos los detalles de la interfaz OSPF asociados con el VRF

moquery -c ospfIf -x 'query-target-filter=wcard(ospfIf.id,"<<vlanX>>")'

Verifique la configuración de la interfaz OSPF

moquery -c arpAdjEp -x 'query-target-filter=wcard(arpAdjEp.ifId,"<<vlanX>>")' | grep ip

Verifique la IP aplicada en el dispositivo externo desde el ARP asociado a la interfaz

log_trace_bl_print_tool /var/sysmgr/tmp_logs/ospfv2_1_trace.bl | tail -n 250 | grep <<TNT:VRF>>

Decodificación de seguimiento OSPF activo para VRF

tcpdump -i kpm_inb proto ospf -vv -e -w - | tee /data/techsupport/Node-XXX_OSPF.pcap | tcpdump -r - host any

Capturar tráfico OSPF para analizarlo en Wireshark

tcpdump -i kpm_inb proto ospf -vv -e -w - | tee /data/techsupport/Node-XXX_OSPF_HOST.pcap | tcpdump -r - host <<X.X.X.X>>

Capturar el tráfico específico de HOST para analizarlo en Wireshark

tcpdump -xxxvi kpm_inb 'proto ospf and (host <<X.X.X.X>> or host <<Y.Y.Y.Y>>)' -w /data/techsupport/Node-XXX_OSPF_HOST.pcap

Capture el tráfico SRC y específico de DST de HOST para analizarlo en Wireshark

tcpdump src host <<X.X.X.X>> -vv -e -i kpm_inb -c 1

Capture un único plano de control dentro de la banda para un host específico

ACI APIC

moquery -c ospfIfP -x 'query-target-filter=wcard(ospfIfP.dn,"<<TNT>>\/out-<<L3outName>>")'

Verifique el tipo de autenticación configurado

moquery -c l3ext.RsPathL3OutAtt -x 'query-target-filter=wcard(l3extRsPathL3OutAtt.dn,"<<TNT>>\/out-<<L3outName>>")'

Comprobar la configuración de la ruta L3out

moquery -c faultRecord -f 'fault.Inst.code=="F1385"' -x 'query-target-filter=wcard(faultRecord.dn,"<<TNT:VRF>>")'

Verifique los registros históricos de fallas para el protocolo F1385 de fallas-ospf-adjacency-down

moquery -c ospfRsIfPol -x 'query-target-filter=wcard(ospfIfP.dn,"<<TNT>>\/out-<<L3outName>>")' | grep tnOspfIfPolName

Consulte L3out para ver la política de interfaz OSPF asociada personalizada

moquery -c ospfIfPol -x 'query-target-filter=wcard(ospfIfPol.name,"Custom_OSPF_Interface_Policy")'

Comprobar detalles personalizados de la política de interfaz OSPF asociada

Switch NXOS

show ip int bri vrf <<VRF>>

Verifique las interfaces OSPF con vrf

show run ospf all | section EthernetX/Y

Comprobar la configuración OSPF

show ip ospf interface EthernetX/Y

Verifique los parámetros anunciados de la interfaz OSPF

Información Relacionada

- Resolución de problemas de reenvío externo ACI

- Soporte técnico y descargas de Cisco