Introducción
La gestión de enrutamiento en Azure es más compleja de lo que aparenta a simple vista. La eliminación de una User Defined Route (UDR) en una tabla de rutas asociada a una subnet o una interfaz de red (NIC) no siempre provoca un cambio inmediato en el flujo de tráfico. Este fenómeno a menudo genera confusión en administradores, quienes esperan que la supresión de la UDR elimine instantáneamente su efecto. Este artículo analiza cómo funciona el sistema de rutas efectivas en la red definida por software (SDN) de Azure, las interacciones entre distintos tipos de rutas y el proceso efectivo de toma de decisiones para el ruteo en la plataforma.
Componentes y contexto del enrutamiento en Azure SDN
Azure opera su red interna sobre un SDN que abstrae la infraestructura física y presentas las llamadas Effective Routes (rutas efectivas) para cada NIC. Estas rutas resultan de la combinación entre:
- Rutas definidas por el usuario (UDR): Tablas de rutas personalizadas aplicadas a subnets o interfaces.
- Rutas de borde BGP: Rutas dinámicas aprendidas vía Border Gateway Protocol, típicamente con conexiones ExpressRoute o VPN.
- Rutas del sistema: Las rutas por defecto proporcionadas por Azure, incluyendo
0.0.0.0/0hacia el Internet Gateway, rutas internas para comunicación entre subnets, rutas para truncar espacios IP reservados y otros.
La combinación de estas fuentes produce la tabla final que la NIC utiliza para direccionar el tráfico.
Flujo de decisión de enrutamiento en Azure
Cuando un paquete debe salir de una instancia en Azure, la NIC referencia su tabla de rutas efectiva. Esta tabla es el resultado de un cálculo realizado por la SDN de Azure teniendo en cuenta la prioridad de cada ruta (previamente asignada en la definición), y el origen de la ruta:
- La prioridad se establece por rango CIDR más específico (prefijo más largo gana).
- UDR tienen prioridad sobre rutas de sistema.
- Rutas BGP pueden tomar precedencia dependiendo de su origen y anuncio.
Este mecanismo no depende solo de la presencia de la UDR en una tabla aplicada a una subnet, sino también de configuraciones aplicadas directa o indirectamente a la NIC, cambios recientes en la tabla de rutas y sincronización interna del plano de control de Azure.
Por qué eliminar una UDR no cambia inmediatamente la ruta efectiva
En la práctica, varios factores generan un desfase visible entre la eliminación de la UDR y el reflejo de ese cambio en el tráfico:
- Persistencia del estado de la ruta en cache interno: Azure SDN mantiene un estado temporal en sus planos de datos y control para optimizar el rendimiento. Al borrar la UDR, estas cachés pueden no invalidarse inmediatamente.
- Tablas de rutas asociadas directamente a NIC: Aunque la UDR sea removida de la tabla vinculada a la subnet, puede existir otra tabla con rutas aplicadas directamente a la NIC, las cuales anulan la decisión esperada.
- Rutas BGP persistentes: En escenarios con ExpressRoute o VPN, el BGP puede reanunciar rutas que aparentan desplazar o mantener anteriores caminos aunque la UDR haya sido eliminada, debido a la jerarquía y persistencia de anuncios.
- Rutas de sistema inalterables: Algunas rutas del sistema, específicas para la operación interna de Azure, son irreemplazables y podrían parecer que mantienen tráfico en ciertos caminos.
- Retrasos en la replicación de cambios: Azure distribuye cambios en varias regiones y nodos. La propagación puede tardar varios minutos, durante los cuales las rutas efectivas no reflejan el cambio.
Escenarios ilustrativos
Escenario 1: Una UDR que fuerza salida por un NVAs eliminada de la tabla. Sin embargo, la NIC tiene asignada otra tabla con una ruta similar o el BGP mantiene la ruta. Resultado: el tráfico sigue pasando por el NVAs.
Escenario 2: UDR eliminada de una subnet, pero el host tiene una ruta definida directamente en la NIC mediante otra tabla de rutas aplicada. Las rutas efectivas siguen mostrando la ruta eliminada en apariencia.
Escenario 3: Un cambio reciente en UDR justificado para derivar el tráfico a un recurso local vía ExpressRoute. La UDR se elimina, pero el BGP vuelve a anunciar la ruta con mayor prioridad, manteniendo la ruta activa temporalmente.
Buenas prácticas para diagnóstico y validación
Para diagnosticar estos escenarios con precisión es indispensable:
- Consultar las Effective Routes en cada NIC: Azure Portal y comandos PowerShell/Azure CLI permiten revisar las rutas efectivas en la interfaz de red afectada. Esto muestra la combinación real tras aplicar UDR, rutas del sistema y BGP.
- Validar vínculos de tablas de rutas: Confirmar si existen más de una tabla de rutas aplicadas a la NIC o subnet que interactúan.
- Revisar anuncios BGP y conexiones: Examinar rutas provenientes de ExpressRoute o VPN para entender si el BGP sigue anunciando rutas que interfieren.
- Esperar tiempo prudente para la propagación de cambios: La propagación suele tomar minutos, especialmente en redes distribuidas en regiones.
- Uso de Azure Network Watcher: Con funcionalidades como IP Flow Verify o Next Hop para validar el path que tomará el tráfico y correlacionar con rutas efectivas.
- Verificar la configuración de tablas de rutas asociadas a NIC: Directamente aplicar una ruta en la NIC tiene mayor prioridad que en la subnet.
Criterio técnico para modificaciones en UDR
La eliminación de una UDR debe acompañarse de una revisión exhaustiva de las rutas efectivas en cada NIC afectada y un entendimiento claro del entorno global de rutas. No tiene sentido eliminar una UDR esperando resultados inmediatos sin validar:
- Que no existan otras tablas de rutas que continúan ofreciendo rutas similares.
- Que no haya rutas de sistema o BGP replicando efectivamente la ruta.
- Que la propagación de cambios en la SDN haya concluido.
- Que las NIC realmente hayan aplicado la nueva tabla o actualización.
Para cambios críticos en rutas, es recomendable auditar previamente las rutas efectivas por NIC y monitorear el tráfico con Network Watcher para confirmar la aplicación de la política deseada.
Conclusión
Comprender cómo Azure calcula y aplica sus rutas efectivas es fundamental para interpretar el impacto de eliminar una UDR. La decisión de enrutamiento no depende solamente de la presencia o ausencia de una ruta en la tabla aplicada a una subnet, sino que es el resultado de un complejo sistema que combina UDR, rutas de sistema y rutas BGP, además de la configuración aplicada directamente en las NIC. El comportamiento aparente de tráfico que sigue una ruta eliminada no es indicativo inmediato de error, sino un resultado esperado dado el diseño distribuido y escalable del Azure SDN. El diagnóstico puntual requiere consultar las rutas efectivas detalladas, validar anuncios BGP, revisar asociaciones de tablas y emplear herramientas como Network Watcher para una visión completa. Con este enfoque, la administración del enrutamiento en Azure será precisa y controlable, evitando falsas interpretaciones y downtime inadvertido por cambios de rutas prematuros o mal validados.


Deja tu pregunta