configuration command determines how BGP handles
redistributed routes. When BGP summarization is enabled (with
auto-summary), all redistributed subnets are summarized
to their classful boundaries in the BGP table. When it is
disabled (with no auto-summary), all redistributed
subnets are present in their original form in the BGP table, so
only those subnets are advertised. In Cisco IOS Software
Release 12.2(8)T, the default behavior of the
auto-summary command was changed to disabled (no
auto-summary). Prior to that, the default was enabled
(auto-summary).
Content 6.3
Configuring BGP 6.3.12 BGP
Synchronization The BGP synchronization rule states that a
BGP router should not use, or advertise to an external
neighbor, a route that is learned from IBGP unless that route
is local or the router learns it from the IGP. In other words,
BGP and the IGP must be synchronized before BGP can use
networks that are learned from an IBGP neighbor. If an
autonomous system passes traffic to another autonomous system,
BGP should not advertise a route before all routers in the
autonomous system have learned about the route via the IGP. A
router learning a route via IBGP waits until the IGP has
propagated the route within the autonomous system and then
advertises it to external peers. This rule ensures that all
routers in the autonomous system are synchronized and are able
to route traffic that the autonomous system advertises to other
autonomous systems. This approach ensures consistency of
routing information (avoids “black holes”) within the
autonomous system. BGP synchronization is disabled by default
in Cisco IOS Software Release 12.2(8)T and later. It was on by
default in earlier Cisco IOS software releases. When
synchronization is disabled, BGP can use and advertise routes
learned from an IBGP neighbor that are not present in the local
routing table to an external BGP neighbor. BGP synchronization
is unnecessary in some situations. For instance, it is safe to
have BGP synchronization off if all routers in the transit path
in the autonomous system are running full mesh IBGP. Having
synchronization disabled allows the routers to carry fewer
routes in IGP and allows BGP to converge more quickly. Use
synchronization if routers in the BGP transit path in the
autonomous system are not running BGP (therefore, the routers
do not have full mesh IBGP within the autonomous system).
Note
In the past, the best practice was to
redistribute BGP into the IGP running in an autonomous system
so that IBGP was not needed in every router in the transit
path. In this case, synchronization was needed to make sure
that packets did not get lost; therefore, synchronization was
on by default. As the Internet grew, the number of routes in
the BGP table became too much for the IGPs to handle. The best
practice changed to not redistribute BGP into the IGP, but
instead use IBGP on all routers in the transit path. In this
case, synchronization is not needed, so it is now off by
default.
Content 6.3 Configuring
BGP 6.3.13 BGP Synchronization Example In
Figure , routers A, B, C, and D are all running IBGP and an IGP
with each other. There are no matching IGP routes for the BGP
routes (routers A and B are not redistributing the BGP routes
into the IGP). Routers A, B, C, and D have IGP routes to the
internal networks of AS 65500, but do not have routes to
external networks such as 172.16.0.0. Router B advertises the
route to 172.16.0.0 to the other routers in AS 65500 using
IBGP. If synchronization is on, routers A, C, and D do not use
the route to 172.16.0.0, nor does router A advertise that route
to router E in AS 64520. Router B uses the route to 172.16.0.0
and installs it in its routing table. If router E receives
traffic that is destined for network 172.16.0.0, it does not
have a route for that network and cannot forward the traffic.
If synchronization is off (the default) in AS 65500, routers A,
C, and D can use the route to 172.16.0.0 and install the route
in their routing tables, even if there are no matching IGP
routes for the BGP routes (assuming that routers A, C, and D
can reach the next-hop address for 172.16.0.0). Router A
advertises the route to router E. Router E then has a route to
172.16.0.0 and may send traffic that is destined for that
network. Router E sends the packets to router A, and router A
forwards them to router C. Router C learns a route to
172.16.0.0 via IBGP; therefore, router C forwards the packets
to router D. Router D forwards the packets to router B. Router
B forwards the packets to router F for network 172.16.0.0. In
modern autonomous systems, because the size of the Internet
routing table is large, redistributing from BGP into an IGP is
not scalable. Therefore, most modern autonomous systems run
full mesh IBGP and do not require synchronization. Advanced BGP
configuration methods, for example, using route reflectors and
confederations, reduce the full mesh requirements.
Content 6.3 Configuring BGP
6.3.14 BGP Configuration Example Figure displays
another BGP example. Figure displays the configuration for
router B. The first two commands under the router bgp
65000 command establish that router B has the following two
BGP neighbors: - Router A in AS 64520
- Router C
in AS 65000
From the perspective of router B, router
A is an EBGP neighbor, and router C is an IBGP neighbor. The
neighbor statement on router B for router A is pointing at the
directly connected IP address to reach the EBGP neighbor,
router A. However, the neighbor statement on router B points to
the loopback interface of router C, because router B has
multiple paths to reach router C. If router B pointed at the
192.168.3.2 IP address of router C and that interface went
down, router B would be unable to reestablish the BGP session
until the link came back up. By pointing to the loopback
interface of router C instead, the link stays established as
long as any path to router C is available. Router C should also
point to the loopback address of router B in its
configuration. Line 4 notifies router B to always use its
loopback 0 address, 192.168.2.1, as the source IP address when
sending an update to router C, 192.168.2.2. In line 5, router B
changes the next-hop address for networks that are reachable
through it. The default next-hop setting for networks from AS
64520 is IP address 10.1.1.2. With this next-hop-self
command, router B sets the next-hop address to the source IP
address of the routing update, which is the router B loopback 0
interface, as set by the update-source command. Lines 6
and 7 notify BGP about which networks to advertise. Line 6
contains a subnet of a class B address using the mask
option. Lines 7 and 8 have two network statements for the two
class C networks that connect routers B and C. The default mask
is 255.255.255.0, so you do not need to include it in the
command. In line 9, synchronization is disabled. If router A is
advertising 172.20.0.0 in BGP, router B receives that route and
advertises it to router C. Since synchronization is off, router
C can use this route. If router C had EBGP neighbors of its own
and router B wanted to use router C as the path to those
networks, synchronization on router B would also need to be
off. In this network, synchronization can be off because all
the routers within the autonomous system are running IBGP.
Content 6.4 Advanced BGP Configuration
and Verification 6.4.1 BGP Neighbor
States The BGP neighbor negotiation process proceeds
through various states. These steps can be described in terms
of a finite-state machine (FSM). An FSM is a set of possible
states something can go through, what events causes those
states, and what events result from those states. Figure
presents the BGP FSM, which includes the states and some of the
message events that cause them. After you have entered the
neighbor command, BGP takes the IP address that is