aggregate
statement. Route aggregation is also used by regional and national networks to reduce the amount of routing information passed around. With careful allocation of network addresses to clients, regional networks can just announce one route to regional networks instead of hundreds.
Aggregate routes are not actually used for packet forwarding by the originator of the aggregate route, only by the receiver (if it wishes). A router receiving a packet which does not match one of the component routes which led to the generation of an aggregate route is supposed to respond with an ICMP network unreachable message. This is to prevent packets for unknown component routes from following a default route into another network where they would be forwarded back to the border router, and around and around again and again, until their TTL expires. Sending an unreachable message for a missing piece of an aggregate is only possible on systems with support for reject routes.
A slight variation of aggregation is the generation of a route based on the existence of certain conditions. This is sometimes known as the route of last resort. This route inherits the next hops and aspath from the contributor specified with the lowest (most favorable) preference. The most common usage for this is to generate a default based on the presence of a route from a peer on a neighboring backbone.
aggregate default | ( network [ ( mask mask ) | ( masklen number ) ] ) [ preference preference ] [ brief ] { proto [ all | direct | static | kernel | aggregate | proto ] [ ( as autonomous system ) | ( tag tag ) | ( aspath aspath_regexp ) ] restrict ; proto [ all | direct | static | kernel | aggregate | proto ] [ ( as autonomous system ) | ( tag tag ) | ( aspath aspath_regexp ) ] [ preference preference ] { route_filter [ restrict | ( preference preference ) ] ; } ; } ; generate default | ( network [ ( mask mask ) | ( masklen number ) ] ) [ preference preference ] { [ ( as autonomous system ) | ( tag tag ) | ( aspath aspath_regexp ) ] restrict ; proto [ all | direct | static | kernel | aggregate | proto ] [ ( as autonomous system ) | ( tag tag ) | ( aspath aspath_regexp ) ] [ preference preference ] { route_filter [ restrict | ( preference preference ) ] ; } ; } ;Routes that match the route filters are called contributing routes. They are ordered according to the aggregation preference that applies to them. If there are more than one contributing routes with the same aggregating preference, the route's own preferences are used to order the routes. The preference of the aggregate route will be that of contributing route with the lowest aggregate preference.
restrict
is specified on the first line of a
statement), all routes from the specfied source will match that
statement. If any filters are specified, only routes that match the
specified filters will be considered as contributors. Put
differently, if any filters are specified, an all restrict
;
is assumed at the end of the list.
network [ exact | refines ] network mask mask [exact | refines ] network masklen number [ exact | refines ] default host host