EN ESTA PÁGINA
Ejemplo: Configurar listas de prefijos de política de enrutamiento
En Junos OS, las listas de prefijos proporcionan un método para definir un conjunto de rutas. Junos OS proporciona otros métodos para realizar la misma tarea, como filtros de ruta. Una lista de prefijos es una lista de prefijos IP que representan un conjunto de rutas que se utilizan como criterios de coincidencia en una política aplicada. Tal lista podría ser útil para representar una lista de rutas de clientes en su sistema autónomo (AS). A la lista de prefijos se le da un nombre y se configura dentro de la [edit policy-options] jerarquía de configuración.
Requisitos
No se requiere ninguna configuración especial más allá de la inicialización del dispositivo antes de configurar este ejemplo.
Actualizado y revalidado con Junos OS versión 22.1R1.
Descripción general
Las listas de prefijos son similares a una lista de filtros de ruta. La diferencia funcional entre los filtros de ruta y las listas de prefijos es que no puede especificar un rango mediante una lista de prefijos. Puede simular un rango con una lista de prefijos incluyendo prefijos adicionales en la lista o utilizando dos listas de prefijos, una más corta y otra más larga, estableciendo una para aceptar y la otra para rechazar. También puede filtrar una lista de prefijos mediante la condición de prefix-list-filter coincidencia. Sus opciones son exact, longery orlonger.
El beneficio de una lista de prefijos sobre una lista de filtros de ruta se ve cuando se hace referencia a los prefijos en varias ubicaciones diferentes. Por ejemplo, se puede hacer referencia a una lista de prefijos en una política de importación del BGP, una política de exportación, una política de RPF, en filtros de firewall, en filtros de circuito cerrado, en la configuración de un ámbito de multidifusión, etc.
Cuando cambie la lista de prefijos, en lugar de intentar recordar las muchas ubicaciones que están configuradas, puede actualizar la lista de prefijos y cambiar el prefijo una vez en lugar de varias veces. Esto ayuda a reducir la probabilidad de errores de configuración, como mistyping la dirección en una ubicación u olvidarse de actualizar una o varias ubicaciones.
Las listas de prefijos también ayudan a administrar una gran cantidad de dispositivos. Puede escribir los distintos filtros y políticas de la manera más genérica posible, haciendo referencia a listas de prefijos en lugar de direcciones IP específicas. La lógica más compleja en los filtros y las políticas debe escribirse solo una vez, con un mínimo de personalizaciones por dispositivo y por sitio.
Como se muestra en Figura 1, cada router del AS 650 00tiene rutas de cliente. El dispositivo R1 asigna rutas de clientes dentro de la subred 172.16.1.0/24. Los dispositivos R2 y R3 asignan rutas de clientes dentro de las subredes 172.16.2.0/24 y 172.16.3.0/24, respectivamente. El dispositivo R1 ha sido designado como punto central del AS 650 00para mantener una lista completa de rutas de clientes. El dispositivo R1 tiene una lista de prefijos llamada customers, de la siguiente manera:
user@R1# show policy-options
prefix-list customers {
172.16.1.16/28;
172.16.1.32/28;
172.16.1.48/28;
172.16.1.64/28;
172.16.2.16/28;
172.16.2.32/28;
172.16.2.48/28;
172.16.2.64/28;
172.16.3.16/28;
172.16.3.32/28;
172.16.3.48/28;
172.16.3.64/28;
}
Como puede ver, la lista de prefijos no contiene un tipo de coincidencia para cada ruta (como vería con un filtro de ruta). Este es un punto importante cuando se utiliza una lista de prefijos en una política. Las rutas solo coinciden si coinciden exactamente con uno de los prefijos de la lista. En otras palabras, cada ruta de la lista debe aparecer en la tabla de enrutamiento exactamente como está configurada en la lista de prefijos.
Se hace referencia a la lista de prefijos como un criterio de coincidencia dentro de una política como esta:
user@R1# show policy-options
policy-statement customer-routes {
term get-routes {
from {
prefix-list customers;
}
then accept;
}
term others {
then reject;
}
}
En este ejemplo, todas las rutas de la lista de customers prefijos aparecen en la tabla de enrutamiento del dispositivo R1. Los dispositivos R2 y R3 exportan al dispositivo R1 rutas estáticas a sus clientes.
Como se mencionó anteriormente, puede usar la prefix-list-filter condición de coincidencia con el exact, longero orlonger tipo de coincidencia. Esto proporciona una forma de evitar la limitación de coincidencia exacta de la lista de prefijos de las listas de prefijos. Por ejemplo:
user@R1# show policy-options
policy-statement customer-routes {
term get-routes {
from {
prefix-list-filter customers orlonger;
}
then accept;
}
term others {
then reject;
}
}
En el ejemplo se muestran los efectos de la prefix-list condición de coincidencia y de la condición de prefix-list-filter coincidencia.
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.
La sección #configuration449__policy-prefix-list-st describe los pasos en el 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, luego, copie y pegue los comandos en la CLI en el [edit] nivel de jerarquía.
Dispositivo R1
set interfaces ge-0/0/0 unit 0 description to_R2 set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.1/30 set interfaces ge-0/0/1 unit 0 description to_R3 set interfaces ge-0/0/1 unit 0 family inet address 10.0.0.5/30 set interfaces ge-0/0/2 unit 0 description to_R4 set interfaces ge-0/0/2 unit 0 family inet address 10.1.0.5/30 set interfaces lo0 unit 0 family inet address 192.168.0.1/32 set policy-options prefix-list customers 172.16.1.16/28 set policy-options prefix-list customers 172.16.1.32/28 set policy-options prefix-list customers 172.16.1.48/28 set policy-options prefix-list customers 172.16.1.64/28 set policy-options prefix-list customers 172.16.2.16/28 set policy-options prefix-list customers 172.16.2.32/28 set policy-options prefix-list customers 172.16.2.48/28 set policy-options prefix-list customers 172.16.2.64/28 set policy-options prefix-list customers 172.16.3.16/28 set policy-options prefix-list customers 172.16.3.32/28 set policy-options prefix-list customers 172.16.3.48/28 set policy-options prefix-list customers 172.16.3.64/28 set policy-options policy-statement customer-routes term get-routes from prefix-list customers set policy-options policy-statement customer-routes term get-routes then accept set policy-options policy-statement customer-routes term others then reject set routing-options router-id 192.168.0.1 set routing-options autonomous-system 65000 set routing-options static route 172.16.1.16/28 discard set routing-options static route 172.16.1.32/28 discard set routing-options static route 172.16.1.48/28 discard set routing-options static route 172.16.1.64/28 discard set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.1 set protocols bgp group int neighbor 192.168.0.2 set protocols bgp group int neighbor 192.168.0.3 set protocols bgp group to_65001 type external set protocols bgp group to_65001 export customer-routes set protocols bgp group to_65001 neighbor 10.1.0.6 peer-as 65001 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
Dispositivo R2
set interfaces ge-0/0/0 unit 0 description to_R1 set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.2/30 set interfaces ge-0/0/1 unit 0 description to_R3 set interfaces ge-0/0/1 unit 0 family inet address 10.1.0.1/30 set interfaces lo0 unit 0 family inet address 192.168.0.2/32 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then accept set routing-options router-id 192.168.0.2 set routing-options autonomous-system 65000 set routing-options static route 172.16.2.16/28 discard set routing-options static route 172.16.2.32/28 discard set routing-options static route 172.16.2.48/28 discard set routing-options static route 172.16.2.64/28 discard set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.2 set protocols bgp group int neighbor 192.168.0.1 export send-static set protocols bgp group int neighbor 192.168.0.3 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
Dispositivo R3
set interfaces ge-0/0/0 unit 0 description to_R1 set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.6/30 set interfaces ge-0/0/1 unit 0 description to_R2 set interfaces ge-0/0/1 unit 0 family inet address 10.1.0.2/30 set interfaces lo0 unit 0 family inet address 192.168.0.3/32 set policy-options policy-statement send-static term 1 from protocol static set policy-options policy-statement send-static term 1 then accept set routing-options router-id 192.168.0.3 set routing-options autonomous-system 65000 set routing-options static route 172.16.3.16/28 discard set routing-options static route 172.16.3.32/28 discard set routing-options static route 172.16.3.48/28 discard set routing-options static route 172.16.3.64/28 discard set protocols bgp group int type internal set protocols bgp group int local-address 192.168.0.3 set protocols bgp group int neighbor 192.168.0.1 export send-static set protocols bgp group int neighbor 192.168.0.2 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
Dispositivo R4
set interfaces ge-0/0/0 unit 0 description to_R1 set interfaces ge-0/0/0 unit 0 family inet address 10.1.0.6/30 set interfaces lo0 unit 0 family inet address 192.168.0.4/32 set routing-options autonomous-system 65001 set protocols bgp group ext type external set protocols bgp group ext peer-as 65000 set protocols bgp group ext neighbor 10.1.0.5
Procedimiento
Procedimiento paso a paso
Estamos mostrando el procedimiento paso a paso para configurar R1. Los otros enrutadores tienen un proceso paso a paso similar. El siguiente ejemplo requiere que navegue por varios niveles en la jerarquía de configuración. Para obtener más información acerca de cómo navegar por la CLI, consulte Usar el Editor de CLI en modo de configuración en la Guía del usuario de la CLI de Junos OS.
Para configurar R1:
-
Configure las interfaces.
[edit] user@R1# set interfaces ge-0/0/0 unit 0 description to_R2 user@R1# set interfaces ge-0/0/0 unit 0 family inet address 10.0.0.1/30 user@R1# set interfaces ge-0/0/1 unit 0 description to_R3 user@R1# set interfaces ge-0/0/1 unit 0 family inet address 10.0.0.5/30 user@R1# set interfaces ge-0/0/2 unit 0 description to_R4 user@R1# set interfaces ge-0/0/2 unit 0 family inet address 10.1.0.5/30 user@R1# set interfaces lo0 unit 0 family inet address 192.168.0.1/32
-
Configure los emparejamientos internos del BGP (IBGP) en R2 y R3.
[edit] user@R1# set protocols bgp group int type internal user@R1# set protocols bgp group int local-address 192.168.0.1 user@R1# set protocols bgp group int neighbor 192.168.0.2 user@R1# set protocols bgp group int neighbor 192.168.0.3
-
Configure el emparejamiento del BGP externo (EBGP) en R4. La configuración de política de exportación se muestra en un paso posterior.
[edit] user@R1# set protocols bgp group to_65001 type external user@R1# set protocols bgp group to_65001 export customer-routes user@R1# set protocols bgp group to_65001 neighbor 10.1.0.6 peer-as 65001
-
Configure los emparejamientos de OSPF en R2 y R3. El protocolo OSPF proporciona el aprendizaje de la dirección de circuito cerrado para cada dispositivo, lo que permite establecer los emparejamientos del IBGP.
[edit] user@R1# set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 user@R1# set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 user@R1# set protocols ospf area 0.0.0.0 interface lo0.0 passive
-
Configure la lista de prefijos.
[edit] user@R1# set policy-options prefix-list customers 172.16.1.16/28 user@R1# set policy-options prefix-list customers 172.16.1.32/28 user@R1# set policy-options prefix-list customers 172.16.1.48/28 user@R1# set policy-options prefix-list customers 172.16.1.64/28 user@R1# set policy-options prefix-list customers 172.16.2.16/28 user@R1# set policy-options prefix-list customers 172.16.2.32/28 user@R1# set policy-options prefix-list customers 172.16.2.48/28 user@R1# set policy-options prefix-list customers 172.16.2.64/28 user@R1# set policy-options prefix-list customers 172.16.3.16/28 user@R1# set policy-options prefix-list customers 172.16.3.32/28 user@R1# set policy-options prefix-list customers 172.16.3.48/28 user@R1# set policy-options prefix-list customers 172.16.3.64/28
-
Configure la política de enrutamiento que hace referencia a la lista de prefijos como criterio de coincidencia.
[edit] user@R1# set policy-options policy-statement customer-routes term get-routes from prefix-list customers user@R1# set policy-options policy-statement customer-routes term get-routes then accept user@R1# set policy-options policy-statement customer-routes term others then reject
-
Configure la rutaestática s para la 172.16. Red 1.0/24. Estamos usando rutas estáticas para emular las rutas del cliente.
[edit] user@R1# set routing-options static route 172.16.1.16/28 discard user@R1# set routing-options static route 172.16.1.32/28 discard user@R1# set routing-options static route 172.16.1.48/28 discard user@R1# set routing-options static route 172.16.1.64/28 discard
-
Configure el número de sistema autónomo (AS) y el ID del enrutador.
[edit] user@R1# set routing-options router-id 192.168.0.1 user@R1# set routing-options autonomous-system 65000
Resultados
Desde el modo de configuración, ingrese los comandos , show protocols, show policy-optionsy show routing-options para confirmar la show interfacesconfiguración. Si el resultado no muestra la configuración deseada, repita las instrucciones en este ejemplo para corregir la configuración.
user@R1# show interfaces
ge-0/0/0 {
unit 0 {
description to_R2;
family inet {
address 10.0.0.1/30;
}
}
}
ge-0/0/1 {
unit 0 {
description to_R3;
family inet {
address 10.0.0.5/30;
}
}
}
ge-0/0/2 {
unit 0 {
description to_R4;
family inet {
address 10.1.0.5/30;
}
}
}
lo0 {
unit 0 {
family inet {
address 192.168.0.1/32;
}
}
}user@R1# show protocols
bgp {
group int {
type internal;
local-address 192.168.0.1;
neighbor 192.168.0.2;
neighbor 192.168.0.3;
}
group to_65001 {
type external;
export customer-routes;
neighbor 10.1.0.6 {
peer-as 65001;
}
}
}
ospf {
area 0.0.0.0 {
interface ge-0/0/0.0;
interface ge-0/0/1.0;
interface lo0.0 {
passive;
}
}
}user@R1# show policy-options
prefix-list customers {
172.16.1.16/28;
172.16.1.32/28;
172.16.1.48/28;
172.16.1.64/28;
172.16.2.16/28;
172.16.2.32/28;
172.16.2.48/28;
172.16.2.64/28;
172.16.3.16/28;
172.16.3.32/28;
172.16.3.48/28;
172.16.3.64/28;
}
policy-statement customer-routes {
term get-routes {
from {
prefix-list customers;
}
then accept;
}
term others {
then reject;
}
}
user@R1# show routing-options
static {
route 172.16.1.16/28 discard;
route 172.16.1.32/28 discard;
route 172.16.1.48/28 discard;
route 172.16.1.64/28 discard;
}
router-id 192.168.0.1;
autonomous-system 65000;
Si ha terminado de configurar el dispositivo, ingrese commit desde el modo de configuración.
Verificación
Confirme que la configuración funciona correctamente.
- Verificar las rutas en R1
- Verificar el anuncio de ruta a R4
- Experimentar con la instrucción de prefix-list-filter
Verificar las rutas en R1
Propósito
En R1, compruebe las rutas en la tabla de enrutamiento.
Acción
user@R1> show route terse 172.16/16 inet.0: 30 destinations, 30 routes (30 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both A V Destination P Prf Metric 1 Metric 2 Next hop AS path * ? 172.16.1.16/28 S 5 Discard * ? 172.16.1.32/28 S 5 Discard * ? 172.16.1.48/28 S 5 Discard * ? 172.16.1.64/28 S 5 Discard * ? 172.16.2.16/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.2.32/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.2.48/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.2.64/28 B 170 100 I unverified >10.0.0.2 * ? 172.16.3.16/28 B 170 100 I unverified >10.0.0.6 * ? 172.16.3.32/28 B 170 100 I unverified >10.0.0.6 * ? 172.16.3.48/28 B 170 100 I unverified >10.0.0.6 * ? 172.16.3.64/28 B 170 100 I unverified >10.0.0.6
Significado
El dispositivo R1 aprendió sus propias rutas estáticas (S) y las rutas BGP de los dispositivos R2 y R3 (B).
Verificar el anuncio de ruta a R4
Propósito
En R1, asegúrese de que las rutas del cliente se anuncien a R4.
Acción
user@R1> show route advertising-protocol bgp 10.1.0.6 inet.0: 30 destinations, 30 routes (30 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.1.16/28 Self I * 172.16.1.32/28 Self I * 172.16.1.48/28 Self I * 172.16.1.64/28 Self I * 172.16.2.16/28 Self I * 172.16.2.32/28 Self I * 172.16.2.48/28 Self I * 172.16.2.64/28 Self I * 172.16.3.16/28 Self I * 172.16.3.32/28 Self I * 172.16.3.48/28 Self I * 172.16.3.64/28 Self I
Significado
Como se esperaba, solo las rutas de la lista de prefijos de cliente se anuncian a R4.
Experimentar con la instrucción de prefix-list-filter
Propósito
Vea lo que puede pasar cuando se usa prefix-list-filter en lugar de prefix-list.
Acción
-
En R3, agregue una ruta estática que sea más larga que una de las rutas estáticas existentes.
[edit routing-options static] user@R3# set route 172.16.3.65/32 discard user@R3# commit
-
En R1, desactive la lista de prefijos y configure un filtro de lista de prefijos con el
orlongertipo de coincidencia.[edit policy-options policy-statement customer-routes term get-routes] user@R1# deactivate from prefix-list customers user@R1# set from prefix-list-filter customers orlonger user@R1# commit
-
En R1, compruebe qué rutas se anuncian a R4.
user@R1> show route advertising-protocol bgp 10.1.0.6 inet.0: 31 destinations, 31 routes (31 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 172.16.1.16/28 Self I * 172.16.1.32/28 Self I * 172.16.1.48/28 Self I * 172.16.1.64/28 Self I * 172.16.2.16/28 Self I * 172.16.2.32/28 Self I * 172.16.2.48/28 Self I * 172.16.2.64/28 Self I * 172.16.3.16/28 Self I * 172.16.3.32/28 Self I * 172.16.3.48/28 Self I * 172.16.3.64/28 Self I * 172.16.3.65/32 Self I
Significado
Como se esperaba, R1 ahora anuncia el 172.16. Ruta 3,65/32 a R4, aunque 172,16. 3.65/32 no está en la lista de prefijos.
