Este artículo aborda un problema común en redes IPv6 relacionado con la utilización de direcciones link-local en las conexiones BGP. Comprender este problema es crucial, ya que afecta la efectividad del enrutamiento y puede impactar en la comunicación entre dispositivos. A lo largo del artículo, se presentarán las causas del problema, un diagnóstico paso a paso, así como una solución recomendada y buenas prácticas a seguir para optimizar la configuración y evitar futuros contratiempos.
Descripción del problema
En redes IPv6, las direcciones link-local son utilizadas para la comunicación entre dispositivos en la misma red. Sin embargo, cuando se configura BGP (Protocolo de Puerta de Enlace Fronteriza), puede suceder que la información de enrutamiento no funcione como se espera, mostrando direcciones link-local en lugar de las direcciones globales de IPv6. Este comportamiento puede causar problemas en la conectividad y en la gestión de rutas.
Alcance
Este artículo se centra en la implementación de IPv6 en dispositivos FortiGate y su interacción con el BGP, subrayando la importancia de entender cómo funcionan las direcciones en este contexto para garantizar un rendimiento óptimo de la red.
Diagnóstico paso a paso
- Para la demostración se utiliza la siguiente topología:
El dispositivo remoto redistribuye la red conectada (red loopback 2402:800:6a00:24::100/64) al FortiGate local, asumiendo que el BGP está habilitado tanto en IPv4 como en IPv6 en su vecino 2402:800:6a00:27::303 y 10.211.244.81.
El FortiGate local también tiene ambos vecinos 2402:800:6a00:27::301 y 10.211.244.82 activando BGP en IPv4 e IPv6.
- Después de establecer BGP con el vecino, FortiGate tiene las siguientes salidas:
Los resultados anteriores mostraron que FortiGate aprendió la red 2402:800:6a00:24::100/64 con el next-hop 2402:800:6a00:27::301 de ambos vecinos, pero el vecino 10.211.244.82 solo anunció la dirección global IPv6, mientras que el vecino 2402:800:6a00:27::301 anunció tanto la dirección global como la dirección link-local de IPv6.
- Basado en RFC2545, se espera que este comportamiento sea normal para el enrutamiento IPv6 en BGP: RFC2545 (Parte 3 – Construcción del campo Next Hop).
- Si se prefiere usar solo la dirección global de IPv6, hay varias soluciones alternativas:
- Utilizar diferentes valores de peso en la configuración del vecino BGP, para preferir la ruta aprendida del vecino IPv4 10.211.244.82:
Como resultado, el next-hop muestra la dirección global en lugar de la dirección link-local en la tabla de rutas, porque la ruta con mayor peso fue seleccionada:
- Usar una lista de prefijos, route-map y aplicar route-map-in6 en la configuración del vecino. En el route map, se define la dirección IPv6 global del vecino como ip6-nexthop-local en el FortiGate local:
Como resultado, el next-hop muestra la dirección global en lugar de la dirección link-local en la tabla de enrutamiento:
- Otra solución alternativa es configurar ip6-nexthop-local como ‘::’, lo que significa no especificado. Esto evitará el uso de una dirección link-local como next-hop al instalar la ruta en la tabla de enrutamiento. Actualmente, esta funcionalidad está en desarrollo y se actualizará aquí cuando esté disponible.
¿Te ha resultado útil??
0 / 0

Hola, somos Mila Jiménez y César Sánchez. Dos apasionados de la ciberseguridad con muchos años de experiencia. Hemos trabajado en muchas empresas del mundo TI y ahora nos apetece compartir nuestro conocimiento con cualquiera que lo necesite.
¡Si te gusta nuestro contenido puedes invitarnos a un café AQUÍ!