9.5 Redundancy, Symmetry, and Load Balancing
9.5.3 Default routing in BGP networks
You have seen that default routes minimize the size of a routing table. They can also provide networks with redundancy in the event of failures and connectivity interruptions. BGP, like almost all IGPs, can distribute a default route. To provide redundancy, you could be receiving default information from multiple BGP sources. In a BGP system, the Local Preference attribute can be manipulated on the various default routes so that at least one default route is identified as primary (that is, the highest Local Preference) and others are kept as backups. If the primary fails, a backup route (with the next highest preference) can take its place.

In Figure , RTA is connected to RTB and is learning about two default routes, one via 1.1.1.1 and a second via 2.2.2.2. By using the Local Preference attribute, we can give 1.1.1.1 preference and make it the primary default route. RTA will use 2.2.2.2 as a default only after 1.1.1.1 fails.

In Figure , the same behavior can be achieved as long as IBGP is running inside the AS. The Local Preference attribute, which is exchanged between IBGP peers, will determine the primary and backup links.

It is important to control default information in BGP because improper configuration can cause serious Internet routing problems. For example, a misconfigured BGP speaker could end up flooding a default route to all of its neighbors and quickly find itself consumed with default-routed traffic from surrounding autonomous systems. To protect against misadvertisements, the Cisco IOS provides a way to target default information at a specific neighbor by using the default-originate option with the neighbor command:

RTC(config)#router bgp 3
RTC(config-router)#neighbor 172.16.20.1 remote-as 1
RTC(config-router)#neighbor 172.16.20.1 default-originate

If RTC is configured as shown above, it will send default information only to the specified neighbor. If you want to configure a BGP router to advertise a default to all of its peers, you can use the network command as shown below. Both neighbors -- 172.16.20.1 and 172.17.1.1 -- will receive a default route from RTC (if it has one to send).

RTC(config)#router bgp 3
RTC(config-router)#neighbor 172.16.20.1 remote-as 1
RTC(config-router)#neighbor 172.17.1.1 remote-as 2
RTC(config-router)#network 0.0.0.0

Many network administrators choose to filter dynamically learned default routes to avoid situations in which traffic ends up where it is not supposed to be. Without dynamically learned default routes, a router must be statically configured with default information. Statically configured default routes typically provide you more control over routing within an AS.