Troubleshooting

BGP Neighbour Stuck in Active or Idle

In BGP, Idle means the session has not started or keeps failing; Active means the router is trying to open a TCP connection and getting no answer. Neither means "working". The usual causes are no route to the peer, a wrong remote-AS, a blocked TCP port 179, or a missing update-source on a loopback peering.

What you see

R1# show ip bgp summary
Neighbor    V   AS  MsgRcvd MsgSent  TblVer  InQ OutQ Up/Down  State/PfxRcd
10.0.0.2    4  200        0       0       0    0    0 never     Active

Why it happens

BGP runs over TCP port 179, so before any BGP logic happens the two routers must be able to open a TCP session. Active literally means "actively trying and failing" — the far end is unreachable, not listening, or filtering.

Idle usually means the router has no route to the neighbour address at all, or the session was torn down and is backing off. When peering between loopbacks, both sides must use update-source, and eBGP peers need ebgp-multihop because loopbacks are more than one hop away.

How to confirm it

show ip bgp summary
show ip route 10.0.0.2
ping 10.0.0.2 source Loopback0
show tcp brief | include 179

Test reachability with the same source the BGP session uses. A successful ping from the wrong interface proves nothing.

The fix

router bgp 100
 neighbor 10.0.0.2 remote-as 200
 neighbor 10.0.0.2 update-source Loopback0
 neighbor 10.0.0.2 ebgp-multihop 2
!
! Make sure the peer address is actually routable
ip route 10.0.0.2 255.255.255.255 192.168.1.2

update-source must be configured on both routers, and each must have a route to the other's loopback. eBGP over loopbacks additionally needs ebgp-multihop.

How to stop it happening again

Confirm plain IP reachability between the exact peering addresses before configuring BGP at all. Most "BGP problems" are routing problems underneath.

Questions people ask

Is Active a good state in BGP?

No — it is one of the most misleading names in networking. Active means repeatedly attempting a TCP connection that is not succeeding. The healthy state is Established.

Why does my eBGP loopback peering fail?

Because eBGP defaults to a TTL of 1 and a loopback is two hops away. Add ebgp-multihop and update-source on both sides.

Related reading

Bgp For BeginnersBgp Path Selection ExplainedPort 179Bgp Interview Questions

Reading the fix is not the same as doing it

Every fault on this page can be broken and repaired on real Cisco routers and switches in our Ahmedabad lab — which is how it stops being theory. Come and see the rack before you pay anything.

Start your networking career with Attila Technologies

Hands-on Cisco training, real lab devices and placement support in Ahmedabad.