Información general sobre las políticas de rutas BGP
En esta guía se ofrece una descripción general de las políticas de rutas del protocolo de pasarela fronteriza (BGP) de Cloud Router.
Las políticas de rutas BGP le permiten definir reglas para filtrar rutas BGP o modificar atributos de rutas BGP. Puedes aplicar políticas de ruta BGP a rutas BGP entrantes y salientes. Utilizas el lenguaje de expresión común (CEL) para definir las políticas de ruta BGP que se aplicarán a tus rutas BGP.
Puedes aplicar políticas de rutas BGP a las rutas aprendidas o anunciadas en Cloud Router para las sesiones BGP. Las políticas de rutas BGP son independientes de las rutas basadas en políticas, que se aplican a las redes de nube privada virtual asignando una ruta de salto siguiente basada en una dirección de origen por ejemplo, que no se basa necesariamente en una dirección de destino. Para obtener más información, consulta Rutas basadas en políticas.
Te recomendamos que uses políticas de rutas BGP en un entorno de prueba para verificar tu configuración antes de implementarla en tu entorno de producción.
¿Qué son las políticas de rutas BGP?
Las políticas de rutas BGP se definen como una lista ordenada de términos. Cada término se evalúa en el orden que especifiques e incluye una condición y una acción correspondiente para cuando una ruta coincida con ese término. Una política de ruta BGP concreta solo se puede aplicar en una dirección: de entrada para las rutas aprendidas o de salida para las rutas anunciadas, pero no en ambas simultáneamente. Sin embargo, las políticas de ruta BGP se pueden aplicar a varios peers BGP en Cloud Router.
Casos prácticos de políticas de rutas BGP
Puede usar políticas de rutas BGP para controlar qué rutas BGP se aceptan, rechazan o modifican antes de que se anuncien a otros peers BGP o se importen a la tabla de enrutamiento de la VPC.
A continuación, se muestran ejemplos de casos prácticos de políticas de rutas BGP:
Modificar la ruta BGP preferida: puedes usar políticas de ruta BGP para modificar la ruta BGP preferida, lo que resulta útil para influir en la ruta que sigue el tráfico a través de una red. Por ejemplo, puedes usar políticas de ruta BGP para asegurarte de que las rutas BGP de un peer concreto se prefieran a otras rutas BGP cambiando el valor del atributo MED de BGP.
Filtrar rutas BGP no deseadas: puedes usar políticas de rutas BGP para filtrar rutas aprendidas no deseadas o para evitar anunciar rutas concretas a peers BGP. Esto resulta útil para evitar bucles de enrutamiento o rutas que envían tráfico por rutas no deseadas. Por ejemplo, puedes usar políticas de ruta BGP para filtrar prefijos en una subred.
Cumplir los objetivos de ingeniería de tráfico: puedes usar políticas de rutas BGP para cumplir objetivos de ingeniería de tráfico específicos. Para influir en la distribución del tráfico, añade uno o varios valores al principio de AS-PATH de una ruta. Por ejemplo, para un prefijo
192.168.2.0/24
, Cloud Router aprende el prefijo de dos peers, pero aprende diferentes valores de AS_PATH de cada peer. Por lo tanto,peer1
podría proporcionar un valor de AS-PATH de[1010]
ypeer2
podría proporcionar un valor de AS-PATH de[2020]
. Con las políticas de rutas BGP, puede añadir uno o varios valores al principio del valor AS-PATH.
Cómo se aplican las políticas de rutas BGP
Las políticas de ruta BGP se aplican a las configuraciones BGP de un Cloud Router. Cada peer de BGP tiene aplicadas cero o más políticas de importación y exportación de rutas. Las políticas de ruta de importación se aplican a las rutas entrantes, mientras que las políticas de ruta de exportación se aplican a las rutas salientes.
En el siguiente diagrama se muestran las políticas de importación de rutas de las rutas entrantes y las políticas de exportación de rutas de las rutas salientes:
A continuación, se describen las reglas generales que sigue Cloud Router al aplicar políticas de rutas BGP:
Las políticas de rutas BGP se evalúan en el orden en el que las incluyas.
Los términos de cada política de ruta BGP se evalúan en el orden de prioridad especificado.
Los términos pueden modificar las rutas BGP. Un término posterior puede modificar una ruta BGP creada por un término anterior.
La evaluación finaliza cuando se acepta o se rechaza una ruta BGP. Las rutas BGP se aceptan si se evalúan todas las políticas y los términos, y la ruta no se rechaza.
Los términos no se evalúan dos veces para una ruta en un solo ejercicio de una política de ruta BGP.
La evaluación de la política de rutas BGP se realiza de forma predeterminada con el valor "fail open". Es decir, las rutas que no se descartan explícitamente se aceptan durante la evaluación de la política de rutas de BGP. No puedes cambiar este comportamiento directamente, pero puedes crear una política de "descartar todo" que aplicarás a tu último emparejamiento. De esta forma, crearás una política de ruta BGP de cierre por fallo.
En el siguiente diagrama se muestra cómo se evalúa un conjunto de políticas aplicadas a una ruta:
Comunidades BGP y Cloud Router
Un valor de comunidad es un campo de 32 bits dividido en dos secciones de 16 bits. Por lo general, los primeros 16 bits del valor codifican el número del sistema autónomo (AS) de la red que origina la comunidad, pero Cloud Router no aplica esta convención. Los segundos 16 bits del valor codifican un número único asignado por el AS de origen.
Las políticas de rutas de BGP pueden coincidir con los atributos de comunidades de BGP estándar y actuar en consecuencia. Las políticas de rutas BGP no pueden coincidir con los atributos de comunidades extendidas ni modificarlos.
El proceso de selección de rutas de Cloud Router no usa el atributo de comunidades BGP en los prefijos. Por ejemplo, no respeta las comunidades BGP NO_EXPORT
ni NO_ADVERTISE
.
Una vez que se importan las políticas de rutas BGP, Cloud Router elimina las comunidades BGP de las rutas aprendidas, lo que significa que Cloud Router no vuelve a anunciar las comunidades. Es decir, Cloud Router trata las comunidades como un atributo no transitivo. Las comunidades BGP solo se pueden usar para influir en las políticas de coincidencia de entrada de Cloud Router. Puedes añadir, quitar o sustituir comunidades BGP en las rutas anunciadas para influir en lo que hace tu router peer.
Como Cloud Router no reconoce las comunidades conocidas, debes usar valores literales para las comunidades conocidas de BGP, como 65535:65281
para NO_EXPORT
o 65535:65282
para NO_ADVERTISE
.
Relaciones entre recursos de políticas de rutas BGP
Cada Cloud Router mantiene su propia lista de pares BGP y políticas de rutas BGP. La lista de peers de BGP que pertenecen a un recurso de Cloud Router concreto puede hacer referencia a las políticas de ruta de BGP por nombre.
Puedes crear, modificar y eliminar políticas de rutas BGP siempre que exista el Cloud Router principal.
Interacciones con otras funciones de Cloud Router
En las siguientes secciones se describe cómo interactúan las políticas de rutas BGP con otras funciones de Cloud Router.
- Rutas anunciadas personalizadas
- Las políticas de rutas BGP de exportación pueden eliminar o modificar rutas anunciadas personalizadas antes de que se anuncien a los peers de BGP. Las políticas de rutas BGP no pueden coincidir ni modificar rutas recibidas personalizadas.
- Límites de prefijos
El límite de prefijos que Cloud Router acepta de un peer es de 5000. Si un par anuncia más de 5000 prefijos, Cloud Router restablece la sesión BGP.
El límite de prefijos se aplica a las rutas entrantes antes de que se apliquen las políticas de rutas de BGP, por lo que el uso de políticas de rutas de BGP no cambia este comportamiento.
- Subredes
Las políticas de rutas BGP de exportación pueden filtrar o modificar las rutas de subredes de nube privada virtual antes de que se anuncien a los peers de BGP.
- Rutas de transporte público
Las políticas de rutas BGP pueden modificar las rutas de tránsito.
Cloud Router no respeta el comportamiento de las comunidades BGP
NO_EXPORT
yNO_ADVERTISED
.