EN ESTA PÁGINA
Ejemplo: Aplicación de políticas de enrutamiento en diferentes niveles de la jerarquía de BGP
Ejemplo: Inyección de rutas OSPF en la tabla de enrutamiento BGP
Configuración de políticas de enrutamiento para controlar los anuncios de rutas BGP
Ejemplo: Configuración del filtrado de rutas salientes basado en prefijos BGP
Anuncio condicional que habilita la instalación condicional de casos de uso de prefijos
Filtro implícito para el comportamiento predeterminado de propagación de rutas EBGP sin políticas
Políticas básicas de enrutamiento BGP
Descripción de las políticas de enrutamiento
Cada política de enrutamiento se identifica mediante un nombre de directiva. El nombre puede contener letras, números y guiones (-) y puede tener hasta 255 caracteres. Para incluir espacios en el nombre, escriba el nombre completo entre comillas dobles. Cada nombre de directiva de enrutamiento debe ser único dentro de una configuración.
Una vez creada y nombrada una directiva, debe aplicarse antes de que esté activa. Las directivas de enrutamiento se aplican mediante las import
instrucciones y export
en el nivel de protocols protocol-name
la jerarquía de configuración.
En la import
instrucción, se enumera el nombre de la directiva de enrutamiento que se evaluará cuando se importen rutas a la tabla de enrutamiento desde el protocolo de enrutamiento.
En la export
instrucción, se enumera el nombre de la directiva de enrutamiento que se evaluará cuando se exporten rutas de la tabla de enrutamiento a un protocolo de enrutamiento dinámico. Solo las rutas activas se exportan desde la tabla de enrutamiento.
Para especificar más de una directiva y crear una cadena de directivas, enumere las directivas utilizando un espacio como separador. Si se especifican varias directivas, las directivas se evalúan en el orden en que se especifican. Tan pronto como se ejecuta una acción de aceptación o rechazo, finaliza la evaluación de la cadena de políticas.
Consulte también
Ejemplo: Aplicación de políticas de enrutamiento en diferentes niveles de la jerarquía de BGP
En este ejemplo se muestra el BGP configurado en una topología de red simple y se explica cómo surten efecto las directivas de enrutamiento cuando se aplican en distintos niveles de la configuración del BGP.
Requisitos
No se necesita ninguna configuración especial más allá de la inicialización del dispositivo antes de configurar este ejemplo.
Descripción general
Para BGP, puede aplicar políticas de la siguiente manera:
Instrucciones globales
import
yexport
BGP: incluya estas instrucciones en el nivel de jerarquía (para instancias de[edit protocols bgp]
enrutamiento, incluya estas instrucciones en el nivel de[edit routing-instances routing-instance-name protocols bgp]
jerarquía).Grupo
import
eexport
instrucciones: incluya estas instrucciones en el nivel de jerarquía (para las instancias de[edit protocols bgp group group-name]
enrutamiento, incluya estas instrucciones en el nivel de[edit routing-instances routing-instance-name protocols bgp group group-name]
jerarquía).Pares
import
eexport
instrucciones: incluya estas instrucciones en el nivel de jerarquía (para instancias de[edit protocols bgp group group-name neighbor address]
enrutamiento, incluya estas instrucciones en el nivel de[edit routing-instances routing-instance-name protocols bgp group group-name neighbor address]
jerarquía).
Una instrucción o export
nivel import
de par anula un grupo import
o export
una instrucción. Una instrucción o export
nivel import
de grupo anula un BGP import
o export
una instrucción global.
En este ejemplo, una directiva denominada send-direct
se aplica en el nivel global, otra directiva denominada send-192.168.0.1
se aplica en el nivel de grupo y una tercera directiva denominada send-192.168.20.1
se aplica en el nivel de vecino.
user@host# show protocols bgp { local-address 172.16.1.1; export send-direct; group internal-peers { type internal; export send-192.168.0.1; neighbor 172.16.2.2 { export send-192.168.20.1; } neighbor 172.16.3.3; } group other-group { type internal; neighbor 172.16.4.4; } }
Un punto clave, y que a menudo se malinterpreta y que puede generar problemas, es que en tal configuración, solo se aplica la política más explícita. Una política a nivel de vecino es más explícita que una política de nivel de grupo, que a su vez es más explícita que una política global.
El vecino 172.16.2.2 está sujeto solo a la política de envío 192.168.20.1. El vecino 172.16.3.3, que carece de algo más específico, está sujeto solo a la política de envío 192.168.0.1. Mientras tanto, el vecino 172.16.4.4 en el grupo otro grupo no tiene una política de nivel de grupo o vecino, por lo que utiliza la política de envío directo.
Si necesita que el vecino 172.16.2.2 realice la función de las tres políticas, puede escribir y aplicar una nueva política a nivel de vecino que abarque las funciones de las otras tres, o puede aplicar las tres políticas existentes, como una cadena, al vecino 172.16.2.2.
Topología
Figura 1 muestra la red de ejemplo.
Configuración rápida de CLI muestra la configuración de todos los dispositivos en Figura 1.
En la sección #d99e203__d99e457 se describen los pasos del dispositivo R1.
Configuración
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y pegue los comandos en la CLI en el nivel de [edit]
jerarquía.
Dispositivo R1
set interfaces fe-1/2/0 unit 0 description to-R2 set interfaces fe-1/2/0 unit 0 family inet address 10.10.10.1/30 set interfaces lo0 unit 0 family inet address 172.16.1.1/32 set protocols bgp local-address 172.16.1.1 set protocols bgp export send-direct set protocols bgp group internal-peers type internal set protocols bgp group internal-peers export send-static-192.168.0 set protocols bgp group internal-peers neighbor 172.16.2.2 export send-static-192.168.20 set protocols bgp group internal-peers neighbor 172.16.3.3 set protocols bgp group other-group type internal set protocols bgp group other-group neighbor 172.16.4.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/0.0 set policy-options policy-statement send-direct term 1 from protocol direct set policy-options policy-statement send-direct term 1 then accept set policy-options policy-statement send-static-192.168.0 term 1 from protocol static set policy-options policy-statement send-static-192.168.0 term 1 from route-filter 192.168.0.0/24 orlonger set policy-options policy-statement send-static-192.168.0 term 1 then accept set policy-options policy-statement send-static-192.168.20 term 1 from protocol static set policy-options policy-statement send-static-192.168.20 term 1 from route-filter 192.168.20.0/24 orlonger set policy-options policy-statement send-static-192.168.20 term 1 then accept set routing-options static route 192.168.0.1/32 discard set routing-options static route 192.168.20.1/32 discard set routing-options router-id 172.16.1.1 set routing-options autonomous-system 17
Dispositivo R2
set interfaces fe-1/2/0 unit 0 description to-R1 set interfaces fe-1/2/0 unit 0 family inet address 10.10.10.2/30 set interfaces fe-1/2/1 unit 0 description to-R3 set interfaces fe-1/2/1 unit 0 family inet address 10.10.10.5/30 set interfaces lo0 unit 0 family inet address 172.16.2.2/32 set protocols bgp group internal-peers type internal set protocols bgp group internal-peers local-address 172.16.2.2 set protocols bgp group internal-peers neighbor 172.16.3.3 set protocols bgp group internal-peers neighbor 172.16.1.1 set protocols bgp group internal-peers neighbor 172.16.4.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/0.0 set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set routing-options router-id 172.16.2.2 set routing-options autonomous-system 17
Dispositivo R3
set interfaces fe-1/2/1 unit 0 description to-R2 set interfaces fe-1/2/1 unit 0 family inet address 10.10.10.6/30 set interfaces fe-1/2/2 unit 0 description to-R4 set interfaces fe-1/2/2 unit 0 family inet address 10.10.10.9/30 set interfaces lo0 unit 0 family inet address 172.16.3.3/32 set protocols bgp group internal-peers type internal set protocols bgp group internal-peers local-address 172.16.3.3 set protocols bgp group internal-peers neighbor 172.16.2.2 set protocols bgp group internal-peers neighbor 172.16.1.1 set protocols bgp group internal-peers neighbor 172.16.4.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set protocols ospf area 0.0.0.0 interface fe-1/2/2.0 set routing-options router-id 172.16.3.3 set routing-options autonomous-system 17
Dispositivo R4
set interfaces fe-1/2/2 unit 0 description to-R3 set interfaces fe-1/2/2 unit 0 family inet address 10.10.10.10/30 set interfaces lo0 unit 0 family inet address 172.16.4.4/32 set protocols bgp group internal-peers type internal set protocols bgp group internal-peers local-address 172.16.4.4 set protocols bgp group internal-peers neighbor 172.16.2.2 set protocols bgp group internal-peers neighbor 172.16.1.1 set protocols bgp group internal-peers neighbor 172.16.3.3 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/2.0 set routing-options router-id 172.16.4.4 set routing-options autonomous-system 17
Procedimiento
Procedimiento paso a paso
En el ejemplo siguiente, debe explorar por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI.
Para configurar una directiva de ruta predeterminada de IS-IS:
Configure las interfaces del dispositivo.
[edit interfaces] user@R1# set fe-1/2/0 unit 0 description to-R2 user@R1# set fe-1/2/0 unit 0 family inet address 10.10.10.1/30 user@R1# set lo0 unit 0 family inet address 172.16.1.1/32
Habilite OSPF u otros protocolos de puerta de enlace interior (IGP) en las interfaces.
[edit protocols OSPF area 0.0.0.0] user@R1# set interface lo0.0 passive user@R1# set interface fe-1/2/0.0
Configurar rutas estáticas.
[edit routing-options] user@R1# set static route 192.168.0.1/32 discard user@R1# set static route 192.168.20.1/32 discard
Habilite las directivas de enrutamiento.
[edit protocols policy-options] user@R1# set policy-statement send-direct term 1 from protocol direct user@R1# set policy-statement send-direct term 1 then accept user@R1# set policy-statement send-static-192.168.0 term 1 from protocol static user@R1# set policy-statement send-static-192.168.0 term 1 from route-filter 192.168.0.0/24 orlonger user@R1# set policy-statement send-static-192.168.0 term 1 then accept user@R1# set policy-statement send-static-192.168.20 term 1 from protocol static user@R1# set policy-statement send-static-192.168.20 term 1 from route-filter 192.168.20.0/24 orlonger user@R1# set policy-statement send-static-192.168.20 term 1 then accept
Configure BGP y aplique las políticas de exportación.
[edit protocols bgp] user@R1# set local-address 172.16.1.1 user@R1# set protocols bgp export send-direct user@R1# set group internal-peers type internal user@R1# set group internal-peers export send-static-192.168.0 user@R1# set group internal-peers neighbor 172.16.2.2 export send-static-192.168.20 user@R1# set group internal-peers neighbor 172.16.3.3 user@R1# set group other-group type internal user@R1# set group other-group neighbor 172.16.4.4
Configure el ID del enrutador y el número de sistema autónomo (AS).
[edit routing-options] user@R1# set router-id 172.16.1.1 user@R1# set autonomous-system 17
Cuando termine de configurar el dispositivo, confirme la configuración.
[edit] user@R1# commit
Resultados
Desde el modo de configuración, confirme la configuración emitiendo los show interfaces
comandos , show protocols
show policy-options
, y show routing-options
. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@R1# show interfaces fe-1/2/0 { unit 0 { description to-R2; family inet { address 10.10.10.1/30; } } } lo0 { unit 0 { family inet { address 172.16.1.1/32; } } }
user@R1# show protocols bgp { local-address 172.16.1.1; export send-direct; group internal-peers { type internal; export send-static-192.168.0; neighbor 172.16.2.2 { export send-static-192.168.20; } neighbor 172.16.3.3; } group other-group { type internal; neighbor 172.16.4.4; } } ospf { area 0.0.0.0 { interface lo0.0 { passive; } interface fe-1/2/0.0; } }
user@R1# show policy-options policy-statement send-direct { term 1 { from protocol direct; then accept; } } policy-statement send-static-192.168.0 { term 1 { from { protocol static; route-filter 192.168.0.0/24 orlonger; } then accept; } } policy-statement send-static-192.168.20 { term 1 { from { protocol static; route-filter 192.168.20.0/24 orlonger; } then accept; } }
user@R1# show routing-options static { route 192.168.0.1/32 discard; route 192.168.20.1/32 discard; } router-id 172.16.1.1; autonomous-system 17;
Verificación
Confirme que la configuración funcione correctamente.
Verificación de BGP Route Learning
Propósito
Compruebe las tablas de enrutamiento para asegurarse de que las directivas de exportación del BGP funcionan según lo esperado.
Acción
user@R1> show route protocol direct inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 172.16.1.1/32 *[Direct/0] 1d 22:19:47 > via lo0.0 10.10.10.0/30 *[Direct/0] 1d 22:19:47 > via fe-1/2/0.0
user@R1> show route protocol static inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 192.168.0.1/32 *[Static/5] 02:20:03 Discard 192.168.20.1/32 *[Static/5] 02:20:03 Discard
user@R2> show route protocol bgp inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 192.168.20.1/32 *[BGP/170] 02:02:40, localpref 100, from 172.16.1.1 AS path: I, validation-state: unverified > to 10.10.10.1 via fe-1/2/0.0
user@R3> show route protocol bgp inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 192.168.0.1/32 *[BGP/170] 02:02:51, localpref 100, from 172.16.1.1 AS path: I, validation-state: unverified > to 10.10.10.5 via fe-1/2/1.0
user@R4> show route protocol bgp inet.0: 9 destinations, 11 routes (9 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 172.16.1.1/32 [BGP/170] 1d 20:38:54, localpref 100, from 172.16.1.1 AS path: I, validation-state: unverified > to 10.10.10.9 via fe-1/2/2.0 10.10.10.0/30 [BGP/170] 1d 20:38:54, localpref 100, from 172.16.1.1 AS path: I, validation-state: unverified > to 10.10.10.9 via fe-1/2/2.0
Significado
En el dispositivo R1, el show route protocol direct
comando muestra dos rutas directas: 172.16.1.1/32 y 10.10.10.0/30. El show route protocol static
comando muestra dos rutas estáticas: 192.168.0.1/32 y 192.168.20.1/32.
En el dispositivo R2, el show route protocol bgp
comando muestra que la única ruta que el dispositivo R2 ha aprendido a través de BGP es la ruta 192.168.20.1/32.
En el dispositivo R3, el show route protocol bgp
comando muestra que la única ruta que el dispositivo R3 ha aprendido a través de BGP es la ruta 192.168.0.1/32.
En el dispositivo R4, el show route protocol bgp
comando muestra que las únicas rutas que el dispositivo R4 ha aprendido a través de BGP son las rutas 172.16.1.1/32 y 10.10.10.0/30.
Verificación de la recepción de rutas BGP
Propósito
Asegúrese de que las directivas de exportación de BGP funcionan como se esperaba comprobando las rutas BGP recibidas del dispositivo R1.
Acción
user@R2> show route receive-protocol bgp 172.16.1.1 inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 192.168.20.1/32 172.16.1.1 100 I
user@R3> show route receive-protocol bgp 172.16.1.1 inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 192.168.0.1/32 172.16.1.1 100 I
user@R4> show route receive-protocol bgp 172.16.1.1 inet.0: 9 destinations, 11 routes (9 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path 172.16.1.1/32 172.16.1.1 100 I 10.10.10.0/30 172.16.1.1 100 I
Significado
En el dispositivo R2, el comando muestra que el route receive-protocol bgp 172.16.1.1
dispositivo R2 recibió solo una ruta BGP, 192.168.20.1/32, del dispositivo R1.
En el dispositivo R3, el comando muestra que el route receive-protocol bgp 172.16.1.1
dispositivo R3 solo recibió una ruta BGP, 192.168.0.1/32, del dispositivo R1.
En el dispositivo R4, el comando muestra que el route receive-protocol bgp 172.16.1.1
dispositivo R4 recibió dos rutas BGP, 172.16.1.1/32 y 10.10.10.0/30, del dispositivo R1.
En resumen, cuando se aplican varias políticas en diferentes jerarquías de CLI en BGP, solo se evalúa la aplicación más específica, con exclusión de otras aplicaciones de políticas menos específicas. Aunque este punto puede parecer tener sentido, se olvida fácilmente durante la configuración del enrutador, cuando cree erróneamente que una política de nivel de vecino se combina con una política global o de nivel de grupo, solo para descubrir que su comportamiento de política no es el previsto.
Ejemplo: Inyección de rutas OSPF en la tabla de enrutamiento BGP
En este ejemplo se muestra cómo crear una política que inyecta rutas OSPF en la tabla de enrutamiento BGP.
Requisitos
Antes de empezar:
Configure las interfaces de red.
Configurar sesiones externas del mismo nivel. Consulte Ejemplo: Configuración de sesiones de par punto a punto de BGP externas.
Configure sesiones de protocolo de puerta de enlace interior (IGP) entre pares.
Descripción general
En este ejemplo, se crea una directiva de enrutamiento denominada injectpolicy1
y un término de enrutamiento denominado injectterm1
. La política inyecta rutas OSPF en la tabla de enrutamiento BGP.
Topología
Configuración
- Configuración de la directiva de enrutamiento
- Configuración del seguimiento para la directiva de enrutamiento
Configuración de la directiva de enrutamiento
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red, copie y pegue los comandos en la CLI en el nivel de jerarquía [edit] y, a continuación, ingrese commit
desde el modo de configuración.
set policy-options policy-statement injectpolicy1 term injectterm1 from protocol ospf set policy-options policy-statement injectpolicy1 term injectterm1 from area 0.0.0.1 set policy-options policy-statement injectpolicy1 term injectterm1 then accept set protocols bgp export injectpolicy1
Procedimiento paso a paso
En el ejemplo siguiente, debe explorar por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI.
Para insertar rutas OSPF en una tabla de enrutamiento BGP:
Cree el término de la directiva.
[edit policy-options policy-statement injectpolicy1] user@host# set term injectterm1
Especifique OSPF como condición de coincidencia.
[edit policy-options policy-statement injectpolicy1 term injectterm1] user@host# set from protocol ospf
Especifique las rutas de un área OSPF como condición de coincidencia.
[edit policy-options policy-statement injectpolicy1 term injectterm1] user@host# set from area 0.0.0.1
Especifique que la ruta debe aceptarse si se cumplen las condiciones anteriores.
[edit policy-options policy-statement injectpolicy1 term injectterm1] user@host# set then accept
Aplique la política de enrutamiento a BGP.
[edit] user@host# set protocols bgp export injectpolicy1
Resultados
Confirme la configuración introduciendo los comandos y show protocols bgp
desde el show policy-options
modo de configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@host# show policy-options policy-statement injectpolicy1 { term injectterm1 { from { protocol ospf; area 0.0.0.1; } then accept; } }
user@host# show protocols bgp export injectpolicy1;
Cuando termine de configurar el dispositivo, ingrese commit
en el modo de configuración.
Configuración del seguimiento para la directiva de enrutamiento
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red, copie y pegue los comandos en la CLI en el nivel de jerarquía [edit] y, a continuación, ingrese commit
desde el modo de configuración.
set policy-options policy-statement injectpolicy1 term injectterm1 then trace set routing-options traceoptions file ospf-bgp-policy-log set routing-options traceoptions file size 5m set routing-options traceoptions file files 5 set routing-options traceoptions flag policy
Procedimiento paso a paso
En el ejemplo siguiente, debe explorar por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI.
Incluya una acción de seguimiento en la directiva.
[edit policy-options policy-statement injectpolicy1 term injectterm1] user@host# then trace
Configure el archivo de seguimiento para el resultado.
[edit routing-options traceoptions] user@host# set file ospf-bgp-policy-log user@host# set file size 5m user@host# set file files 5 user@host# set flag policy
Resultados
Confirme la configuración introduciendo los comandos y show routing-options
desde el show policy-options
modo de configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@host# show policy-options policy-statement injectpolicy1 { term injectterm1 { then { trace; } } }
user@host# show routing-options traceoptions { file ospf-bgp-policy-log size 5m files 5; flag policy; }
Cuando termine de configurar el dispositivo, ingrese commit
en el modo de configuración.
Verificación
Solución de problemas
Uso del comando show log para examinar las acciones de la directiva de enrutamiento
Problema
La tabla de enrutamiento contiene rutas inesperadas o faltan rutas en la tabla de enrutamiento.
Solución
Si configura el seguimiento de directivas como se muestra en este ejemplo, puede ejecutar el show log ospf-bgp-policy-log
comando para diagnosticar problemas con la directiva de enrutamiento. El show log ospf-bgp-policy-log
comando muestra información sobre las rutas que el injectpolicy1
término de directiva analiza y sobre las que actúa.
Configuración de políticas de enrutamiento para controlar los anuncios de rutas BGP
Todos los protocolos de enrutamiento utilizan la tabla de enrutamiento de Junos OS para almacenar las rutas que aprenden y para determinar qué rutas deben anunciar en sus paquetes de protocolo. La directiva de enrutamiento permite controlar en qué rutas se almacenan y recuperan los protocolos de enrutamiento de la tabla de enrutamiento. Para obtener información acerca de la directiva de enrutamiento, consulte la Guía del usuario Directivas de enrutamiento, filtros de firewall y políticas de tráfico.
Al configurar la directiva de enrutamiento BGP, puede realizar las siguientes tareas:
- Aplicación de la directiva de enrutamiento
- Configuración de BGP para anunciar rutas inactivas
- Configuración de BGP para anunciar la mejor ruta externa a pares internos
- Configuración de la frecuencia con la que BGP intercambia rutas con la tabla de enrutamiento
- Deshabilitar la supresión de anuncios de ruta
Aplicación de la directiva de enrutamiento
La política de enrutamiento se define en el nivel jerárquico [edit policy-options]
. Para aplicar directivas definidas para BGP, incluya las import
instrucciones y export
en la configuración de BGP.
Puede aplicar las directivas de la siguiente manera:
Instrucciones globales
import
yexport
BGP: incluya estas instrucciones en el nivel de jerarquía (para instancias de[edit protocols bgp]
enrutamiento, incluya estas instrucciones en el nivel de[edit routing-instances routing-instance-name protocols bgp]
jerarquía).Grupo
import
eexport
instrucciones: incluya estas instrucciones en el nivel de jerarquía (para las instancias de[edit protocols bgp group group-name]
enrutamiento, incluya estas instrucciones en el nivel de[edit routing-instances routing-instance-name protocols bgp group group-name]
jerarquía).Pares
import
eexport
instrucciones: incluya estas instrucciones en el nivel de jerarquía (para instancias de[edit protocols bgp group group-name neighbor address]
enrutamiento, incluya estas instrucciones en el nivel de[edit routing-instances routing-instance-name protocols bgp group group-name neighbor address]
jerarquía).
Una instrucción o export
nivel import
de par anula un grupo import
o export
una instrucción. Una instrucción o export
nivel import
de grupo anula un BGP import
o export
una instrucción global.
Para aplicar directivas, consulte las siguientes secciones:
- Aplicación de políticas a rutas que se importan a la tabla de enrutamiento desde BGP
- Aplicación de políticas a rutas que se exportan desde la tabla de enrutamiento al BGP
Aplicación de políticas a rutas que se importan a la tabla de enrutamiento desde BGP
Para aplicar una política a las rutas que se importan a la tabla de enrutamiento desde BGP, incluya la instrucción en la import
que se enumerarán los nombres de una o varias políticas que se van a evaluar:
import [ policy-names ];
Para obtener una lista de los niveles jerárquicos en los que puede incluir esta instrucción, vea la sección de resumen de instrucción de esta instrucción.
Si especifica más de una directiva, se evalúan en el orden especificado, del primero al último, y se aplica el primer filtro coincidente a la ruta. Si no se encuentra ninguna coincidencia, BGP coloca en la tabla de enrutamiento solo aquellas rutas que aprendieron de los dispositivos de enrutamiento BGP.
Aplicación de políticas a rutas que se exportan desde la tabla de enrutamiento al BGP
Para aplicar una política a las rutas que se exportan de la tabla de enrutamiento al BGP, incluya la instrucción en la export
que se enumerarán los nombres de una o varias políticas que se van a evaluar:
export [ policy-names ];
Para obtener una lista de los niveles jerárquicos en los que puede incluir esta instrucción, vea la sección de resumen de instrucción de esta instrucción.
Si especifica más de una directiva, se evalúan en el orden especificado, del primero al último, y se aplica el primer filtro coincidente a la ruta. Si ninguna ruta coincide con los filtros, la tabla de enrutamiento exporta a BGP solo las rutas que aprendió de BGP.
Configuración de BGP para anunciar rutas inactivas
De forma predeterminada, BGP almacena la información de ruta que recibe de los mensajes de actualización en la tabla de enrutamiento de Junos OS, y la tabla de enrutamiento exporta solo rutas activas a BGP, que BGP luego anuncia a sus pares. Para que la tabla de enrutamiento exporte a BGP la mejor ruta aprendida por BGP, incluso si Junos OS no la seleccionó como una ruta activa, incluya la advertise-inactive
instrucción:
advertise-inactive;
Para obtener una lista de los niveles jerárquicos en los que puede incluir esta instrucción, vea la sección de resumen de instrucción de esta instrucción.
Configuración de BGP para anunciar la mejor ruta externa a pares internos
En general, las implementaciones de BGP implementadas no anuncian la ruta externa con el valor de preferencia local más alto para los pares internos, a menos que sea la mejor ruta. Aunque este comportamiento era requerido por una versión anterior de la especificación BGP versión 4, RFC 1771, normalmente no se seguía para minimizar la cantidad de información anunciada y evitar bucles de enrutamiento. Sin embargo, hay escenarios en los que anunciar la mejor ruta externa es beneficioso, en particular, situaciones que pueden resultar en la oscilación de la ruta del IBGP.
En Junos OS versión 9.3 y posteriores, puede configurar BGP para anunciar la mejor ruta externa en un grupo de malla BGP interno (IBGP), un clúster reflector de ruta o una confederación de sistema autónomo (AS), incluso cuando la mejor ruta es una ruta interna.
Para configurar la instrucción en un reflector de ruta, debe deshabilitar la advertise-external
reflexión intracluster con la no-client-reflect
instrucción.
Cuando un dispositivo de enrutamiento se configura como reflector de ruta para un clúster, una ruta anunciada por el reflector de ruta se considera interna si se recibe de un par interno con el mismo identificador de clúster o si ambos pares no tienen ningún identificador de clúster configurado. Una ruta recibida de un par interno que pertenece a otro clúster, es decir, con un identificador de clúster diferente, se considera externa.
En una confederación, cuando anuncie una ruta a un enrutador en el límite de la confederación, cualquier subAS de confederación diferente se considera externa.
También puede configurar BGP para anunciar la ruta externa solo si el proceso de selección de ruta alcanza el punto en el que se evalúa la métrica del discriminador de salida múltiple (MED). Como resultado, no se anuncia una ruta externa con una ruta de AS peor (es decir, más larga) que la de la ruta activa.
Junos OS también proporciona compatibilidad para configurar una política de exportación de BGP que coincida con el estado de una ruta anunciada. Puede coincidir en rutas activas o inactivas. Para obtener más información, consulte la Guía del usuario de políticas de enrutamiento, filtros de firewall y políticas de tráfico.
Para configurar el BGP de modo que anuncie la mejor ruta externa a los pares internos, incluya la advertise-external
instrucción:
advertise-external;
La advertise-external
instrucción se admite tanto a nivel de grupo como de vecino. Si configura la instrucción en el nivel de vecino, debe configurarla para todos los vecinos de un grupo. De lo contrario, el grupo se divide automáticamente en diferentes grupos.
Para obtener una lista completa de los niveles de jerarquía en los que puede configurar esta instrucción, consulte la sección de resumen de instrucción de esta instrucción.
Para configurar BGP de modo que anuncie la mejor ruta externa solo si el proceso de selección de ruta llega al punto en el que se evalúa el valor MED, incluya la conditional
instrucción:
advertise-external { conditional; }
Configuración de la frecuencia con la que BGP intercambia rutas con la tabla de enrutamiento
BGP almacena la información de ruta que recibe de los mensajes de actualización en la tabla de enrutamiento, y la tabla de enrutamiento exporta rutas activas de la tabla de enrutamiento a BGP. A continuación, BGP anuncia las rutas exportadas a sus pares. De forma predeterminada, el intercambio de información de ruta entre BGP y la tabla de enrutamiento se produce inmediatamente después de recibir las rutas. Este intercambio inmediato de información de ruta puede causar inestabilidades en la información de accesibilidad de la red. Para protegerse de esto, puede retrasar el tiempo transcurrido entre el momento en que BGP y la tabla de enrutamiento intercambian información de ruta.
Para configurar la frecuencia con la que BGP y la tabla de enrutamiento intercambian información de ruta, incluya la out-delay
instrucción:
out-delay seconds;
De forma predeterminada, la tabla de enrutamiento conserva parte de la información de ruta aprendida de BGP. Para que la tabla de enrutamiento conserve toda o ninguna de esta información, incluya la keep
instrucción:
keep (all | none);
Para obtener una lista de los niveles jerárquicos en los que puede incluir estas instrucciones, consulte las secciones de resumen de instrucciones de estas instrucciones.
La tabla de enrutamiento puede conservar la información de ruta aprendida de BGP de una de las siguientes maneras:
Predeterminado (omitir la instrucción): conserve toda la
keep
información de ruta que aprendió del BGP, excepto para las rutas cuya ruta de AS está en bucle y cuyo bucle incluye el AS local.keep all
: conserve toda la información de ruta que aprendió de BGP.keep none
: descarte las rutas recibidas de un par y que fueron rechazadas por la política de importación u otra comprobación de cordura, como la ruta del AS o el salto siguiente. Cuando se configurakeep none
para la sesión BGP y los cambios de política entrante, Junos OS fuerza la reanunciación del conjunto completo de rutas anunciadas por el par.
En una situación de curación de rutas de AS, las rutas con rutas en bucle teóricamente podrían volverse utilizables durante una reconfiguración suave cuando se cambia el límite de bucles de ruta de AS. Sin embargo, hay una diferencia significativa en el uso de memoria entre el valor predeterminado y keep all
.
Considere los siguientes escenarios:
Un par vuelve a anunciar las rutas de regreso al compañero del que las aprendió.
Esto puede suceder en los siguientes casos:
El dispositivo de enrutamiento de otro proveedor anuncia las rutas de regreso al par emisor.
El comportamiento predeterminado del par Junos OS de no volver a anunciar las rutas de regreso al par de envío se anula mediante la configuración
advertise-peer-as
de .
Un dispositivo de enrutamiento perimetral de proveedor (PE) descarta cualquier ruta VPN que no tenga ninguno de los destinos de ruta esperados.
Cuando keep all
se configura, se anula el comportamiento de descartar rutas recibidas en los escenarios anteriores.
Deshabilitar la supresión de anuncios de ruta
Junos OS no anuncia las rutas aprendidas de un par de EBGP al mismo par BGP externo (EBGP). Además, el software no anuncia esas rutas de regreso a ningún par de EBGP que se encuentre en el mismo AS que el par de origen, independientemente de la instancia de enrutamiento. Puede modificar este comportamiento incluyendo la advertise-peer-as
instrucción en la configuración. Para deshabilitar la supresión de anuncios predeterminada, incluya la advertise-peer-as
instrucción:
advertise-peer-as;
El comportamiento predeterminado de supresión de ruta está deshabilitado si la as-override
instrucción se incluye en la configuración.
Si incluye la advertise-peer-as
instrucción en la configuración, BGP anuncia la ruta independientemente de esta comprobación.
Para restaurar el comportamiento predeterminado, incluya la no-advertise-peer-as
instrucción en la configuración:
no-advertise-peer-as;
Si incluye las as-override
instrucciones y no-advertise-peer-as
en la configuración, la no-advertise-peer-as
instrucción se omite. Puede incluir estas instrucciones en varios niveles jerárquicos.
Para obtener una lista de los niveles jerárquicos en los que puede incluir estas instrucciones, consulte la sección de resumen de instrucciones para estas instrucciones.
Consulte también
Ejemplo: Configuración de una directiva de enrutamiento para anunciar la mejor ruta externa a pares internos
La especificación del protocolo BGP, tal como se define en RFC 1771, especifica que un par BGP debe anunciar a sus pares internos la ruta externa de preferencia más alta, incluso si esta ruta no es la mejor en general (en otras palabras, incluso si la mejor ruta es una ruta interna). En la práctica, las implementaciones de BGP implementadas no siguen esta regla. Las razones para desviarse de la especificación son las siguientes:
Minimizar la cantidad de información anunciada. BGP escala según el número de rutas disponibles.
Evitar los bucles de enrutamiento y reenvío.
Hay, sin embargo, varios escenarios en los que el comportamiento, especificado en RFC 1771, de anunciar la mejor ruta externa podría ser beneficioso. No siempre es deseable limitar la información de rutas, ya que la diversidad de rutas puede ayudar a reducir los tiempos de restauración. Publicidad la mejor ruta externa también puede abordar problemas internos de oscilación de ruta BGP (IBGP) como se describe en RFC 3345, Condición de oscilación de ruta persistente del Protocolo de puerta de enlace de borde (BGP).
La advertise-external
instrucción modifica el comportamiento de un altavoz BGP para anunciar la mejor ruta externa para los pares de IBGP, incluso cuando la mejor ruta general es una ruta interna.
La advertise-external
instrucción se admite tanto a nivel de grupo como de vecino. Si configura la instrucción en el nivel de vecino, debe configurarla para todos los vecinos de un grupo. De lo contrario, el grupo se divide automáticamente en diferentes grupos.
La conditional
opción limita el comportamiento de la advertise-external
configuración, de modo que la ruta externa solo se anuncia si el proceso de selección de ruta alcanza el punto en el que se evalúa la métrica del discriminador de salida múltiple (MED). Por lo tanto, una ruta externa no se anuncia si, por ejemplo, tiene una ruta de AS que es peor (más larga) que la de la ruta activa. La conditional
opción restringe el anuncio de ruta externa a cuando la mejor ruta externa y la ruta activa son iguales hasta el paso MED del proceso de selección de ruta. Tenga en cuenta que los criterios utilizados para seleccionar la mejor ruta externa son los mismos independientemente de si la conditional
opción está configurada o no.
Junos OS también proporciona compatibilidad para configurar una política de exportación de BGP que coincida con el estado de una ruta anunciada. Puede hacer coincidir rutas activas o inactivas, de la siguiente manera:
policy-options { policy-statement name{ from state (active|inactive); } }
Este calificador solo coincide cuando se usa en el contexto de una política de exportación. Cuando un protocolo anuncia una ruta que puede anunciar rutas inactivas (como BGP), state inactive
coincide con las rutas anunciadas como resultado de las advertise-inactive
instrucciones y advertise-external
.
Por ejemplo, la siguiente configuración se puede utilizar como una política de exportación de BGP hacia pares internos para marcar rutas anunciadas debido a la configuración con una comunidad definida por el advertise-external
usuario. Los enrutadores receptores pueden usar esa comunidad más tarde para filtrar dichas rutas de la tabla de reenvío. Este mecanismo puede utilizarse para abordar las preocupaciones de que las rutas publicitarias no utilizadas para el reenvío por parte del remitente puedan dar lugar a bucles de reenvío.
user@host# show policy-options policy-statement mark-inactive { term inactive { from state inactive; then { community set comm-inactive; } } term default { from protocol bgp; then accept; } then reject; } community comm-inactive members 65536:65284;
Requisitos
Se requiere Junos OS 9.3 o posterior.
Descripción general
En este ejemplo se muestran tres dispositivos de enrutamiento. El dispositivo R2 tiene una conexión BGP externa (EBGP) al dispositivo R1. El dispositivo R2 tiene una conexión IBGP con el dispositivo R3.
El dispositivo R1 anuncia 172.16.6.0/24. El dispositivo R2 no establece la preferencia local en una política de importación para las rutas del dispositivo R1 y, por lo tanto, 172.16.6.0/24 tiene la preferencia local predeterminada de 100.
El dispositivo R3 anuncia 172.16.6.0/24 con una preferencia local de 200.
Cuando la instrucción no está configurada en el dispositivo R2, el dispositivo R2 no anuncia 172.16.6.0 advertise-external
/24 en el dispositivo R3.
Cuando la instrucción está configurada en el advertise-external
dispositivo R2 en la sesión del dispositivo R3, el dispositivo R2 anuncia 172.16.6.0/24 en el dispositivo R3.
Cuando advertise-external conditional
se configura en el dispositivo R2 en la sesión del dispositivo R3, el dispositivo R2 no anuncia 172.16.6.0/24 en el dispositivo R3. Si elimina la configuración en el dispositivo R3 y agrega la configuración en el then local-preference 200
path-selection as-path-ignore
dispositivo R2 (lo que hace que los criterios de selección de ruta sean iguales hasta el paso MED del proceso de selección de ruta), el dispositivo R2 anuncia 172.16.6.0/24 para el dispositivo R3.
Para configurar la instrucción en un reflector de ruta, debe deshabilitar la advertise-external
reflexión dentro del clúster con la no-client-reflect
instrucción y el clúster de cliente debe estar completamente mallado para evitar el envío de anuncios de ruta redundantes.
Cuando un dispositivo de enrutamiento se configura como reflector de ruta para un clúster, una ruta anunciada por el reflector de ruta se considera interna si se recibe de un par interno con el mismo identificador de clúster o si ambos pares no tienen ningún identificador de clúster configurado. Una ruta recibida de un par interno que pertenece a otro clúster, es decir, con un identificador de clúster diferente, se considera externa.
Topología
Figura 2 muestra la red de ejemplo.
Configuración rápida de CLI muestra la configuración de todos los dispositivos en Figura 2.
En la sección #d102e164__d102e342 se describen los pasos del dispositivo R2.
Configuración
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y pegue los comandos en la CLI en el nivel de [edit]
jerarquía.
Dispositivo R1
set interfaces fe-1/2/0 unit 0 description to-R2 set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.1/30 set interfaces lo0 unit 0 family inet address 192.168.0.1/32 set protocols bgp group ext type external set protocols bgp group ext export send-static set protocols bgp group ext peer-as 200 set protocols bgp group ext neighbor 10.0.0.2 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 from route-filter 172.16.6.0/24 exact set policy-options policy-statement send-static term 1 then accept set policy-options policy-statement send-static term 2 then reject set routing-options static route 172.16.6.0/24 reject set routing-options router-id 192.168.0.1 set routing-options autonomous-system 100
Dispositivo R2
set interfaces fe-1/2/0 unit 0 description to-R1 set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.2/30 set interfaces fe-1/2/1 unit 0 description to-R3 set interfaces fe-1/2/1 unit 0 family inet address 10.0.0.5/30 set interfaces lo0 unit 0 family inet address 192.168.0.2/32 set protocols bgp group ext type external set protocols bgp group ext peer-as 100 set protocols bgp group ext neighbor 10.0.0.1 set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.2 set protocols bgp group int advertise-external set protocols bgp group int neighbor 192.168.0.3 set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive set routing-options router-id 192.168.0.2 set routing-options autonomous-system 200
Dispositivo R3
set interfaces fe-1/2/0 unit 6 family inet address 10.0.0.6/30 set interfaces lo0 unit 0 family inet address 192.168.0.3/32 set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.3 set protocols bgp group int export send-static set protocols bgp group int neighbor 192.168.0.2 set protocols ospf area 0.0.0.0 interface fe-1/2/0.6 set protocols ospf area 0.0.0.0 interface lo0.0 passive set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then local-preference 200 set policy-options policy-statement send-static term 1 then accept set routing-options static route 172.16.6.0/24 reject set routing-options static route 0.0.0.0/0 next-hop 10.0.0.5 set routing-options autonomous-system 200
Procedimiento
Procedimiento paso a paso
El ejemplo siguiente requiere que navegue por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI de Junos OS.
Para configurar el dispositivo R2:
Configure las interfaces del dispositivo.
[edit interfaces] user@R2# set fe-1/2/0 unit 0 description to-R1 user@R2# set fe-1/2/0 unit 0 family inet address 10.0.0.2/30 user@R2# set fe-1/2/1 unit 0 description to-R3 user@R2# set fe-1/2/1 unit 0 family inet address 10.0.0.5/30 user@R2# set lo0 unit 0 family inet address 192.168.0.2/32
Configure OSPF u otro protocolo de puerta de enlace interior (IGP).
[edit protocols ospf area 0.0.0.0] user@R2# set interface fe-1/2/1.0 user@R2# set interface lo0.0 passive
Configure la conexión EBGP con el dispositivo R1.
[edit protocols bgp group ext] user@R2# set type external user@R2# set peer-as 100 user@R2# set neighbor 10.0.0.1
Configure la conexión del IBGP al dispositivo R3.
[edit protocols bgp group int] user@R2# set type internal user@R2# set local-address 192.168.0.2 user@R2# set neighbor 192.168.0.3
Agregue la
advertise-external
instrucción a la sesión de emparejamiento de grupo del IBGP.[edit protocols bgp group int] user@R2# set advertise-external
Configure el número de sistema autónomo (AS) y el ID del enrutador.
[edit routing-options ] user@R2# set router-id 192.168.0.2 user@R2# set autonomous-system 200
Resultados
Desde el modo de configuración, ingrese los comandos show interfaces
, show protocols
, show policy-options
y show routing-options
para confirmar la configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@R2# show interfaces fe-1/2/0 { unit 0{ description to-R1; family inet { address 10.0.0.2/30; } } } fe-1/2/1 { unit 0 { description to-R3; family inet { address 10.0.0.5/30; } } } lo0 { unit 0 { family inet { address 192.168.0.2/32; } } }
user@R2# show protocols bgp { group ext { type external; peer-as 100; neighbor 10.0.0.1; } group int { type internal; local-address 192.168.0.2; advertise-external; neighbor 192.168.0.3; } } ospf { area 0.0.0.0 { interface fe-1/2/1.0; interface lo0.0 { passive; } } }
user@R2# show routing-options router-id 192.168.0.2; autonomous-system 200;
Cuando termine de configurar el dispositivo, ingrese commit
en el modo de configuración.
Verificación
Confirme que la configuración funcione correctamente.
- Comprobación de la ruta activa del BGP
- Verificación del anuncio de ruta externa
- Verificación de la ruta en el dispositivo R3
- Experimentar con la opción condicional
Comprobación de la ruta activa del BGP
Propósito
En el dispositivo R2, asegúrese de que el prefijo 172.16.6.0/24 esté en la tabla de enrutamiento y tenga la ruta activa esperada.
Acción
user@R2> show route 172.16.6 inet.0: 8 destinations, 9 routes (8 active, 1 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 172.16.6.0/24 *[BGP/170] 00:00:07, localpref 200, from 192.168.0.3 AS path: I, validation-state: unverified > to 10.0.0.6 via fe-1/2/1.0 [BGP/170] 03:23:03, localpref 100 AS path: 100 I, validation-state: unverified > to 10.0.0.1 via fe-1/2/0.0
Significado
El dispositivo R2 recibe la ruta 172.16.6.0/24 de los dispositivos R1 y R3. La ruta desde el dispositivo R3 es la ruta activa, designada por el asterisco (*). La ruta activa tiene la preferencia local más alta. Incluso si las preferencias locales de las dos rutas fueran iguales, la ruta del dispositivo R3 permanecería activa porque tiene la ruta de AS más corta.
Verificación del anuncio de ruta externa
Propósito
En el dispositivo R2, asegúrese de que la ruta 172.16.6.0/24 esté anunciada para el dispositivo R3.
Acción
user@R2> show route advertising-protocol bgp 192.168.0.3 inet.0: 8 destinations, 9 routes (8 active, 1 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path 172.16.6.0/24 10.0.0.1 100 100 I
Significado
El dispositivo R2 anuncia la ruta 172.16.6.0/24 hacia el dispositivo R3.
Verificación de la ruta en el dispositivo R3
Propósito
Asegúrese de que el prefijo 172.16.6.0/24 esté en la tabla de enrutamiento del dispositivo R3.
Acción
user@R3> show route 172.16.6.0/24 inet.0: 7 destinations, 8 routes (7 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 172.16.6.0/24 *[Static/5] 03:34:14 Reject [BGP/170] 06:34:43, localpref 100, from 192.168.0.2 AS path: 100 I, validation-state: unverified > to 10.0.0.5 via fe-1/2/0.6
Significado
El dispositivo R3 tiene la ruta estática y la ruta BGP para 172.16.6.0/24.
Tenga en cuenta que la ruta BGP está oculta en el dispositivo R3 si no se puede acceder a la ruta o si no se puede resolver el siguiente salto. Para cumplir este requisito, este ejemplo incluye una ruta predeterminada estática en el dispositivo R3 (static route 0.0.0.0/0 next-hop 10.0.0.5
).
Experimentar con la opción condicional
Propósito
Vea cómo funciona la conditional
opción en el contexto del algoritmo de selección de ruta BGP.
Acción
En el dispositivo R2, agregue la
conditional
opción.[edit protocols bgp group int] user@R2# set advertise-external conditional user@R2# commit
En el dispositivo R2, compruebe si la ruta 172.16.6.0/24 se anuncia para el dispositivo R3.
user@R2> show route advertising-protocol bgp 192.168.0.3
Como era de esperar, la ruta ya no se anuncia. Es posible que tenga que esperar unos segundos para ver este resultado.
En el dispositivo R3, desactive la acción de
then local-preference
directiva.[edit policy-options policy-statement send-static term 1] user@R3# deactivate logical-systems R3 then local-preference user@R3# commit
En el dispositivo R2, asegúrese de que las preferencias locales de las dos rutas sean iguales.
user@R2> show route 172.16.6.0/24 inet.0: 8 destinations, 9 routes (8 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 172.16.6.0/24 *[BGP/170] 08:02:59, localpref 100 AS path: 100 I, validation-state: unverified > to 10.0.0.1 via fe-1/2/0.0 [BGP/170] 00:07:51, localpref 100, from 192.168.0.3 AS path: I, validation-state: unverified > to 10.0.0.6 via fe-1/2/1.0
En el dispositivo R2, agregue la
as-path-ignore
instrucción.[edit protocols bgp] user@R2# set path-selection as-path-ignore user@R2# commit
En el dispositivo R2, compruebe si la ruta 172.16.6.0/24 se anuncia para el dispositivo R3.
user@R2> show route advertising-protocol bgp 192.168.0.3 inet.0: 8 destinations, 9 routes (8 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.6.0/24 10.0.0.1 100 100 I
Como era de esperar, ahora se anuncia la ruta porque se ignora la longitud de la ruta del AS y porque las preferencias locales son iguales.
Ejemplo: Configuración del filtrado de rutas salientes basado en prefijos BGP
En este ejemplo se muestra cómo configurar un enrutador de Juniper Networks para aceptar filtros de ruta de pares remotos y realizar un filtrado de ruta saliente mediante los filtros recibidos.
Requisitos
Antes de empezar:
Configure las interfaces del enrutador.
Configure un protocolo de puerta de enlace interior (IGP).
Descripción general
Puede configurar un par BGP para que acepte filtros de ruta de pares remotos y realizar un filtrado de ruta saliente con los filtros recibidos. Al filtrar las actualizaciones no deseadas, el par remitente guarda los recursos necesarios para generar y transmitir actualizaciones, y el par receptor ahorra los recursos necesarios para procesar las actualizaciones. Esta característica puede ser útil, por ejemplo, en una red privada virtual (VPN) en la que subconjuntos de dispositivos perimetrales del cliente (CE) no son capaces de procesar todas las rutas de la VPN. Los dispositivos CE pueden usar el filtrado de ruta saliente basado en prefijos para comunicarse con el dispositivo de enrutamiento perimetral del proveedor (PE) para transmitir solo un subconjunto de rutas, como rutas solo a los centros de datos principales.
El número máximo de filtros de ruta saliente basados en prefijos que un par BGP puede aceptar es 5000. Si un par remoto envía más de 5000 filtros de ruta salientes a una dirección par, los filtros adicionales se descartan y se genera un mensaje de registro del sistema.
Puede configurar la interoperabilidad para el dispositivo de enrutamiento como un todo o solo para grupos o pares BGP específicos.
Topología
En la red de ejemplo, el dispositivo CE1 es un enrutador de otro proveedor. La configuración que se muestra en este ejemplo es en el enrutador PE1 de Juniper Networks.
Figura 3 muestra la red de ejemplo.
Configuración
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y pegue los comandos en la CLI en el nivel de [edit]
jerarquía.
PE1
set protocols bgp group cisco-peers type external set protocols bgp group cisco-peers description “to CE1” set protocols bgp group cisco-peers local-address 192.168.165.58 set protocols bgp group cisco-peers peer-as 35 set protocols bgp group cisco-peers outbound-route-filter bgp-orf-cisco-mode set protocols bgp group cisco-peers outbound-route-filter prefix-based accept inet set protocols bgp group cisco-peers neighbor 192.168.165.56 set routing-options autonomous-system 65500
Procedimiento
Procedimiento paso a paso
El ejemplo siguiente requiere que navegue por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI de Junos OS.
Para configurar el enrutador PE1 para que acepte filtros de ruta del dispositivo CE1 y realice un filtrado de rutas salientes con los filtros recibidos:
Configurar el sistema autónomo local.
[edit routing-options] user@PE1# set autonomous-system 65500
Configure el emparejamiento externo con el dispositivo CE1.
[edit protocols bgp group cisco-peers] user@PE1# set type external user@PE1# set description “to CE1” user@PE1# set local-address 192.168.165.58 user@PE1# set peer-as 35 user@PE1# set neighbor 192.168.165.56
Configure el enrutador PE1 para aceptar filtros de ruta IPv4 del dispositivo CE1 y realice un filtrado de ruta saliente con los filtros recibidos.
[edit protocols bgp group cisco-peers] user@PE1# set outbound-route-filter prefix-based accept inet
(Opcional) Habilite la interoperabilidad con dispositivos de enrutamiento que usan el código de compatibilidad específico del proveedor de 130 para filtros de ruta saliente y el tipo de código 128.
El código estándar de la IANA es 3 y el tipo de código estándar es 64.
[edit protocols bgp group cisco-peers] user@PE1# set outbound-route-filter bgp-orf-cisco-mode
Resultados
Desde el modo de configuración, escriba los comandos show protocols
y show routing-options
para confirmar la configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@PE1# show protocols group cisco-peers { type external; description “to CE1”; local-address 192.168.165.58; peer-as 35; outbound-route-filter { bgp-orf-cisco-mode; prefix-based { accept { inet; } } } neighbor 192.168.165.56; }
user@PE1# show routing-options autonomous-system 65500;
Cuando termine de configurar el dispositivo, ingrese commit
en el modo de configuración.
Verificación
Confirme que la configuración funcione correctamente.
Comprobación del filtro de ruta saliente
Propósito
Muestra información sobre el filtro de ruta saliente basado en prefijos recibido del dispositivo CE1.
Acción
Desde el modo operativo, ingrese el comando show bgp neighbor orf detail
.
user@PE1> show bgp neighbor orf 192.168.165.56 detail Peer: 192.168.165.56 Type: External Group: cisco-peers inet-unicast Filter updates recv: 4 Immediate: 0 Filter: prefix-based receive Updates recv: 4 Received filter entries: seq 10 2.2.0.0/16 deny minlen 0 maxlen 0 seq 20 3.3.0.0/16 deny minlen 24 maxlen 0 seq 30 4.4.0.0/16 deny minlen 0 maxlen 28 seq 40 5.5.0.0/16 deny minlen 24 maxlen 28
Comprobación del modo vecino BGP
Propósito
Compruebe que la bgp-orf-cisco-mode
configuración está habilitada para el par asegurándose de que la ORFCiscoMode
opción se muestra en la salida del show bgp neighbor
comando.
Acción
Desde el modo operativo, ingrese el comando show bgp neighbor
.
user@PE1> show bgp neighbor Peer: 192.168.165.56 AS 35 Local: 192.168.165.58 AS 65500 Type: External State: Active Flags: <> Last State: Idle Last Event: Start Last Error: None Export: [ adv_stat ] Options: <Preference LocalAddress AddressFamily PeerAS Refresh> Options: <ORF ORFCiscoMode> Address families configured: inet-unicast Local Address: 192.168.165.58 Holdtime: 90 Preference: 170 Number of flaps: 0 Trace options: detail open detail refresh Trace file: /var/log/orf size 5242880 files 20
Descripción de la directiva de enrutamiento BGP predeterminada en enrutadores de transporte de paquetes (serie PTX)
En los enrutadores de transporte de paquetes de la serie PTX, la directiva de enrutamiento BGP predeterminada difiere de la de otros dispositivos de enrutamiento de Junos OS.
Los enrutadores de la serie PTX son plataformas de tránsito MPLS que realizan el reenvío de IP, generalmente utilizando rutas de protocolo de puerta de enlace interior (IGP). El motor de reenvío de paquetes de la serie PTX puede acomodar un número relativamente pequeño de prefijos de longitud variable.
Un enrutador de la serie PTX puede admitir rutas BGP completas en el plano de control para que pueda utilizarse como reflector de ruta (RR). Puede realizar reenvíos de multidifusión de búsqueda de longitud exacta y puede construir el plano de reenvío de multidifusión para que lo use el plano de control de unidifusión (por ejemplo, para realizar una búsqueda de reenvío de ruta inversa para multidifusión).
Dada la limitación de PFE, la política de enrutamiento predeterminada para los enrutadores de la serie PTX es que las rutas BGP no se instalen en la tabla de reenvío. Puede invalidar la directiva de enrutamiento predeterminada y seleccionar determinadas rutas BGP para instalarlas en la tabla de reenvío.
El comportamiento predeterminado para el equilibrio de carga y las rutas BGP en los enrutadores de la serie PTX es el siguiente. Tiene las siguientes características deseables:
Le permite anular el comportamiento predeterminado sin necesidad de modificar la política predeterminada directamente
Reduce la posibilidad de cambios accidentales que anulan los valores predeterminados
No establece acciones de control de flujo, como aceptar y rechazar
La directiva de enrutamiento predeterminada en los enrutadores de la serie PTX es la siguiente:
user@host# show policy-options | display inheritance defaults no-comments policy-options { policy-statement junos-ptx-series-default { term t1 { from { protocol bgp; rib inet.0; } then no-install-to-fib; } term t2 { from { protocol bgp; rib inet6.0; } then no-install-to-fib; } term t3 { then load-balance per-packet; } } } routing-options { forwarding-table { default-export junos-ptx-series-default; } } user@host# show routing-options forwarding-table default-export | display inheritance defaults no-comments default-export junos-ptx-series-default;
Como se muestra aquí, la junos-ptx-series-default
política se define en [edit policy-options]
. La directiva se aplica en [edit routing-options forwarding-table]
, mediante la default-export
instrucción. Puede ver estas configuraciones predeterminadas mediante el | display inheritance
marca.
Además, puede utilizar el show policy
comando para ver la directiva predeterminada.
user@host> show policy junos-ptx-series-default Policy junos-ptx-series-default: Term t1: from proto BGP inet.0 then install-to-fib no Term t2: from proto BGP inet6.0 then install-to-fib no Term t3: then load-balance per-packet
Le recomendamos encarecidamente que no modifique la directiva de junos-ptx-series-default
enrutamiento directamente.
Junos OS encadena la política y cualquier política de exportación configurada por el junos-ptx-series-default
usuario. Dado que la junos-ptx-series-default
directiva no utiliza acciones de control de flujo, se ejecutará cualquier política de exportación que configure (mediante la acción implícita de la siguiente directiva) para cada ruta. Por lo tanto, puede anular cualquier acción establecida por la junos-ptx-series-default
política. Si no configura una directiva de exportación, las acciones establecidas por junos-ptx-series-default
la directiva son las únicas acciones.
Puede utilizar la acción install-to-fib
de directiva para anular la no-install-to-fib
acción.
Del mismo modo, puede configurar la load-balance per-prefix
acción para anular la load-balance per-packet
acción.
Consulte también
Ejemplo: Anulación de la directiva de enrutamiento BGP predeterminada en enrutadores de transporte de paquetes serie PTX
En este ejemplo se muestra cómo invalidar la directiva de enrutamiento predeterminada en enrutadores de transporte de paquetes, como los enrutadores de transporte de paquetes de la serie PTX.
Requisitos
Este ejemplo requiere Junos OS versión 12.1 o posterior.
Descripción general
De forma predeterminada, los enrutadores de la serie PTX no instalan rutas BGP en la tabla de reenvío.
Para los enrutadores de la serie PTX, la configuración de la from protocols bgp
condición con la then accept
acción no tiene el resultado habitual que tiene en otros dispositivos de enrutamiento de Junos OS. Con la siguiente política de enrutamiento en los enrutadores de la serie PTX, las rutas BGP no se instalan en la tabla de reenvío.
user@host# show policy-options policy-statement accept-no-install { term 1 { from protocol bgp; then accept; } } user@host# show routing-options forwarding-table { export accept-no-install; }
user@host> show route forwarding-table Routing table: default.inet Internet: Destination Type RtRef Next hop Type Index NhRef Netif default perm 0 rjct 36 2
No hay rutas BGP instaladas en la tabla de reenvío. Este es el comportamiento esperado.
En este ejemplo se muestra cómo usar la then install-to-fib
acción para invalidar eficazmente la directiva de enrutamiento BGP predeterminada.
Configuración
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y pegue los comandos en la CLI en el nivel de [edit]
jerarquía.
set policy-options prefix-list install-bgp 66.0.0.1/32 set policy-options policy-statement override-ptx-series-default term 1 from prefix-list install-bgp set policy-options policy-statement override-ptx-series-default term 1 then load-balance per-prefix set policy-options policy-statement override-ptx-series-default term 1 then install-to-fib set routing-options forwarding-table export override-ptx-series-default
Instalación de rutas BGP seleccionadas en la tabla de reenvío
Procedimiento paso a paso
En el ejemplo siguiente, debe explorar por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI de Junos OS.
Para instalar rutas BGP seleccionadas en la tabla de reenvío:
Configure una lista de prefijos para instalar en la tabla de reenvío.
[edit policy-options prefix-list install-bgp] user@host# set 66.0.0.1/32
Configure la directiva de enrutamiento, aplicando la lista de prefijos como condición.
[edit policy-options policy-statement override-ptx-series-default term 1] user@host# set from prefix-list install-bgp user@host# set then install-to-fib user@host# set then load-balance per-prefix
Aplique la directiva de enrutamiento a la tabla de reenvío.
[edit routing-options forwarding-table] user@host# set export override-ptx-series-default
Resultados
Desde el modo de configuración, escriba los comandos show policy-options
y show routing-options
para confirmar la configuración. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@host# show policy-options prefix-list install-bgp { 66.0.0.1/32; } policy-statement override-ptx-series-default { term 1 { from { prefix-list install-bgp; } then { load-balance per-prefix; install-to-fib; } } }
user@host# show routing-options forwarding-table { export override-ptx-series-default; }
Cuando termine de configurar el dispositivo, ingrese commit
en el modo de configuración.
Verificación
Confirme que la configuración funcione correctamente.
Comprobación de que la ruta seleccionada está instalada en la tabla de reenvío
Propósito
Asegúrese de que la directiva configurada anula la directiva predeterminada.
Acción
Desde el modo operativo, ingrese el comando show route forwarding-table
.
user@host> show route forwarding-table destination 66.0.0.1 Internet: Destination Type RtRef Next hop Type Index NhRef Netif 66.0.0.1/32 user 0 indr 2097159 3 ulst 2097156 2 5.1.0.2 ucst 574 1 et-6/0/0.1 5.2.0.2 ucst 575 1 et-6/0/0.2
Significado
Este resultado muestra que la ruta a 66.0.0.1/32 está instalada en la tabla de reenvío.
Anuncio condicional que habilita la instalación condicional de casos de uso de prefijos
Por lo general, las redes se subdividen en unidades más pequeñas y manejables denominadas sistemas autónomos (AS). Cuando los enrutadores usan el BGP para formar relaciones par en el mismo AS, se hace referencia a él como un BGP interno (IBGP). Cuando los enrutadores usan BGP para formar relaciones par en diferentes AS, se hace referencia a él como BGP externo (EBGP).
Después de realizar comprobaciones de sanidad de ruta, un enrutador BGP acepta las rutas recibidas de sus pares y las instala en la tabla de enrutamiento. De forma predeterminada, todos los enrutadores en las sesiones de IBGP y EBGP siguen las reglas estándar de publicidad BGP. Mientras que un enrutador en una sesión de IBGP anuncia solo las rutas aprendidas de sus pares directos, un enrutador en una sesión de EBGP anuncia todas las rutas aprendidas de sus pares directos e indirectos (pares de pares). Por lo tanto, en una red típica configurada con EBGP, un enrutador agrega todas las rutas recibidas de un par EBGP en su tabla de enrutamiento y anuncia casi todas las rutas a todos los pares EBGP.
Un proveedor de servicios que intercambia rutas BGP con clientes y pares en Internet está en riesgo de amenazas maliciosas e involuntarias que pueden comprometer el enrutamiento adecuado del tráfico, así como el funcionamiento de los enrutadores.
Esto tiene varias desventajas:
Non-aggregated route advertisements—Un cliente podría anunciar erróneamente todos sus prefijos al ISP en lugar de un agregado de su espacio de direcciones. Dado el tamaño de la tabla de enrutamiento de Internet, esto debe controlarse cuidadosamente. Es posible que un enrutador perimetral solo necesite una ruta predeterminada hacia Internet y, en su lugar, reciba toda la tabla de enrutamiento BGP de su par ascendente.
BGP route manipulation: si un administrador malintencionado altera el contenido de la tabla de enrutamiento BGP, podría impedir que el tráfico llegue a su destino previsto.
BGP route hijacking: Un administrador no autorizado de un par BGP podría anunciar maliciosamente los prefijos de una red en un intento de redirigir el tráfico destinado a la red víctima a la red del administrador para obtener acceso al contenido del tráfico o para bloquear los servicios en línea de la víctima.
BGP denial of service (DoS): si un administrador malintencionado envía tráfico BGP inesperado o no deseado a un enrutador en un intento de utilizar todos los recursos BGP disponibles del enrutador, podría perjudicar la capacidad del enrutador para procesar información de ruta BGP válida.
La instalación condicional de prefijos se puede utilizar para abordar todos los problemas mencionados anteriormente. Si un cliente requiere acceso a redes remotas, es posible instalar una ruta específica en la tabla de enrutamiento del enrutador que está conectado con la red remota. Esto no sucede en una red EBGP típica y, por lo tanto, la instalación condicional de prefijos se vuelve esencial.
Los AS no solo están ligados por relaciones físicas sino por empresas u otras relaciones organizacionales. Un AS puede proporcionar servicios a otra organización o actuar como un tránsito de AS entre otros dos AS. Estos AS de tránsito están vinculados por acuerdos contractuales entre las partes que incluyen parámetros sobre cómo conectarse entre sí y, lo que es más importante, el tipo y la cantidad de tráfico que transportan entre sí. Por lo tanto, por razones legales y financieras, los proveedores de servicios deben implementar políticas que controlen cómo se intercambian las rutas BGP con los vecinos, qué rutas se aceptan de esos vecinos y cómo esas rutas afectan el tráfico entre los AS.
Hay muchas opciones diferentes disponibles para filtrar las rutas recibidas de un par BGP para aplicar las políticas de interAS y mitigar los riesgos de recibir rutas potencialmente dañinas. El filtrado de ruta convencional examina los atributos de una ruta y acepta o rechaza la ruta en función de dichos atributos. Una política o filtro se puede usar para examinar el contenido de la ruta del AS, el salto siguiente, un valor de comunidad, una lista de prefijos, la familia de direcciones de la ruta, etc.
En algunos casos, la "condición de aceptación" estándar de hacer coincidir un valor de atributo particular no es suficiente. Es posible que el proveedor de servicios necesite usar otra condición fuera de la propia ruta, por ejemplo, otra ruta en la tabla de enrutamiento. Por ejemplo, podría ser deseable instalar una ruta predeterminada recibida de un par ascendente, solo si se puede verificar que este par tiene accesibilidad a otras redes más arriba. Esta instalación de ruta condicional evita instalar una ruta predeterminada que se usa para enviar tráfico hacia este par, cuando el par podría haber perdido sus rutas aguas arriba, lo que provocaría un tráfico con agujeros negros. Para lograr esto, el enrutador puede configurarse para buscar la presencia de una ruta particular en la tabla de enrutamiento y, en función de este conocimiento, aceptar o rechazar otro prefijo.
Ejemplo: En Configuring a Routing Policy for Conditional Advertisement Enabling Conditional Installation of Prefixes in a Routing Table se explica cómo se puede configurar y comprobar la instalación condicional de prefijos.
Consulte también
Política de importación y publicidad condicional (tabla de enrutamiento) con determinadas condiciones de coincidencia
BGP acepta todas las rutas sin bucle aprendidas de los vecinos y las importa a la tabla RIB-In. Si la política de importación BGP acepta estas rutas, se importan a la tabla de enrutamiento inet.0. En los casos en que solo se requiera importar ciertas rutas, se pueden tomar disposiciones para que el dispositivo de enrutamiento par exporte rutas basadas en una condición o un conjunto de condiciones.
La condición para exportar una ruta puede basarse en:
El compañero del que aprendió la ruta
La interfaz en la que se aprendió la ruta
Algún otro atributo requerido
Por ejemplo:
[edit] policy-options { condition condition-name { if-route-exists address table table-name; } }
Esto se conoce como instalación condicional de prefijos y se describe en el ejemplo: Configuración de una directiva de enrutamiento para publicidad condicional Habilitar la instalación condicional de prefijos en una tabla de enrutamiento.
Las condiciones de las políticas de enrutamiento se pueden configurar independientemente de si forman parte de las políticas de exportación, importación, o ambas. La directiva de exportación admite estas condiciones heredadas de la directiva de enrutamiento en función de la existencia de otra ruta en la directiva de enrutamiento. Sin embargo, la directiva de importación no admite estas condiciones y las condiciones no se ejecutan aunque estén presentes.
Figura 4 ilustra dónde se aplican las políticas de importación y exportación de BGP. Se aplica una política de importación a las rutas entrantes que son visibles en la salida del show route receive-protocol bgp neighbor-address
comando. Se aplica una política de exportación a las rutas salientes que están visibles en la salida del show route advertising-protocol bgp neighbor-address
comando.
Para habilitar la instalación condicional de prefijos, se debe configurar una política de exportación en el dispositivo donde debe realizarse la exportación de prefijos. La directiva de exportación evalúa cada ruta para comprobar que cumple todas las condiciones de coincidencia de la from
instrucción. También busca la existencia de la ruta definida en la condition
instrucción (también configurada bajo la from
instrucción).
Si la ruta no coincide con todo el conjunto de condiciones requeridas definidas en la política, o si la ruta definida en la condition
instrucción no existe en la tabla de enrutamiento, la ruta no se exporta a sus pares BGP. Por lo tanto, una política de exportación condicional coincide con las rutas para la ruta o el prefijo deseado que desea instalar en la tabla de enrutamiento del mismo nivel.
Para configurar la instalación condicional de prefijos con la ayuda de una política de exportación:
Cree una
condition
instrucción para comprobar los prefijos.[edit] policy-options { condition condition-name { if-route-exists address table table-name; } }
Cree una directiva de exportación con la condición recién creada mediante la
condition
instrucción.[edit] policy-options { policy-statement policy-name { term 1 { from { protocols bgp; condition condition-name; } then { accept; } } } }
Aplique la directiva de exportación al dispositivo que solo requiere que los prefijos seleccionados se exporten desde la tabla de enrutamiento.
[edit] protocols bgp { group group-name { export policy-name; } }
Consulte también
Ejemplo: Configuración de una directiva de enrutamiento para publicidad condicional Habilitación de la instalación condicional de prefijos en una tabla de enrutamiento
En este ejemplo se muestra cómo configurar la instalación condicional de prefijos en una tabla de enrutamiento mediante la directiva de exportación BGP.
Requisitos
En este ejemplo, se utilizan los siguientes componentes de hardware y software:
Enrutadores perimetrales multiservicio serie M, plataformas de enrutamiento universal 5G serie MX o enrutadores núcleo serie T
Junos OS versión 9.0 o posterior
Descripción general
En este ejemplo, se conectan tres enrutadores en tres sistemas autónomos diferentes (AS) y se configuran con el BGP. El enrutador etiquetado como Internet, que es el enrutador ascendente, tiene cinco direcciones configuradas en su interfaz de circuito cerrado lo0.0 (172.16.11.1/32, 172.16.12.1/32, 172.16.13.1/32, 172.16.14.1/32 y 172.16.15.1/32), y una dirección de circuito cerrado adicional (192.168.9.1/32) está configurada como ID del enrutador. Estas seis direcciones se exportan a BGP para emular el contenido de una tabla de enrutamiento BGP de un enrutador conectado a Internet y se anuncian en North.
Los enrutadores Norte y Sur utilizan las redes 10.0.89.12/30 y 10.0.78.12/30, respectivamente, y utilizan 192.168.7.1 y 192.168.8.1 para sus respectivas direcciones de circuito cerrado.
Figura 5muestra la topología utilizada en este ejemplo.
Router North exporta las rutas BGP 172.16.0.0/16 que aprende de Router Internet a Router South. Estas rutas pueden representar las rutas propiedad del dominio del enrutador de Internet. Además, cuando la ruta específica 172.16.11.1/32 está presente, el enrutador Norte también anuncia una ruta predeterminada. La ruta 172.16.11.1 podría representar el vínculo del enrutador de Internet a un proveedor de emparejamiento de tránsito de nivel 1 que proporciona conectividad completa a Internet.
El enrutador Sur recibe las seis rutas, pero solo debe instalar la ruta predeterminada y otra ruta específica (172.16.11.1/32) en su tabla de enrutamiento.
En resumen, el ejemplo cumple los siguientes requisitos:
-
En Norte, envíe todos los prefijos 172.16/16. Además, también envíe 0/0 a Sur solo si una ruta determinada está presente en la tabla de enrutamiento inet.0 (en este ejemplo, 172.16.11.1/32).
-
En Sur, acepte e instale la ruta predeterminada y la ruta 172.16.11.1/32 en las tablas de enrutamiento y reenvío. Abandone todas las demás rutas. Tenga en cuenta que Sur podría ser un dispositivo de gama baja que no puede aceptar una tabla de enrutamiento de Internet completa. Como resultado, el operador solo quiere que South tenga la ruta predeterminada y otro prefijo específico.
El primer requisito se cumple con una política de exportación en el Norte:
user@North# show policy-options policy-statement conditional-export-bgp { term prefix_11 { from { protocol bgp; route-filter 172.16.0.0/16 orlonger; } then accept; } term conditional-default { from { route-filter 0.0.0.0/0 exact; condition prefix_11; } then accept; } term others { then reject; } } condition prefix_11 { if-route-exists { 172.16.11.1/32; table inet.0; } }
La lógica de la política de exportación condicional puede resumirse de la siguiente manera: Si 0/0 está presente y si 172.16.11.1/32 está presente, envíe el prefijo 0/0. Esto implica que si 172.16.11.1/32 no está presente, entonces no envíe 0/0.
El segundo requisito se cumple con una política de importación en el Sur:
user@South# show policy-options policy-statement import-selected-routes { term 1 { from { rib inet.0; neighbor 10.0.78.14; route-filter 0.0.0.0/0 exact; route-filter 172.16.11.1/32 exact; } then accept; } term 2 { then reject; } }
En este ejemplo, cuatro rutas se eliminan como resultado de la política de importación en el Sur. Esto se debe a que la política de exportación en el Norte filtra todas las rutas recibidas de Internet, y la política de importación en el Sur excluye algunas de estas rutas.
Es importante entender que en Junos OS, aunque una política de importación (filtro de ruta entrante) puede rechazar una ruta, no usarla para el reenvío de tráfico y no incluirla en un anuncio dirigido a otros pares, el enrutador conserva estas rutas como rutas ocultas. Estas rutas ocultas no están disponibles para fines de políticas o enrutamiento. Sin embargo, ocupan espacio de memoria en el enrutador. Un proveedor de servicios que filtra rutas para controlar la cantidad de información que se mantiene en la memoria y que procesa un enrutador podría querer que el enrutador elimine por completo las rutas rechazadas por la directiva de importación.
Las rutas ocultas se pueden ver con el show route receive-protocol bgp neighbor-address hidden
comando. A continuación, las rutas ocultas se pueden conservar o eliminar de la tabla de enrutamiento configurando la keep all | none
instrucción en el nivel de [edit protocols bgp]
jerarquía o [edit protocols bgp group group-name]
.
Las reglas de retención de rutas BGP son las siguientes:
-
De forma predeterminada, se conservan todos los enrutadores aprendidos del BGP, excepto aquellos donde la ruta del AS sea un bucle. (La ruta del AS incluye el AS local).
-
Al configurar la
keep all
instrucción, se conservan todas las rutas aprendidas del BGP, incluso aquellas que tienen el AS local en la ruta del AS. -
Al configurar la
keep none
instrucción, BGP descarta las rutas recibidas de un par y que fueron rechazadas por la política de importación u otra comprobación de cordura. Cuando se configura esta instrucción y cambia la política de entrada, Junos OS vuelve a anunciar todas las rutas anunciadas por el par.
Cuando configura keep all
o keep none
y los pares admiten la actualización de ruta, el altavoz local envía un mensaje de actualización y realiza una evaluación de importación. Para estos pares, las sesiones no se reinician. Para determinar si un par admite la actualización, compruebe Peer supports Refresh capability
en show bgp neighbor
el resultado del comando.
Si configura keep all
o keep none
y el par no admite el reinicio de sesión, las sesiones de BGP asociadas se reiniciarán (aletearán).
Topología
Configuración
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red y, a continuación, copie y pegue los comandos en la CLI en el nivel de [edit]
jerarquía.
Internet del enrutador
set interfaces lo0 unit 0 family inet address 172.16.11.1/32 set interfaces lo0 unit 0 family inet address 172.16.12.1/32 set interfaces lo0 unit 0 family inet address 172.16.13.1/32 set interfaces lo0 unit 0 family inet address 172.16.14.1/32 set interfaces lo0 unit 0 family inet address 172.16.15.1/32 set interfaces lo0 unit 0 family inet address 192.168.9.1/32 set interfaces fe-0/1/3 unit 0 family inet address 10.0.89.14/30 set protocols bgp group toNorth local-address 10.0.89.14 set protocols bgp group toNorth peer-as 65200 set protocols bgp group toNorth neighbor 10.0.89.13 set protocols bgp group toNorth export into-bgp set policy-options policy-statement into-bgp term 1 from interface lo0.0 set policy-options policy-statement into-bgp term 1 then accept set routing-options router-id 192.168.9.1 set routing-options autonomous-system 65300
Enrutador Norte
set interfaces fe-1/3/1 unit 0 family inet address 10.0.78.14/30 set interfaces fe-1/3/0 unit 0 family inet address 10.0.89.13/30 set interfaces lo0 unit 0 family inet address 192.168.8.1/32 set protocols bgp group toInternet local-address 10.0.89.13 set protocols bgp group toInternet peer-as 65300 set protocols bgp group toInternet neighbor 10.0.89.14 set protocols bgp group toSouth local-address 10.0.78.14 set protocols bgp group toSouth export conditional-export-bgp set protocols bgp group toSouth peer-as 65100 set protocols bgp group toSouth neighbor 10.0.78.13 set policy-options policy-statement conditional-export-bgp term prefix_11 from protocol bgp set policy-options policy-statement conditional-export-bgp term prefix_11 from route-filter 172.16.0.0/16 orlonger set policy-options policy-statement conditional-export-bgp term prefix_11 then accept set policy-options policy-statement conditional-export-bgp term conditional-default from route-filter 0.0.0.0/0 exact set policy-options policy-statement conditional-export-bgp term conditional-default from condition prefix_11 set policy-options policy-statement conditional-export-bgp term conditional-default then accept set policy-options policy-statement conditional-export-bgp term others then reject set policy-options condition prefix_11 if-route-exists 172.16.11.1/32 set policy-options condition prefix_11 if-route-exists table inet.0 set routing-options static route 0/0 reject set routing-options router-id 192.168.8.1 set routing-options autonomous-system 65200
Enrutador Sur
set interfaces fe-0/1/2 unit 0 family inet address 10.0.78.13/30 set interfaces lo0 unit 0 family inet address 192.168.7.1/32 set protocols bgp group toNorth local-address 10.0.78.13 set protocols bgp group toNorth import import-selected-routes set protocols bgp group toNorth peer-as 65200 set protocols bgp group toNorth neighbor 10.0.78.14 set policy-options policy-statement import-selected-routes term 1 from neighbor 10.0.78.14 set policy-options policy-statement import-selected-routes term 1 from route-filter 172.16.11.1/32 exact set policy-options policy-statement import-selected-routes term 1 from route-filter 0.0.0.0/0 exact set policy-options policy-statement import-selected-routes term 1 then accept set policy-options policy-statement import-selected-routes term 2 then reject set routing-options router-id 192.168.7.1 set routing-options autonomous-system 65100
Configuración de la instalación condicional de prefijos
Procedimiento paso a paso
El ejemplo siguiente requiere que navegue por varios niveles en la jerarquía de configuración. Para obtener información acerca de cómo navegar por la CLI, consulte Uso del editor de CLI en modo de configuración en la Guía del usuario de CLI de Junos OS.
Para configurar la instalación condicional de prefijos:
Configure las interfaces de enrutador que forman los vínculos entre los tres enrutadores.
Router Internet [edit interfaces] user@Internet# set fe-0/1/3 unit 0 family inet address 10.0.89.14/30
Router North [edit interfaces] user@North# set fe-1/3/1 unit 0 family inet address 10.0.78.14/30 user@North# set fe-1/3/0 unit 0 family inet address 10.0.89.13/30
Router South [edit interfaces] user@South# set fe-0/1/2 unit 0 family inet address 10.0.78.13/30
Configure cinco direcciones de interfaz de circuito cerrado en Internet del enrutador para emular las rutas BGP aprendidas de Internet que se van a importar a la tabla de enrutamiento del enrutador sur y configure una dirección adicional (192.168.9.1/32) que se configurará como ID del enrutador.
Router Internet [edit interfaces lo0 unit 0 family inet] user@Internet# set address 172.16.11.1/32 user@Internet# set address 172.16.12.1/32 user@Internet# set address 172.16.13.1/32 user@Internet# set address 172.16.14.1/32 user@Internet# set address 172.16.15.1/32 user@Internet# set address 192.168.9.1/32
Además, configure las direcciones de interfaz de circuito cerrado en los enrutadores Norte y Sur.
Router North [edit interfaces lo0 unit 0 family inet] user@North# set address 192.168.8.1/32
Router South [edit interfaces lo0 unit 0 family inet] user@South# set address 192.168.7.1/32
Configure la ruta predeterminada estática en el enrutador norte para que se anuncie en el enrutador sur.
[edit routing-options] user@North# set static route 0/0 reject
Defina la condición para exportar prefijos desde la tabla de enrutamiento del enrutador norte.
[edit policy-options condition prefix_11] user@North# set if-route-exists 172.16.11.1/32 user@North# set if-route-exists table inet.0
Definir las políticas de exportación (
into-bgp
yconditional-export-bgp
) en los enrutadores Internet y Norte, respectivamente, para anunciar rutas a BGP.Nota:Asegúrese de hacer referencia a la condición (configurada en Paso4)
prefix_11
en la directiva de exportación.Router Internet [edit policy-options policy-statement into-bgp ] user@Internet# set term 1 from interface lo0.0 user@Internet# set term 1 then accept
Router North [edit policy-options policy-statement conditional-export-bgp] user@North# set term prefix_11 from protocol bgp user@North# set term prefix_11 from route-filter 172,16.0.0/16 orlonger user@North# set term prefix_11 then accept user@North# set term conditional-default from route-filter 0.0.0.0/0 exact user@North# set term conditional-default from condition prefix_11 user@North# set term conditional-default then accept user@North# set term others then reject
Defina una política de importación (
import-selected-routes
) en el enrutador Sur para importar algunas de las rutas anunciadas por el enrutador Norte en su tabla de enrutamiento.[edit policy-options policy-statement import-selected-routes ] user@South# set term 1 from neighbor 10.0.78.14 user@South# set term 1 from route-filter 172.16.11.1/32 exact user@South# set term 1 from route-filter 0.0.0.0/0 exact user@South# set term 1 then accept user@South# set term 2 then reject
Configure BGP en los tres enrutadores para permitir el flujo de prefijos entre los sistemas autónomos.
Nota:Asegúrese de aplicar las políticas de importación y exportación definidas a los grupos BGP respectivos para que se produzca el anuncio del prefijo.
Router Internet [edit protocols bgp group toNorth] user@Internet# set local-address 10.0.89.14 user@Internet# set peer-as 65200 user@Internet# set neighbor 10.0.89.13 user@Internet# set export into-bgp
Router North [edit protocols bgp group toInternet] user@North# set local-address 10.0.89.13 user@North# set peer-as 65300 user@North# set neighbor 10.0.89.14
[edit protocols bgp group toSouth] user@North# set local-address 10.0.78.14 user@North# set peer-as 65100 user@North# set neighbor 10.0.78.13 user@North# set export conditional-export-bgp
Router South [edit protocols bgp group toNorth] user@South# set local-address 10.0.78.13 user@South# set peer-as 65200 user@South# set neighbor 10.0.78.14 user@South# set import import-selected-routes
Configure el ID del enrutador y el número de sistema autónomo para los tres enrutadores.
Nota:En este ejemplo, el ID del enrutador se configura en función de la dirección IP configurada en la interfaz lo0.0 del enrutador.
Router Internet [edit routing options] user@Internet# set router-id 192.168.9.1 user@Internet# set autonomous-system 65300
Router North [edit routing options] user@North# set router-id 192.168.8.1 user@North# set autonomous-system 65200
Router South [edit routing options] user@South# set router-id 192.168.7.1 user@South# set autonomous-system 65100
Resultados
Desde el modo de configuración, confirme la configuración emitiendo los show interfaces
comandos , show protocols bgp
show policy-options
, y show routing-options
. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
Internet del dispositivo
user@Internet# show interfaces fe-0/1/3 { unit 0 { family inet { address 10.0.89.14/30; } } } lo0 { unit 0 { family inet { address 172.16.11.1/32; address 172.16.12.1/32; address 172.16.13.1/32; address 172.16.14.1/32; address 172.16.15.1/32; address 192.168.9.1/32; } } }
user@Internet# show protocols bgp group toNorth { local-address 10.0.89.14; export into-bgp; peer-as 65200; neighbor 10.0.89.13; }
user@Internet# show policy-options policy-statement into-bgp { term 1 { from interface lo0.0; then accept; } }
user@Internet# show routing-options router-id 192.168.9.1; autonomous-system 65300;
Dispositivo Norte
user@North# show interfaces fe-1/3/1 { unit 0 { family inet { address 10.0.78.14/30; } } } fe-1/3/0 { unit 0 { family inet { address 10.0.89.13/30; } } } lo0 { unit 0 { family inet { address 192.168.8.1/32; } } }
user@North# show protocols bgp group toInternet { local-address 10.0.89.13; peer-as 65300; neighbor 10.0.89.14; } group toSouth { local-address 10.0.78.14; export conditional-export-bgp; peer-as 65100; neighbor 10.0.78.13; }
user@North# show policy-options policy-statement conditional-export-bgp { term prefix_11 { from { protocol bgp; route-filter 172.16.0.0/16 orlonger; } then accept; } term conditional-default { from { route-filter 0.0.0.0/0 exact; condition prefix_11; } then accept; } term others { then reject; } } condition prefix_11 { if-route-exists { 172.16.11.1/32; table inet.0; } }
user@North# show routing-options static { route 0.0.0.0/0 reject; } router-id 192.168.8.1; autonomous-system 65200;
Dispositivo Sur
user@South# show interfaces fe-0/1/2 { unit 0 { family inet { address 10.0.78.13/30; } } } lo0 { unit 0 { family inet { address 192.168.7.1/32; } } }
user@South# show protocols bgp bgp { group toNorth { local-address 10.0.78.13; import import-selected-routes; peer-as 65200; neighbor 10.0.78.14; } }
user@South# show policy-options policy-statement import-selected-routes { term 1 { from { neighbor 10.0.78.14; route-filter 172.16.11.1 exact; route-filter 0.0.0.0/0 exact; } then accept; } term 2 { then reject; } }
user@South# show routing-options router-id 192.168.7.1; autonomous-system 65100;
Cuando haya terminado de configurar los enrutadores, ingrese commit
desde el modo de configuración.
Verificación
Confirme que la configuración funcione correctamente.
- Comprobación de BGP
- Verificación del anuncio de prefijo del enrutador Internet al enrutador norte
- Verificación del anuncio de prefijo del enrutador norte al enrutador sur
- Comprobación de la directiva de importación de BGP para la instalación de prefijos
- Verificación de la exportación condicional del enrutador norte al enrutador sur
- Verificar la presencia de rutas ocultas por política (opcional)
Comprobación de BGP
Propósito
Compruebe que se han establecido sesiones BGP entre los tres enrutadores.
Acción
Desde el modo operativo, ejecute el show bgp neighbor neighbor-address
comando.
Compruebe la sesión BGP en el enrutador Internet para verificar que el enrutador norte es vecino.
user@Internet> show bgp neighbor 10.0.89.13 Peer: 10.0.89.13+179 AS 65200 Local: 10.0.89.14+56187 AS 65300 Type: External State: Established Flags: [ImportEval Sync] Last State: OpenConfirm Last Event: RecvKeepAlive Last Error: None Export: [ into-bgp ] Options: [Preference LocalAddress PeerAS Refresh] Local Address: 10.0.89.14 Holdtime: 90 Preference: 170 Number of flaps: 0 Peer ID: 192.168.8.1 Local ID: 192.168.9.1 Active Holdtime: 90 Keepalive Interval: 30 Group index: 0 Peer index: 0 BFD: disabled, down Local Interface: fe-0/1/3.0 NLRI for restart configured on peer: inet-unicast NLRI advertised by peer: inet-unicast NLRI for this session: inet-unicast Peer supports Refresh capability (2) Stale routes from peer are kept for: 300 Peer does not support Restarter functionality NLRI that restart is negotiated for: inet-unicast NLRI of received end-of-rib markers: inet-unicast NLRI of all end-of-rib markers sent: inet-unicast Peer supports 4 byte AS extension (peer-as 65200) Peer does not support Addpath Table inet.0 Bit: 10000 RIB State: BGP restart is complete Send state: in sync Active prefixes: 0 Received prefixes: 0 Accepted prefixes: 0 Suppressed due to damping: 0 Advertised prefixes: 6 Last traffic (seconds): Received 9 Sent 18 Checked 28 Input messages: Total 12 Updates 1 Refreshes 0 Octets 232 Output messages: Total 14 Updates 1 Refreshes 0 Octets 383 Output Queue[0]: 0
Compruebe la sesión BGP en el enrutador norte para comprobar que el enrutador Internet es vecino.
user@North> show bgp neighbor 10.0.89.14 Peer: 10.0.89.14+56187 AS 65300 Local: 10.0.89.13+179 AS 65200 Type: External State: Established Flags: [ImportEval Sync] Last State: OpenConfirm Last Event: RecvKeepAlive Last Error: None Options: [Preference LocalAddress PeerAS Refresh] Local Address: 10.0.89.13 Holdtime: 90 Preference: 170 Number of flaps: 0 Peer ID: 192.168.9.1 Local ID: 192.168.8.1 Active Holdtime: 90 Keepalive Interval: 30 Group index: 0 Peer index: 0 BFD: disabled, down Local Interface: fe-1/3/0.0 NLRI for restart configured on peer: inet-unicast NLRI advertised by peer: inet-unicast NLRI for this session: inet-unicast Peer supports Refresh capability (2) Stale routes from peer are kept for: 300 Peer does not support Restarter functionality NLRI that restart is negotiated for: inet-unicast NLRI of received end-of-rib markers: inet-unicast NLRI of all end-of-rib markers sent: inet-unicast Peer supports 4 byte AS extension (peer-as 65300) Peer does not support Addpath Table inet.0 Bit: 10001 RIB State: BGP restart is complete Send state: in sync Active prefixes: 6 Received prefixes: 6 Accepted prefixes: 6 Suppressed due to damping: 0 Advertised prefixes: 0 Last traffic (seconds): Received 14 Sent 3 Checked 3 Input messages: Total 16 Updates 2 Refreshes 0 Octets 402 Output messages: Total 15 Updates 0 Refreshes 0 Octets 348 Output Queue[0]: 0
Marque los siguientes campos en estos resultados para comprobar que se han establecido las sesiones BGP:
Peer: compruebe si se muestra el número del AS par.
Local: compruebe si el número de AS local aparece en la lista.
State: asegúrese de que el valor sea
Established
. Si no es así, vuelva a comprobar la configuración y consulteshow bgp neighbor
para obtener más detalles sobre los campos de salida.
Del mismo modo, verifique que los enrutadores Norte y Sur formen relaciones pares entre sí.
Significado
Las sesiones BGP se establecen entre los tres enrutadores.
Verificación del anuncio de prefijo del enrutador Internet al enrutador norte
Propósito
Verifique que las rutas enviadas desde el enrutador Internet sean recibidas por el enrutador norte.
Acción
Desde el modo operativo en el enrutador de Internet, ejecute el
show route advertising-protocol bgp neighbor-address
comando.user@Internet> show route advertising-protocol bgp 10.0.89.13 inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.11.1/32 Self I * 172.16.12.1/32 Self I * 172.16.13.1/32 Self I * 172.16.14.1/32 Self I * 172.16.15.1/32 Self I * 192.168.9.1/32 Self I
El resultado verifica que el enrutador Internet anuncia las rutas 172.16.11.1/32, 172.16.12.1/32, 172.16.13.1/32, 172.16.14.1/32, 172.16.15.1/32 y 192.168.9.1/32 (la dirección de circuito cerrado utilizada como ID de enrutador) al enrutador norte.
Desde el modo operativo en el enrutador norte, ejecute el
show route receive-protocol bgp neighbor-address
comando.user@North> show route receive-protocol bgp 10.0.89.14 inet.0: 12 destinations, 12 routes (12 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.11.1/32 10.0.89.14 65300 I * 172.16.12.1/32 10.0.89.14 65300 I * 172.16.13.1/32 10.0.89.14 65300 I * 172.16.14.1/32 10.0.89.14 65300 I * 172.16.15.1/32 10.0.89.14 65300 I * 192.168.9.1/32 10.0.89.14 65300 I
El resultado verifica que el enrutador Norte ha recibido todas las rutas anunciadas por el enrutador Internet.
Significado
Los prefijos enviados por Router Internet se han instalado correctamente en la tabla de enrutamiento del Router North.
Verificación del anuncio de prefijo del enrutador norte al enrutador sur
Propósito
Verifique que las rutas recibidas del enrutador Internet y la ruta estática predeterminada sean anunciadas por el enrutador norte al enrutador sur.
Acción
Desde el modo operativo en el enrutador norte, ejecute el
show route 0/0 exact
comando.user@North> show route 0/0 exact inet.0: 12 destinations, 12 routes (12 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 0.0.0.0/0 *[Static/5] 00:10:22 Reject
La salida verifica la presencia de la ruta predeterminada estática (0.0.0.0/0) en la tabla de enrutamiento del enrutador norte.
Desde el modo operativo en el enrutador norte, ejecute el
show route advertising-protocol bgp neighbor-address
comando.user@North> show route advertising-protocol bgp 10.0.78.13 inet.0: 12 destinations, 12 routes (12 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 0.0.0.0/0 Self I * 172.16.11.1/32 Self 65300 I * 172.16.12.1/32 Self 65300 I * 172.16.13.1/32 Self 65300 I * 172.16.14.1/32 Self 65300 I * 172.16.15.1/32 Self 65300 I
El resultado verifica que el enrutador norte anuncia la ruta estática y la ruta 172.16.11.1/32 recibida del enrutador Internet, así como de muchas otras rutas, al enrutador sur.
Comprobación de la directiva de importación de BGP para la instalación de prefijos
Propósito
Compruebe que la directiva de importación de BGP instala correctamente los prefijos necesarios.
Acción
Compruebe si la política de importación del enrutador sur está operativa comprobando si solo la ruta predeterminada estática del enrutador norte y la ruta 172.16.11.1/32 del enrutador sur están instaladas en la tabla de enrutamiento.
Desde el modo operativo, ejecute el show route receive-protocol bgp neighbor-address
comando.
user@South> show route receive-protocol bgp 10.0.78.14 inet.0: 10 destinations, 11 routes (6 active, 0 holddown, 4 hidden) Prefix Nexthop MED Lclpref AS path * 0.0.0.0/0 10.0.78.14 65200 I * 172.16.11.1/32 10.0.78.14 65200 65300 I
El resultado verifica que la directiva de importación de BGP esté operativa en el enrutador sur y que solo la ruta predeterminada estática de 0.0.0.0/0 del enrutador norte y la ruta 172.16.11.1/32 del enrutador Internet se hayan filtrado en la tabla de enrutamiento del enrutador sur.
Significado
La instalación de prefijos se realiza correctamente debido a la directiva de importación de BGP configurada.
Verificación de la exportación condicional del enrutador norte al enrutador sur
Propósito
Compruebe que cuando Device Internet deja de enviar la ruta 172.16.11.1/32, Device North deja de enviar la ruta predeterminada 0/0.
Acción
Hacer que Internet del dispositivo deje de enviar la ruta 172.16.11.1/32 desactivando la dirección 172.16.11.1/32 en la interfaz de circuito cerrado.
[edit interfaces lo0 unit 0 family inet] user@Internet# deactivate address 172.16.11.1/32 user@Internet# commit
Desde el modo operativo en el enrutador norte, ejecute el
show route advertising-protocol bgp neighbor-address
comando.user@North> show route advertising-protocol bgp 10.0.78.13 inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.12.1/32 Self 65300 I * 172.16.13.1/32 Self 65300 I * 172.16.14.1/32 Self 65300 I * 172.16.15.1/32 Self 65300 I
El resultado verifica que el enrutador norte no anuncia la ruta predeterminada al enrutador sur. Este es el comportamiento esperado cuando la ruta 172.16.11.1/32 no está presente.
Reactive la dirección 172.16.11.1/32 en la interfaz de circuito cerrado del dispositivo Internet.
[edit interfaces lo0 unit 0 family inet] user@Internet# activate address 172.16.11.1/32 user@Internet# commit
Verificar la presencia de rutas ocultas por política (opcional)
Propósito
Verifique la presencia de rutas ocultas por la política de importación configurada en el enrutador sur.
En esta sección se muestran los efectos de varios cambios que puede realizar en la configuración en función de sus necesidades.
Acción
Vea las rutas ocultas de la tabla de enrutamiento del enrutador Sur de la siguiente manera:
Usando la
hidden
opción para elshow route receive-protocol bgp neighbor-address
comando.Desactivación de la política de importación.
Desde el modo operativo, ejecute el comando para ver las
show route receive-protocol bgp neighbor-address hidden
rutas ocultas.user@South> show route receive-protocol bgp 10.0.78.14 hidden inet.0: 10 destinations, 11 routes (6 active, 0 holddown, 4 hidden) Prefix Nexthop MED Lclpref AS path 172.16.12.1/32 10.0.78.14 65200 65300 I 172.16.13.1/32 10.0.78.14 65200 65300 I 172.16.14.1/32 10.0.78.14 65200 65300 I 172.16.15.1/32 10.0.78.14 65200 65300 I
El resultado verifica la presencia de rutas ocultas por la política de importación (172.16.12.1/32, 172.16.13.1/32, 172.16.14.1/32 y 172.16.15.1/32) en el enrutador sur.
Desactive la directiva de importación de BGP configurando la
deactivate import
instrucción en el nivel de[edit protocols bgp group group-name]
jerarquía.[edit protocols bgp group toNorth] user@South# deactivate import user@South# commit
Ejecute el comando de
show route receive-protocol bgp neighbor-address
modo operativo para comprobar las rutas después de desactivar la directiva de importación.user@South> show route receive-protocol bgp 10.0.78.14 inet.0: 10 destinations, 11 routes (10 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 0.0.0.0/0 10.0.78.14 65200 I * 172.16.11.1/32 10.0.78.14 65200 65300 I * 172.16.12.1/32 10.0.78.14 65200 65300 I * 172.16.13.1/32 10.0.78.14 65200 65300 I * 172.16.14.1/32 10.0.78.14 65200 65300 I * 172.16.15.1/32 10.0.78.14 65200 65300 I
La salida verifica la presencia de rutas previamente ocultas (172.16.12.1/32, 172.16.13.1/32, 172.16.14.1/32 y 172.16.15.1/32).
Active la política de importación de BGP y elimine las rutas ocultas de la tabla de enrutamiento configurando las
activate import
instrucciones ykeep none
, respectivamente, en el nivel de[edit protocols bgp group group-name]
jerarquía.[edit protocols bgp group toNorth] user@South# activate import user@South# set keep none user@South# commit
Desde el modo operativo, ejecute el
show route receive-protocol bgp neighbor-address hidden
comando para comprobar las rutas después de activar la directiva de importación y configurar lakeep none
instrucción.user@South> show route receive-protocol bgp 10.0.78.14 hidden inet.0: 6 destinations, 7 routes (6 active, 0 holddown, 0 hidden)
El resultado comprueba que las rutas ocultas no se mantienen en la tabla de enrutamiento debido a la instrucción configurada
keep none
.
Filtro implícito para el comportamiento predeterminado de propagación de rutas EBGP sin políticas
SUMMARY En esta sección se explica el uso de un filtro implícito para regular el comportamiento de propagación de rutas de EBGP cuando no hay ninguna política explícita configurada.
Ventajas
Esta característica proporciona los siguientes beneficios:
Regulates BGP implementation: evita que los altavoces EBGP se conviertan en un paso silencioso donde aceptaba y anunciaba todas las rutas de forma predeterminada. Esta característica reduce efectivamente el aumento del tráfico de tránsito en los sistemas autónomos leaf, especialmente cuando son de host múltiple para cualquier proveedor de servicios de Internet ascendente. Por lo tanto, también evita la caída silenciosa del tráfico, la denegación de servicio y las interrupciones globales de Internet.
Implicit filter—La configuración facilita el uso de un filtro implícito, donde el comportamiento predeterminado sigue siendo establecido para recibir y anunciar todas las rutas de forma predeterminada. La instrucción de configuración solo agrega una opción para especificar habilitar o deshabilitar las cláusulas de aceptación, rechazo y rechazo siempre, cuando sea necesario. El filtro implícito garantiza que los usuarios con implementaciones existentes que dependen de la política BGP predeterminada no experimenten interrupciones operativas.
Descripción general
BGP es el protocolo autónomo actual entre dominios utilizado para el enrutamiento global de Internet. También es compatible con varios servicios, como VPN y estado de enlace, que no están diseñados para uso global.
La implementación de BGP, incluido el comportamiento predeterminado de EBGP, se guía por RFC4271, A Border Gateway Protocol 4 (BGP-4). Sin embargo, no proporciona ninguna orientación explícita sobre cómo especificar qué rutas deben distribuirse. Esto lleva a que la implementación original de BGP sea un paso silencioso para rutas sin ningún filtro y, por lo tanto, cause un aumento en el tráfico, lo que resulta en interrupciones globales de Internet.
A partir de la versión 20.3R1 de Junos OS, introdujimos un filtro defaults ebgp no-policy
implícito en el nivel de jerarquía existente [edit protocols bgp]
. La configuración separa la política predeterminada para recibir y anunciar en cláusulas separadas (aceptar, rechazar o rechazar siempre) para permitir que el comportamiento varíe de forma independiente.
Si no hay ninguna política explícita configurada, el filtro implícito le permite habilitar el comportamiento predeterminado de recepción y publicidad de eBGP en uno de estos tres estados, como se indica a continuación:
Valores |
Política predeterminada |
Qué hace |
---|---|---|
aceptar |
Recibir |
Acepta recibir todas las rutas (también el comportamiento predeterminado). |
anunciar |
Acepta anunciar todas las rutas (también el comportamiento predeterminado). |
|
rechazar |
Recibir |
Rechaza recibir rutas de tipo unidifusión inet e unidifusión inet6 en los tipos de instancia primario, vrf, enrutador virtual y no reenvío. |
anunciar |
Rechaza anunciar rutas de tipo unidifusión inet y unidifusión inet6 en tipos de instancia primario, vrf, enrutador virtual y no reenvío. |
|
rechazar siempre |
Recibir |
Rechaza recibir todas las rutas. |
anunciar |
Rechaza anunciar todas las rutas. |