packet, the router looks up destination address in the routing table. The routing table lists the appropriate interface to get to the destination address. The address of this outbound interface is used as the source address of that packet by default. Consider what would happen if a neighboring router uses the loopback interface address in its neighbor command for this router, but the other neighboring router does not use the neighbor update-source command. When the neighboring router receives an update packet and looks at the source address of the packet, it sees that it has no neighbor relationship with that source address, so it discards the packet. BGP does not accept unsolicited updates. It must be aware of every neighboring router and have a neighbor statement for it. Multiple paths can exist to reach each neighbor when peering with IBGP neighboring routers. If the BGP router is using a neighbor address that is assigned to a specific interface on another router, and that interface goes down, the router pointing to this address loses its BGP session with that neighbor. If the router peers with the loopback interface instead of the other router, the loopback interface is always be available as long as the router itself does not fail. This peering arrangement adds resiliency to the IBGP sessions because the routers are not tied into a physical interface, which may go down for any number of reasons. To peer with the loopback of another internal neighbor, the first router points the neighbor statement at the loopback address of the other internal neighbor. Ensure that both routers have a route to the loopback address of the other neighbor in their routing table. Also ensure that both routers are announcing their loopback addresses into their local routing protocol. Example: Using Loopback Addresses with BGP
In Figure , router B has router A as an EBGP neighbor. The only reachable address for router B to use for a neighbor address in BGP is the directly connected address of 172.16.1.1. Router B has multiple paths to reach router C, an IBGP neighbor. All networks, including the IP network for the loopback interface of router C, can be reached from router B. Router B can reach these networks because routers B and C exchange EIGRP updates; routers B and A do not exchange EIGRP updates. The neighbor relationship between routers B and C is not tied to a physical interface because router B peers with the loopback interface on router C and uses its loopback address as the source IP address, and vice versa. If router B instead peered with 10.1.1.2 on router C and that interface went down, the BGP neighbor relationship would also go down. The neighbor update-source command should be used on both routers. If router B points to loopback address 3.3.3.3 of router C, and router C points at loopback address 2.2.2.2 of router B, and neither uses the neighbor update-source command, the BGP session between these routers does not start. Router B would send a BGP open packet to router C with the source IP address being either 10.1.1.1 or 10.2.2.1. Router C would review the source IP address and attempt to match it against its list of known neighbors. Router C would not find a match and would not respond to the open message from router B.
Content 6.3 Configuring BGP 6.3.7 EBGP Peering Issue When an EBGP router is peering with an external neighbor, the only address that it can reach without further configuration is the interface that is directly connected to that EBGP router. Remember that internal routing information is not exchanged with external peers. Therefore, the router has to point to a directly connected address for that external neighbor. If a loopback interface is used instead of the directly connected interface, additional configuration is required. To allow the router to accept and attempt BGP connections to external peers residing on networks that are not directly connected, you must configure the neighbor ip-address ebgp-multihop [ttl] router configuration command. Figure displays the command parameters. EBGP peers are usually only one hop away from each other. The neighbor ebgp-multihop command increases the default hop value to allow routes to the EBGP loopback address with a TTL value greater than 1. If a TTL value is not specified, the router uses 255 (the default). This command is of value when redundant paths exist between EBGP neighbors.

Example: ebgp-multihop Command
In Figure , router A in AS 65102 has two paths to router B in AS 65101. If router A uses a single neighbor statement and points at 192.168.1.18 on router B of AS 65101 and that link goes down, there is no BGP session between these autonomous systems. As a result, no packets pass from one autonomous system to the next, even though another link exists. If router A instead uses two neighbor statements pointing at 192.168.1.18 and 192.168.1.34 on router B, it partially solves the problem. However, every BGP update that router A receives is sent to router B twice because there are two neighbor statements. As shown in the figure, router A instead points to the loopback address of router B and vice versa, and each router uses its loopback address as the source IP address for its BGP updates. Because an IGP is not used between autonomous systems, neither router can reach the loopback of the other router without assistance. Each router needs to use two static routes to inform BGP of the paths available to reach the loopback address of the other router. An EBGP neighbor address must be directly connected by default. The neighbor ebgp-multihop command must be used to change the default setting of BGP and inform BGP that this neighbor IP address is more than one hop away. In the figure, the command used on router A informs BGP that the neighbor address of 1.1.1.1 is two hops away. Note
BGP is not designed to perform load balancing. Paths are chosen because of policy, not based on bandwidth. BGP chooses only a single best path. Using the loopback addresses and the neighbor ebgp-multihop command as shown in this example allows load balancing and redundancy across the two paths between the autonomous systems.
Content 6.3 Configuring BGP 6.3.8 Next Hop Behavior The way in which BGP establishes an IBGP relationship is very different from the way that IGPs behave. The method that BGP uses to denote its next-hop address is also very different. BGP informs the next autonomous system about paths to other autonomous systems and the networks that those other autonomous systems own. BGP, like IGPs, is a hop-by-hop routing protocol. However, unlike IGPs, BGP routes from autonomous system to autonomous system, and the default next hop is the next autonomous system. An IBGP neighboring router that learns about a network outside of its autonomous systems sees, as the next-hop address, the entry point for the next autonomous systems along the path to reach the distant network. For EBGP, the default next hop is the IP address of the neighboring router that sent the update. For IBGP, the BGP protocol states that the next hop advertised by EBGP should be carried into IBGP. Example: Next-Hop Behavior
In Figure , router A advertises 172.16.0.0 to router B with a next hop of 10.10.10.3. Router B advertises 172.20.0.0 to router A with a next hop of 10.10.10.1. For IBGP, the BGP protocol states that the next hop advertised by EBGP should be carried into IBGP. Because of this rule, router B advertises 172.16.0.0 to its IBGP peer router C with a next hop of 10.10.10.3, the address of router A. Router C knows that the next hop to reach 172.16.0.0 is 10.10.10.3, not 172.20.10.1, as you might expect. Therefore, it is very important for router C to know how to reach the 10.10.10.0 subnet, either through an IGP or a static route. Otherwise, router C drops packets destined for 172.16.0.0 because it is not able to get to the next-hop address for that network. An IBGP neighboring router performs a