Introducción
Este documento describe cómo manipular los diferentes atributos cuando se utiliza el aggregate-address comando y cómo influir en la propagación.
Prerequisites
Requirements
Cisco le recomienda que tenga conocimiento acerca de este tema:
Componentes Utilizados
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware. Sin embargo, la configuración en este documento fue probada con el Software Release 12.2(28) de Cisco IOS®.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Convenciones
Consulte Convenciones de Consejos TécnicosCisco para obtener más información sobre las convenciones del documento.
Antecedentes
El protocolo de gateway fronterizo (BGP) permite la agregación de rutas específicas en una ruta con el uso del aggregate-address address mask [as-set] [summary-only] [suppress-map map-name ] [advertise-map map-name ] [attribute-map map-name ] comando. Cuando ejecuta el aggregate-address comando sin argumentos, no hay herencia de los atributos de ruta individuales (como AS_PATH o community), lo que causa una pérdida de granularidad. Este documento ilustra cómo manipular los diferentes atributos cuando se utiliza el aggregate-address comando y cómo influir en la propagación.
Diagrama de la red
Diagrama de la red
Agregado sin el as-set argumento
El uso del as-set argumento crea una dirección agregada con un conjunto matemático de sistemas autónomos (AS). Este as-set argumento resume los atributos AS_PATH de todas las rutas individuales. Estas configuraciones de ejemplo le permiten examinar esta función y cómo este argumento ayuda al BGP a detectar y a evitar los loops.
Router A |
Current configuration:
hostname RouterA
!
interface Serial1
ip address 10.2.2.2 255.0.0.0
!
interface Loopback0
ip address 10.160.20.11 255.255.0.0
!
router bgp 100
network 10.160.20.0
!--- Router A advertises network 10.160.20.0/16.
neighbor 10.2.2.1 remote-as 300
!
end |
Router B |
Current configuration:
hostname RouterB
!
interface Serial0
ip address 10.3.3.3 255.0.0.0
!
interface Loopback0
ip address 10.160.10.1 255.255.0.0
!
router bgp 200
network 10.160.10.0
!--- Router B advertises network 10.160.10.0/16.
neighbor 10.3.3.1 remote-as 300
!
end |
Router C |
Current configuration:
hostname RouterC
!
interface Serial0
ip address 10.2.2.1 255.0.0.0
!
interface Serial1
ip address 10.3.3.1 255.0.0.0
!
interface Serial2
ip address 10.4.4.1 255.0.0.0
!
router bgp 300
neighbor 10.2.2.2 remote-as 100
neighbor 10.3.3.3 remote-as 200
neighbor 10.4.4.4 remote-as 400
aggregate-address 10.160.0.0 255.0.0.0 summary-only
!--- The network is summarized, and Router C only !--- advertises 10.160.0.0/8.
!
end |
Router D |
Current configuration:
hostname RouterD
!
interface Serial0
ip address 10.4.4.4 255.0.0.0
!
router bgp 400
neighbor 10.4.4.1 remote-as 300
!
end |
El router C (AS-300) agrega las rutas 10.160.20.0/16 y 10.160.10.0/16 que vienen del AS-100 y del AS-200, respectivamente. Esta acción ocurre porque ha configurado el summary-only argumento en el Router C. El Router C sólo anuncia el agregado 10.160.0.0/8 al Router D. El total 10.160.0.0/8 es la ruta de enrutamiento entre dominios sin clase (CIDR). Se suprimen las rutas 10.160.10.0/16 y 10.160.20.0/16 más específicas, ya que esta tabla BGP en el Router C muestra:
RouterC# show ip bgp BGP table version is 6, local router ID is 10.4.4.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 10.160.0.0/8 0.0.0.0 32768 i s> 10.160.10.0 10.3.3.3 0 0 200 i s> 10.160.20.0 10.2.2.2 0 0 100 i
Aquí está la tabla BGP del Router D. Observe la información de trayectoria de la ruta agregada:
RouterD# show ip bgp BGP table version is 6, local router ID is 10.4.4.4 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 10.160.0.0/8 10.4.4.1 0 300 i
La ruta agregada 10.160.0.0/8 se considera haberse originado del AS-300 con el código de origen IGP. La ruta ha perdido toda la información AS_PATH específica de los prefijos individuales 10.160.10.0/16, de AS-200, y 10.160.20.0/16, de AS-100.
Agregar con el as-set argumento
Ahora configure el as-set argumento en el aggregate-address comando en el Router C. Aquí está la nueva configuración:
Router C |
Current configuration:
hostname RouterC
!
interface Serial0
ip address 10.2.2.1 255.0.0.0
!
interface Serial1
ip address 10.3.3.1 255.0.0.0
!
interface Serial2
ip address 10.4.4.1 255.0.0.0
!
router bgp 300
neighbor 10.2.2.2 remote-as 100
neighbor 10.3.3.3 remote-as 200
neighbor 10.4.4.4 remote-as 400
aggregate-address 10.160.0.0 255.0.0.0 summary-only as-set
!--- With the as-set configuration command, the aggregate !--- inherits the attributes of the more-specific routes.
!
end |
NReview cómo este argumento influye en la show ip bgp salida en el router:
RouterD# show ip bgp BGP table version is 2, local router ID is 10.4.4.4 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 10.160.0.0/8 10.4.4.1 0 300 {200,100} i
Con el as-set argumento, la información de trayectoria en la tabla BGP para la ruta agregada cambia para incluir un conjunto de 300 {200,100}. Este conjunto indica que el agregado resume realmente las rutas que han pasado por el AS-200 y el AS-100. La as-set información es importante para evitar los loops de ruteo porque la información registra dónde ha estado la ruta.
En cualquier red cerrada, esta información agregada se propaga a través de BGP y vuelve a uno de los AS que as-set enumera. Esta propagación crea la posibilidad de un loop. El comportamiento de detección de loop de BGP anota su propio número AS en el as-set caso de la actualización agregada y descarta la agregación. Esta acción previene un loop.
Nota: El argumento as-set contiene información sobre cada ruta individual que el agregado resume. Los cambios en la ruta individual causan una actualización del agregado. En el ejemplo, si 10.160.10.0/16 deja de funcionar, la información de ruta del agregado cambia de 300 {200,100} a 300 {200}. El agregado es actualizado. Si el agregado resume decenas o centenas de rutas y de rutas que forman el agregado tienen problemas, puede haber un flap constante.
Cambie los Atributos de Ruta Agregada
La sección Agregado con el as-set Argumento
muestra cómo utilizar as-set para guardar los atributos AS_PATH con una ruta específica. En algunos casos, puede requerir un cambio en los atributos de la ruta agregada. Los ejemplos de tales atributos incluyen métrica, comunidad y origen.
Impacto
Esta sección muestra cómo utilizar el attribute-map argumento para manipular los aggregate-address atributos. En este caso, usted configura una o más de las rutas agregadas específicas con el atributo de no-export comunidad. El Router A establece el atributo de comunidad no-export a la red 10.160.20.0/16 y anuncia la red al Router C. Esta sección muestra la configuración. El router C hereda el atributo de comunidad no-export mientras que el router agrega 10.160.0.8. Por lo tanto, no hay anuncio de 10.160.0.0/8 al Router D. La configuración de los Routers B, C, y D no cambia. Aquí está la nueva configuración para el Router A:
Router A |
Current configuration:
hostname RouterA
!
interface Serial1
ip address 10.2.2.2 255.0.0.0
!
router bgp 100
network 10.160.20.0
!--- Router A advertises network 10.160.20.0/16.
neighbor 10.2.2.1 remote-as 300
neighbor 10.2.2.1 send-community
neighbor 10.2.2.1 route-map SET_NO_EXPORT out
!
access-list 1 permit 10.160.20.0 0.0.255.255
route-map SET_NO_EXPORT permit 10
match ip address 1
set community no-export
!--- This sets the community attribute no-export . at Router A for route 10.160.20.0/16 ! end |
Aquí está la tabla BGP del Router C para 10.160.0.0/8:
RouterC# show ip bgp 10.160.0.0 BGP routing table entry for 10.160.0.0/8, version 9 Paths: (1 available, best #1, not advertised to EBGP peer) Not advertised to any peer {200,100}, (aggregated by 300 10.4.4.1) 0.0.0.0 from 0.0.0.0 (10.4.4.1) Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic- aggregate, best, ref 2 Community: no-export
La comunidad no-export detiene el anuncio del Router C de la ruta agregada al Router D par eBGP. El Router D muestra que no ha aprendido 10.160.0.0 del Router C:
RouterD# show ip bgp 10.160.0.0 % Network not in table
Puede configurar el attribute-mapargumento en el Router C para manipular el atributo de comunidad de la ruta agregada de no-export a none. Esta configuración permite el anuncio del agregado al Router D.
Router C |
Current configuration:
hostname RouterC
!
interface Serial0
ip address 10.2.2.1 255.0.0.0
!
interface Serial1
ip address 10.3.3.1 255.0.0.0
!
interface Serial2
ip address 10.4.4.1 255.0.0.0
!
router bgp 300
neighbor 10.2.2.2 remote-as 100
neighbor 10.3.3.3 remote-as 200
neighbor 10.4.4.4 remote-as 400
aggregate-address 10.160.0.0 255.0.0.0
as-set summary-only attribute-map Map
!--- Use of the attribute-map argument allows !--- you to change the community of the aggregate.
!
route-map Map permit 10
set community none
!--- This sets the community of the aggregate to none.
end |
Ahora, observe la tabla BGP del Router C para 10.160.0.0/8. Debido a que no hay un conjunto de comunidades para la ruta agregada, el Router C anuncia 10.160.0.0/8 al Router D.
RouterC# show ip bgp 10.160.0.0 BGP routing table entry for 10.160.0.0/8, version 6 Paths: (1 available, best #1) Advertised to non peer-group peers: 10.2.2.2 10.3.3.3 10.4.4.4 {200,100}, (aggregated by 300 10.4.4.1) 0.0.0.0 from 0.0.0.0 (10.4.4.1) Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic- aggregate, best, ref 2
El show ip bgp 160.0.0.0 resultado en el Router D muestra que el Router D ha aprendido la ruta agregada 10.160.0.0/8 del Router C.
RouterD# show ip bgp 10.160.0.0 BGP routing table entry for 10.160.0.0/8, version 10 Paths: (1 available, best #1, table Default-IP-Routing-Table) Not advertised to any peer 300 {200,100}, (aggregated by 300 10.4.4.1) 10.4.4.1 from 10.4.4.1 (10.4.4.1) Origin IGP, localpref 100, valid, external, best
Utilizar advertise-map para agregar un subconjunto de rutas específicas
Si tiene control sobre los prefijos individuales que forman la ruta agregada, puede decidir más fácilmente qué atributos puede llevar el agregado. Excluya el prefijo 10.160.20.0 de la ruta agregada en el ejemplo de la sección Cambiar los Atributos de la Ruta Agregada. En este caso, el agregado 10.160.0.0/8 no hereda el atributo de comunidad no-export . Para realizar este cambio, configure el advertise-map argumento en el Router C.
Router C |
Current configuration:
hostname RouterC
!
interface Serial0
ip address 10.2.2.1 255.0.0.0
!
interface Serial1
ip address 10.3.3.1 255.0.0.0
!
interface Serial2
ip address 10.4.4.1 255.0.0.0
!
router bgp 300
neighbor 10.2.2.2 remote-as 100
neighbor 10.3.3.3 remote-as 200
neighbor 10.4.4.4 remote-as 400
aggregate-address 10.160.0.0 255.0.0.0
as-set summary-only advertise-map SELECT_SP_ROUTE
!--- You exclude a particular prefix with the !--- use of advertise-map.
!
access-list 1 permit 10.160.10.0 0.0.255.255
!
route-map SELECT_SP_ROUTE permit 10
match ip address 1
!
end |
Ahora, observe la tabla BGP del Router C para 10.160.0.0/8:
RouterC# show ip bgp 10.160.0.0 BGP routing table entry for 10.160.0.0/8, version 15 Paths: (1 available, best #1) Advertised to non peer-group peers: 10.2.2.2 10.4.4.4 200, (aggregated by 300 10.2.2.1) 0.0.0.0 from 0.0.0.0 (10.2.2.1) Origin IGP, localpref 100, weight 32768, valid, aggregated, local, atomic- aggregate, best, ref 2
Sólo AS-200 es parte de la información AS_PATH del agregado; AS-100 no es parte de la información. Además, no hay herencia de la comunidad no-export de 10.160.20.0/16. Por lo tanto, la ruta agregada se anuncia al Router D. El show ip bgp 160.0.0.0 resultado muestra el anuncio:
RouterD# show ip bgp 10.160.0.0 BGP routing table entry for 10.160.0.0/8, version 7 Paths: (1 available, best #1, table Default-IP-Routing-Table) Not advertised to any peer 300 200, (aggregated by 300 10.4.4.1) 10.4.4.1 from 10.4.4.1 (10.4.4.1) Origin IGP, localpref 100, valid, external, atomic-aggregate, best ip bgp 10.160.0.0
Nota: Debido a que aggregate as-set tiene AS-200 solamente, el Router A en AS-100 acepta la ruta agregada e instala la ruta en la tabla de ruteo. El mecanismo de detección del loop BGP causa esta aceptación de la ruta. El mecanismo de detección del loop BGP no detecta su AS en el as-set.
RouterA# show ip bgp BGP table version is 3, local router ID is 10.160.20.1 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 10.160.0.0/8 10.2.2.1 0 300 200 i *> 10.160.20.0 0.0.0.0 0 32768 i
Impacto del uso de suppress-map con otros comandos de configuración
El aggregate-address comando incluye otros comandos de configuración, como suppress-map . Para comprender el impacto del uso de todos los comandos de configuración en combinación, tenga en cuenta que aggregate-address sólo hereda los atributos de las rutas más específicas cuando utiliza el comando de as-set configuración. Entre los ejemplos de atributos que aggregate-address pueden heredar se incluyen no-export y no-advertise .
-
Cuando se utiliza el comando de suppress-map configuración junto con el comando de summary-only configuración, el comando de summary-only configuración no tiene ningún efecto. Con el uso del comando de suppress-map configuración, las rutas más específicas que suppress-map suprime no se anuncian. Sin embargo, las rutas que no suppress-map cubre el se anuncian además de la ruta agregada. Por lo tanto, las notas de esta sección se aplican al uso de suppress-map con o sin el summary-only configuration comando.
-
Cuando se utiliza as-set con suppress-map , aunque las rutas suprimidas no se anuncian, la ruta agregada hereda los atributos de todas las rutas suprimidas. Sin embargo, puede reemplazar los atributos heredados con el uso de otros comandos de configuración, como attribute-map . La sección Cambio de los Atributos de la Ruta Agregada describe el uso de attribute-map .
-
Cuando se utilizan los comandos as-set y suppress-map configuration con advertise-map , se forma el agregado. El agregado hereda los atributos sólo de las rutas seleccionadas en el advertise-map , independientemente de si suppress-map suprime la ruta. Vea la sección Uso advertise-map para Agregar un Subconjunto de Rutas Específicas
.
-
Cuando se utilizan advertise-map y attribute-map junto con as-set y otros comandos de configuración, el attribute-map reemplaza los atributos que se eligen en el advertise-map .
En general, cuando se utiliza advertise-map , sólo el advertise-map influye en el agregado. En ausencia de advertise-map , el agregado hereda los atributos de las rutas más específicas, tanto suprimidas como no suprimidas. En ambos casos, puede utilizar el comando de attribute-map configuración para anular los atributos seleccionados.
Información Relacionada