EBGP and EBGP Multihop

EBGP exchanges routing information between adjacent autonomous systems, whether they are peers (equal standing), upstreams (providers/carriers), or downstreams (customers/subscribers). This exchange occurs via network announcements, and the corresponding routes are referred to as prefixes or aggregates.

The routing software decides based on the ASN following the remote-as statement whether it is a remote AS (EBGP) or a local (IBGP) connection. EBGP neighbors need to be adjacent (directly connected); for IBGP, this is left to the underlying IGP. If the EBGP neighbor is several hops away, the ebgp-multihop neighbor command can satisfy this requirement. This is rather common because EBGP peering sessions are often configured loopback to loopback (recommended), which often results in at least a three-hop distance and improved availability. The ebgp-multihop statement is required on both neighbors.

As you will see, this setup is well suited for load balancing over two EBGP links; in fact, the underlying IGP or static routes perform the load balancing as long as Equal-Cost Multi-Path (ECMP) is supported by the network operating system. (See Figure 10-5 and Example 10-3 highlighted text.) Keep in mind that BGP "pseudo" load balancing at geographically distant egress/ingress points is a completely different and tricky matter (even an "art"). Example 10-3 also demonstrates the use of address aggregation for the example aggregate 192.168.0.0/22.

Example 10-3. EBGP Load-Sharing and EBGP-Multihop Setup

stanley-bgpd# show running-config

...

!

router bgp 300

 bgp router-id 192.168.40.245

 bgp dampening

 no synchronization

 network 192.168.40.0/24

 neighbor 192.168.3.245 remote-as 400

 neighbor 192.168.3.245 description AS-400

 neighbor 192.168.3.245 ebgp-multihop 3

 neighbor 192.168.3.245 update-source lo1

 neighbor 192.168.3.245 soft-reconfiguration inbound

 neighbor 192.168.3.245 next-hop-self

!

ip route 192.168.0.0/22 192.168.40.250

ip route 192.168.0.0/22 192.168.40.254

...



oliver-bgpd# show running-config

...

!

router bgp 400

 bgp router-id 192.168.3.245

 bgp dampening

 no synchronization

 network 192.168.0.0/22

 neighbor 192.168.40.245 remote-as 300

 neighbor 192.168.40.245 description AS-300

 neighbor 192.168.40.245 ebgp-multihop 3

 neighbor 192.168.40.245 update-source lo1

 neighbor 192.168.40.245 soft-reconfiguration inbound

 neighbor 192.168.40.245 next-hop-self

!

ip route 192.168.40.0/24 192.168.40.249

ip route 192.168.40.0/24 192.168.40.253

...


Figure 10-5. EBGP Load-Sharing and EBGP Multihop Setup

[View full size image]