Introduction to eBGP
eBGP is a flavour of Border Gateway Protocol (BGP) used for communication between different autonomous systems (AS). eBGP functions as the protocol responsible for interconnection of networks from different organizations or the Internet. eBGP is used and implemented at the edge or border router that provides interconnectivity for two or more autonomous system.
In this post, we will discuss on how to troubleshoot indirectly connected eBGP Neighbors.
Example Scenario: Indirectly connected eBGP neighbors
As show in above diagram, two Routers need to form eBGP session through Loopback Interfaces.
Now, let’s verify the configuration;
Next, we issue command “show ip bgp summary” to verify BGP memory usage, BGP neighbors and the state of communication.
As per output of both Routers, state is showing “idle”. So, it could be due to one of following reason –
- Do we have route for indirectly connected neighbor Interface IP which we are going to use for neighbor session?
- By default, eBGP router uses TTL value 1, which means eBGP neighbors should be directly connected, but in our case neighbors are Non-Directly connected, so we need to change TTL values by using “ebgp-multihop” command.
- By default, BGP router use outgoing Interface IP address to make TCP session, so if we are going to use any other interface (like: In our example is Loopback 0) instead for outgoing interface to make neighbor relationship, then we need to specify Interface by using of Command “update-source”.
-To display all TCP transactions start of session, session errors use command “debug ip tcp transactions”
- Check if any ACL is blocking TCP port 179.
Related: What is eBGP Multihop In BGP?
So let’s first verify route for Neighbor loopback Interface IP on both routers –
As per output, both routers only know directly connected Interface, and both don’t have route for Neighbor Loopback.
Set static route or either we can use Dynamic routing for loopback Interface reachability.
Let’s verify loopback interfaces reachability;
As per output, now both routers have loopback interface reachability.
Increase eBGP TTL value, because Neighbors are not using directly connected interface IP.
We have set ebgp-multihop 2, let debug;
As per output, we can see Router2 is send TCP session using source IP of its own outgoing interface F0/0, so now we need change it.
Lets change eBGP source interface to make TCP session.
Now we can see BGP session is up;
Check if any ACL is blocking TCP port 179 and if so, disable the ACL or include statement to allow TCP port 179 traffic.