Introduction to eBGP
eBGP is a flavour of Border Gateway Protocol (BGP) used for communication between totally different autonomous programs (AS). eBGP features because the protocol accountable for interconnection of networks from totally different organizations or the Web. eBGP is used and carried out on the edge or border router that gives interconnectivity for 2 or extra autonomous system.
On this submit, we’ll focus on on the best way to troubleshoot not directly linked eBGP Neighbors.
Instance Situation: Not directly linked eBGP neighbors
As present in above diagram, two Routers must type eBGP session by Loopback Interfaces.
Now, let’s confirm the configuration;
R1
Router bgp 65001
bgp log-neighbor-changes
Neighbor 20.20.20.1 remote-as 65002
R2
Router bgp 65002
bgp log-neighbor-changes
Neighbor 10.10.10.1 remote-as 65001
Subsequent, we difficulty command “present ip bgp abstract” to confirm BGP reminiscence utilization, BGP neighbors and the state of communication.
BGP router identifier 10.10.10.1, native AS quantity 65001
BGP desk model is 1, essential routing desk model 1
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
20.20.20.1 4 65002 0 0 1 0 0 by no means Idle
BGP router identifier 20.20.20.1, native AS quantity 65002
BGP desk model is 1, essential routing desk model 1
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
10.10.10.1 4 65001 0 0 1 0 0 by no means Idle
As per output of each Routers, state is displaying “idle”. So, it may very well be on account of considered one of following cause –
- Do we’ve got route for not directly linked neighbor Interface IP which we’re going to use for neighbor session?
- By default, eBGP router makes use of TTL worth 1, which suggests eBGP neighbors must be instantly linked, however in our case neighbors are Non-Straight linked, so we have to change TTL values by utilizing “ebgp-multihop” command.
- By default, BGP router use outgoing Interface IP deal with to make TCP session, so if we’re going to use another interface (like: In our instance is Loopback 0) as an alternative for outgoing interface to make neighbor relationship, then we have to specify Interface by utilizing of Command “update-source”.
-To show all TCP transactions begin of session, session errors use command “debug ip tcp transactions”
- Test if any ACL is obstructing TCP port 179.
Associated: What’s eBGP Multihop In BGP?
So let’s first confirm route for Neighbor loopback Interface IP on each routers –
C 192.168.10.0/30 is instantly linked, Ethernet0/0
C 10.10.10.0/24 is instantly linked, Loopback0
C 192.168.10.0/30 is instantly linked, Ethernet0/0
C 20.20.20.0/24 is instantly linked, Loopback0
As per output, each routers solely know instantly linked Interface, and each don’t have route for Neighbor Loopback.
Step1:
Set static route or both we are able to use Dynamic routing for loopback Interface reachability.
Router2(config)#ip route 10.10.10.0 255.255.255.0 192.168.10.1
Let’s confirm loopback interfaces reachability;
Kind escape sequence to abort.
Sending 5, 100-byte ICMP Echos to twenty.20.20.1, timeout is 2 seconds:
Packet despatched with a supply deal with of 10.10.10.1
!!!!!
Success price is 100% (5/5), round-trip min/avg/max = 2/4/6 ms
As per output, now each routers have loopback interface reachability.
Step2:
Enhance eBGP TTL worth, as a result of Neighbors will not be utilizing instantly linked interface IP.
Router1(config-router)#neighbor 20.20.20.1 ebgp-multihop 2
Router2(config-router)#neighbor 10.10.10.1 ebgp-multihop 2
We’ve set ebgp-multihop 2, let debug;
Might 1 13:26:20.837: Reserved port 0 in Transport Port Agent for TCP IP kind 0
Might 1 13:26:20.837: TCP: connection try and port 179
Might 1 13:26:20.837: TCP: sending RST, seq 0, ack 2895227812
Might 1 13:26:20.837: TCP: despatched RST to 192.168.10.2:51878 from 10.10.10.1:179
Might 1 13:26:20.839: Launched port 0 in Transport Port Agent for TCP IP kind 0 delay 240000
Might 1 13:26:20.839: TCP0: state was LISTEN -> CLOSED [0 -> UNKNOWN(0)]
Might 1 13:26:20.905: TCB 0xA2A3E5E0 destroyed
As per output, we are able to see Router2 is ship TCP session utilizing supply IP of its personal outgoing interface F0/0, so now we’d like change it.
Step3:
Lets change eBGP supply interface to make TCP session.
Router2(config-router)#neighbor 10.10.10.1 update-source loopback 0
Now we are able to see BGP session is up;
%BGP-5-ADJCHANGE: neighbor 20.20.20.1 Up
Router2#
%BGP-5-ADJCHANGE: neighbor 10.10.10.1 Up
Step4:
Test if any ACL is obstructing TCP port 179 and in that case, disable the ACL or embody assertion to permit TCP port 179 site visitors.