Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Cómo se evalúan las comunidades BGP y las comunidades extendidas en condiciones de coincidencia de políticas de enrutamiento

Cuando se utilizan comunidades BGP y comunidades extendidas como condiciones de coincidencia en una política de enrutamiento, el software del marco de políticas las evalúa de la siguiente manera:

  • Cada ruta se evalúa con respecto a cada comunidad nombrada en una instrucción de política de enrutamiento.from Si una ruta coincide con una de las comunidades nombradas en la instrucción, la evaluación del término actual continúa.from Si una ruta no coincide, finaliza la evaluación del término actual.

  • La ruta se evalúa contra cada miembro de una comunidad nombrada. La evaluación de todos los miembros debe ser exitosa para que la evaluación de la comunidad nombrada sea exitosa.

  • Cada miembro de una comunidad con nombre se identifica mediante un valor de comunidad literal o una expresión regular. Cada miembro es evaluado contra cada comunidad asociada con la ruta. (Las comunidades son una propiedad desordenada de una ruta. Por ejemplo, 1:2 3:4 es lo mismo que 3:4 1:2.) Solo se requiere que una comunidad de la ruta coincida para que la evaluación de los miembros sea exitosa.

  • Las expresiones regulares de la comunidad se evalúan carácter por carácter. Por ejemplo, si una ruta contiene la comunidad 1234:5678, las expresiones regulares ven nueve caracteres discretos, incluidos los dos puntos (:), en lugar de dos conjuntos de números (1234 y 5678) separados por dos puntos. Por ejemplo:

    Si un miembro de la comunidad es una expresión regular, se realiza una coincidencia de cadena en lugar de una coincidencia numérica.

    Por ejemplo:

    Dada una ruta con un valor de comunidad de 1100:100, esta ruta coincide pero no .community example2example1

  • Para que coincida con la directiva de enrutamiento, la ruta debe coincidir con o .onecomm-onecomm-two

  • Para coincidir , la ruta debe tener una comunidad que coincida con 1:2 y una comunidad que coincida con 4:5 o 4:6.comm-one

  • Para coincidir , la ruta debe tener una comunidad que coincida con 7:8 y una comunidad que coincida con 9:10.comm-two

Múltiples coincidencias

Cuando se encuentran varias coincidencias, no se produce la agregación de etiquetas. Considere la siguiente configuración:

Supongamos, por ejemplo, que se reciben dos rutas con atributos de comunidad y que el nombre de la comunidad es .target:65000:1000 origin:65200:2000"5...:.*" En este caso, ambos atributos de comunidad extendida y coinciden con la expresión regular del nombre de comunidad.target:65000:1000origin:65200:2000 En este caso, no se produce la agregación de etiquetas. En el ejemplo siguiente, el campo muestra que las etiquetas no se agregan.Label operation

Puede resolver este problema de cualquiera de las siguientes maneras:

  • Sea más específico en la expresión regular si el atributo de comunidad extendida del sitio de origen no se superpone con el de destino.

  • Especifique el lugar de origen en el nombre de la comunidad.

Ambos métodos se muestran en los ejemplos siguientes.

Sea más específico en la expresión regular

Especifique el lugar de origen en el nombre de la comunidad

Invertir coincidencias de comunidad

La condición de coincidencia define una expresión regular y, si coincide con el atributo community del prefijo recibido, Junos OS devuelve un resultado TRUE.community De lo contrario, Junos OS devuelve un resultado FALSE. La instrucción hace que Junos OS se comporte de manera contraria.invert-match Si hay una coincidencia, Junos OS devuelve un resultado FALSE. Si no hay ninguna coincidencia, Junos OS devuelve un resultado VERDADERO. Para invertir los resultados de la coincidencia de expresiones de comunidad, incluya la instrucción en la configuración de comunidad.invert-match

Tipo de comunidad extendida

Las expresiones regulares no tienen en cuenta el tipo de comunidad extendida. Considere, por ejemplo, los siguientes atributos de comunidad y nombre de comunidad.

Comunidades:

  • 5200:1000

  • target:65000:1000

  • origin:65200:2000

Atributo de la comunidad:

  • miembros del nombre de la comunidad "5...:.*"

En este caso, tanto el atributo de comunidad extendida como el atributo de comunidad extendida, , coinciden con la expresión regular del nombre de la comunidad.5200:1000origin:65200:2000 Por lo tanto, la agregación de etiquetas no se produce, como se muestra aquí:

Puede resolver este problema mediante una expresión regular más específica. Por ejemplo, puede utilizar el carácter de anclaje () para enlazar la ubicación de los dígitos, como se muestra a continuación:^

Nota:

Con la implementación de la característica de comunidad grande en la versión 17.3, Junos OS comprueba que las comunidades extendidas o grandes coincidan con el BGP base o las comunidades de expresión regular BGP base. En otras palabras, una comunidad recibida solo puede compararse con el patrón de comunidad silvestre apropiado, como las comunidades normales contra las comunidades silvestres simples, las comunidades extendidas contra las comunidades silvestres extendidas y las comunidades grandes contra los patrones silvestres grandes. Por ejemplo, para permitir la publicidad de rutas que llevan la comunidad extendida de origen, use la expresión.origin:*:65020

Varias comunidades se emparejan con la lógica ex-OR

Esto difiere de la lógica de coincidencia AND utilizada para las comunidades no extendidas en BGP.

Si, por ejemplo, se reciben cuatro rutas con dos conjuntos de atributos de comunidad, la expresión regular podría coincidir con ambos atributos de comunidad. Considere el siguiente ejemplo:

  • Comunidades—5200:1000 objetivo:65000:1000

  • Comunidades—objetivo:65000:1000 origen:65200:2000

  • Atributo de la comunidad—miembro del nombre de la comunidad [ "^5...:.*" origin:65.*:.* ]

Ambas etiquetas se agregan, como se muestra aquí:

Un ejemplo más completo de los valores de la comunidad se muestra aquí:

Esta expresión regular coincide con valores de comunidad que comienzan con 1, 3 o 4, y coincide con valores de comunidad extendidos de origen de tipo cuyo valor administrativo comienza por 2, 3 o 6.

Inclusión de comunidades BGP y comunidades extendidas en condiciones de coincidencia de políticas de enrutamiento

Para incluir una comunidad BGP o una comunidad extendida en una condición de coincidencia de política de enrutamiento, incluya la condición en la instrucción de un término de política:communityfrom

Además, puede excluir explícitamente la información de la comunidad BGP con una ruta estática mediante la opción.none Incluya esta opción cuando configure una ruta individual en la parte que desea anular una opción de comunidad especificada en la parte.routedefaults

Puede incluir los nombres de varias comunidades en la condición de coincidencia.community Si hace esto, solo una comunidad necesita coincidir para que se produzca una coincidencia (la coincidencia es efectivamente una operación OR lógica).