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.