Introducción
Este documento describe cómo resolver problemas de eBGP (External Border Gateway Protocol) cuando la sesión está atascada en estado activo debido a entradas incorrectas de LPTS (Local Packet Transport Services).
Colaborado por William Xu, ingeniero del TAC de Cisco.
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
Componentes Utilizados
La información de este documento se basa en las plataformas ASR9000 (Aggregation Services Router).
La información de este documento se originó a partir de dispositivos dentro de un ambiente de laboratorio específico. All of the devices used in this document started with a cleared (default) configuration. Si su red está activa, asegúrese de comprender el impacto potencial de cualquier comando.
Problema
Cuando configura eBGP, la sesión se puede atascar en activo indefinidamente si:
- No hay ningún comando update-source configurado
- Existe un cambio de topología que hace que el tráfico tome una ruta diferente
Estos síntomas aparecen cuando ocurre este problema:
- Se puede acceder a las direcciones IP
- Ambos peers BGP permanecen atascados en activo
- La captura de paquetes muestra que los routers envían muchos restablecimientos TCP
- show tcp trace error indica este error para las sesiones BGP.
Feb 18 09:32:15.393 tcp/error 0/RSP0/CPU0 t9 Lpts set the drop flag for 179 -> 5368, drop packet (pak 0xb1cf80f3) and send a RST
En resumen, la causa raíz del problema es que las entradas LPTS no se actualizan mediante el cambio de ruteo y reenvío. Significa que permanecen en un estado obsoleto después de que cambie la topología.
Se han hecho algunas mejoras para BGP. Estos dos escenarios cubren más detalles sobre este tema.
Nota: iBGP (Internal Border Gateway Protocol) normalmente no llega a este problema ya que update-source siempre se utiliza.
Situación 1: EBGP multisalto con cambio de topología
Puede crear sesiones eBGP multisalto entre ASR9K-1 y ASR9K-3. Las direcciones IP de peer son 172.123.1.1 y 172.123.2.2 en las interfaces físicas. No hay ningún comando update-source configurado. Con la topología actual, la sesión permanece en el estado activo. Esto se espera porque ambos routers utilizarán la interfaz en la subred 172.123.3.0/24 como la interfaz de egreso.

Puede apagar el link directo entre ASR9K-1 y ASR9K-3. Luego, las direcciones de peer son accesibles a través de ASR9K-2, que es el link multisalto, por lo que el ping es exitoso. Las direcciones IP de origen coinciden en ambos extremos, pero la sesión BGP aún se encuentra en estado activo.
Cuando se configuran los vecinos BGP, las entradas LPTS se crean según la tabla CEF (Cisco Express Forwarding). Para ASR9K-1, la dirección IP 172.123.2.2 se puede alcanzar a través de la subred 172.123.3.0/24. Por lo tanto, están disponibles las entradas pertinentes en LPTS. Permite al vecino BGP conectar el puerto 179 con la dirección IP local 172.123.3.1. Ya que intenta iniciar una sesión TCP desde el puerto local 26036, puede ver otra entrada para ella.
ASR9K-1:
========
ASR9K-1#show lpts ifib entry brief | inc "BGP"
...
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.1,179 172.123.2.2
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.1,26036 172.123.2.2,179
Esta salida es la misma en ASR9K-3.
ASR9K-3:
========
ASR9K-3#show lpts ifib entry brief | inc "BGP"
...
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.2,11126 172.123.1.1,179
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.2,179 172.123.1.1
Cuando se desactiva el link entre ASR9K-1 y ASR9K-3, los peers se pueden alcanzar a través de la trayectoria ASR9K-2 con una nueva dirección IP de origen local. Pero el cambio de topología no activa la actualización de LPTS. La entrada original con el puerto 179 permanece con la dirección IP local original. Esto evita que el router permita el ingreso de solicitudes TCP a la nueva dirección IP local. Por lo tanto, la sesión BGP en ambos extremos permanece atascada en un estado activo.
Situación 2 - eBGP con cambio de dirección de origen de actualización
Puede implementar una sesión eBGP entre ASR9K-1 y ASR9K-3. Las direcciones IP son 172.123.3.1 y 172.123.3.2. Según el nuevo plan, usted cambió las direcciones IP a 172.123.3.111 y 172.123.3.222. Si configura eBGP primero y luego actualiza las direcciones IP en las interfaces, la sesión EBGP se bloquea en un estado activo.
La causa es la misma que la situación 1. Una vez que configura la sesión eBGP, las entradas LPTS se generan según la interfaz de egreso local en ese punto.
ASR9K-1:
========
ASR9K-1#show lpts ifib entry brief | inc "BGP"
...
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.1,179 172.123.3.222
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.1,24067 172.123.3.222,179
ASR9K-3:
========
ASR9K-3#show lpts ifib entry brief | inc "BGP"
...
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.2,45091 172.123.3.111,179
BGP4 default TCP any 0/RSP1/CPU0 172.123.3.2,179 172.123.3.111
Aunque las direcciones IP locales se cambiaron más tarde, las entradas LPTS no se actualizan. La solicitud TCP se bloquea y la sesión permanece atascada en un estado activo para siempre.
Solución
Para resolver este problema, debe activar una actualización a LPTS. Puede utilizar estas opciones para resolver el problema:
- Cierre/No cierre los vecinos BGP
- Reconfiguración de los vecinos BGP
- Reiniciar BGP del proceso
- Configure update-source en ambos extremos, lo que puede evitar este problema.
Mejora en la versión XR
Hay algunas mejoras en las versiones recientes de IOS XR.
CSCuz51103 - Sesión BGP bloqueada en activo
Esta mejora introducida desde la versión 6.1.1 de XR. En esta versión, cuando BGP intenta restablecer la sesión, LPTS actualiza sus entradas con la nueva dirección IP local . El tiempo de actualización depende de la configuración del tiempo de espera en ambos extremos. Todavía puede esperar a que a veces vea la sesión en funcionamiento.
Incluso con esta mejora, una sesión de BGP todavía puede atascarse en un estado activo si ha configurado el modo pasivo. La razón es obvia. Si BGP no intenta restablecer la sesión, la dirección IP local no se verifica. Por lo tanto, las entradas LPTS no se actualizan.
Hay otra mejora para esta situación de la versión XR 6.2.1.
CSCvb15128 - Sesión BGP bloqueada en activa mientras el router tiene configurado el modo BGP pasivo
Información Relacionada