1 AGGREGATE COMMANDSTHERE IS A WIDE RANGE OF AGGREGATE COMMANDS. IT...
There is a wide range of aggregate commands. It is important to
understand how each one works in order to have the desired aggregation
behavior.
The first command is the one used in the previous example:
aggregate-address
address mask
This will advertise the prefix route, and all of the more specific
routes. The command aggregate-address 160.0.0.0 will propagate an addi-
tional network 160.0.0.0 but will not prevent 160.10.0.0 from being also
propagated to RTA. The outcome of this is that both networks 160.0.0.0
and 160.10.0.0 have been propagated to RTA. This is what we mean by
advertising the
prefix and the more specific route.
Please note that you can not aggregate an address if you do not have a
more specific route of that address in the BGP routing table.
For example, RTB can not generate an aggregate for 160.0.0.0 if it does
not have a more specific entry of 160.0.0.0 in its BGP table. The more
specific route could have been injected into the BGP table via incoming
updates from other ASs, from redistributing an IGP or static into BGP or
via the network command (network 160.10.0.0).
In case we would like RTC to propagate network 160.0.0.0 only and NOT the
more specific route then we would have to use the following:
aggregate-address
address mask summary-only
This will a advertise the prefix only; all the more specific routes are
suppressed.
The command aggregate 160.0.0.0 255.0.0.0 summary-only will propagate
network 160.0.0.0 and will suppress the more specific route 160.10.0.0.
Please note that if we are aggregating a network that is injected into
our BGP via the network statement (ex: network 160.10.0.0 on RTB) then
the network entry is always injected into BGP updates even though we are
using the “aggregate summary-only” command. The upcoming CIDR example
discusses this situation.
aggregate-address
address mask as-set
This advertises the prefix and the more specific routes but it includes
as-set information in the path information of the routing updates.
ex: aggregate 129.0.0.0 255.0.0.0 as-set.
This will be discussed in an example by itself in the following sections.
In case we would like to suppress more specific routes when doing the
aggregation we can define a route map and apply it to the aggregates.
This will allow us to be selective about which more specific routes to
suppress.
aggregate-address
address-mask suppress-map map-name
This advertises the prefix and the more specific routes but it
suppresses advertisement according to a route-map. In the previous
diagram, if we would like to aggregate 160.0.0.0 and suppress the more
specific route 160.20.0.0 and allow 160.10.0.0 to be propagated, we can
use the following route map:
route-map CHECK permit 10
match ip address 1
access-list 1 deny 160.20.0.0 0.0.255.255
access-list 1 permit 0.0.0.0 255.255.255.255
Then we apply the route-map to the aggregate statement.
RTC#
router bgp 300
neighbor 3.3.3.3 remote-as 200
neighbor 2.2.2.2 remote-as 100
network 170.10.0.0
aggregate-address 160.0.0.0 255.0.0.0 suppress-map CHECK
Another variation is the: