BGP NEXT HOP ATTRIBUTE and RULES

Consider the below diagram:

BGP NEXT-HOP ATTRIBUTE – Rule 1

Next-Hop for locally originated routes is 0.0.0.0 in an AS. For example, Next-Hop for R2’s local prefix 9.9.0.2/32 is 0.0.0.0R2#show ip bgp | i 9.9.0.2BGP table version is 8, local router ID is 9.9.0.2*> 9.9.0.2/32    0.0.0.0    0   32768     i

BGP NEXT-HOP ATTRIBUTE – Rule 2

BGP next hop doesn’t change for iBGP peers. For example, in AS 200, for prefix 9.9.0.1/32 BGP next-hop points to external BGP peer address 9.9.12.1(default behavior) and BGP next-hop doesn’t change for all iBGP peers in that AS. We have created full mesh peering in AS 200 (.i.e. Neighborship b/w R2-R3 and R2-R4 on loopback address).For example, Next-Hop for 9.9.0.1/32 on R1 shows to be 9.9.12.1 (R1’s eBGP Peer IP address).The Next-Hop will remain same on R4.R1#show ip bgp | i 9.9.0.1

*> 9.9.0.1/32    9.9.12.1    0   0    100  i

R4#show ip bgp | i 9.9.0.1

*> 9.9.0.1/32    9.9.12.1    0   0    100  i


BGP NEXT-HOP ATTRIBUTE – Rule 3

If we don’t advertise 9.9.12.0/24 in BGP on R1 and R2, the prefix 9.9.0.1/32 will become unreachable on R3 and R4 as the next-hop 9.9.12.1 becomes unreachable. Output from R4:R4#show ip bgp | i 9.9.0.1* i 9.9.0.1/32    9.9.12.1     0   100   0    100 iR4#ping 9.9.12.1Type escape sequence to abort.Sending 5, 100-byte ICMP Echos to 9.9.12.1, timeout is 2 seconds:…..

Success rate is 0 percent (0/5)

Solution to this problem is “Next-Hop-Self”.Configure neighbors R3 and R4 with “next-hop-self” command.  With this, R2 will not advertise 9.9.12.1 as next-hop for prefix 9.9.0.1/32 to R3 and R4,  but will advertise its own loopback address 9.9.0.2.R2(config)#router bgp 100R2(config-router)#neighbor 9.9.0.3 next-hop-selfR2(config-router)#neighbor 9.9.0.4 next-hop-selfNow the prefix 9.9.0.1/32 becomes reachable. See the difference in Next-Hops for prefix 9.9.0.1/32 given in scenario 3 and  next-hop given below from R4.R4#sh ip bgp | i 9.9.0.1*>i 9.9.0.1/32   9.9.0.2    0    100   0    100    i

BGP NEXT-HOP ATTRIBUTE – Rule 5

For iBGP neighborships formed on Loopback IPs, BGP next-hop points to loopback interface of IBGP peer if next-hop-self feature is configured with the peering.

BGP NEXT-HOP ATTRIBUTE – Rule 6

Route Reflectors doesn’t change the next-hop of the advertised prefix. They only act as the router copiers.

BGP NEXT-HOP ATTRIBUTE – Rule 7

Next-Hop only changes at eBGP peering. Next Hop will change when prefix is advertised from AS 200 (R4) to AS500 (R5). Please see the output from R5 for prefix 9.9.0.1/32.For example:R5#show ip bgp | i 9.9.0.1

*> 9.9.0.1/32    9.9.45.4    0     200  100     i

Click Here for other useful BGP articles