Networking · Topic 6 of 8
Troubleshooting IS-IS, OSPF and BGP
Troubleshoot IS-IS, OSPF and BGP neighbour adjacency and route advertisement with a step by step method, state meanings and key show commands.
- 5 min
- Check the adjacency or session first, then the route exchange.
- OSPF stuck in ExStart or Exchange commonly points to an MTU mismatch.
- OSPF neighbours must match area, timers, authentication and stub flags.
What it is
Troubleshooting a routing protocol means finding out why neighbours do not form or why a route does not appear.
There are two separate questions. First, is the adjacency or session up? Second, if it is up, is the route being sent, accepted and installed?
Work through them in this order, because a route cannot flow over a session that is down.
How it works
Check one layer at a time, from the link upwards, and use the protocol state to point at the cause.
Neighbour adjacency: IS-IS
Start with show isis neighbors and look at the state.
RP/0/RP0/CPU0:R1# show isis neighbors
RP/0/RP0/CPU0:R1# show isis interface
RP/0/RP0/CPU0:R1# show isis adjacency
Common causes when an adjacency is missing or stuck:
- Level mismatch, for example one side level 1 only and the other level 2 only.
- Different area addresses on a level 1 link.
- Duplicate system ID on two routers.
- Authentication key mismatch.
- No common subnet for IPv4, or an MTU problem that stops large hellos.
- The interface is not enabled in the IS-IS process, or is set passive.
Neighbour adjacency: OSPF
The state tells you where it stopped.
| State | Meaning | Check |
|---|---|---|
| Init | Hellos received, but not seen yourself in them | Timers, area, ACL, one way traffic |
| 2-Way | Normal for DROther routers | Nothing, unless a Full is expected |
| ExStart or Exchange | Stuck in database exchange | MTU mismatch |
| Full | Adjacent | Nothing |
RP/0/RP0/CPU0:R1# show ospf neighbor
RP/0/RP0/CPU0:R1# show ospf interface
On IOS XE the commands start with show ip ospf. Also check area ID, hello and dead timers, authentication, stub flags, subnet mask and router ID.
Neighbour session: BGP
The BGP state names are Idle, Connect, Active, OpenSent, OpenConfirm and Established.
RP/0/RP0/CPU0:R1# show bgp summary
RP/0/RP0/CPU0:R1# show bgp neighbors 192.0.2.2
| State | Likely cause |
|---|---|
| Idle | Session not started, a missing route to the peer, or a policy that holds it down |
| Active | The TCP connection is failing, for example by ACL, wrong address or no route |
| OpenSent or OpenConfirm | Open message problems, such as a wrong AS number |
| Established | Session is up |
Check reachability of the neighbour address, the remote AS number, the update-source for iBGP, the TTL for multihop eBGP, and the password. A router that filters TCP port 179 will also keep a session down. The neighbour output records the last error received.
Route advertisement: IS-IS and OSPF
If the neighbour is up and a route is missing, follow the route from where it starts.
- Is the interface enabled for the protocol, and is the prefix in the local table?
- Is the passive setting hiding an interface that should form an adjacency?
- In IS-IS, are the metric styles the same, and does the level carry the route?
- In OSPF, does the area type block the LSA, for example a stub area and an external route?
- Is a summary hiding the specific prefix, or a filter removing it?
RP/0/RP0/CPU0:R1# show isis database
RP/0/RP0/CPU0:R1# show ospf database
RP/0/RP0/CPU0:R1# show route 10.1.1.0/24
Route advertisement: BGP
In BGP, use the sent and received views for a neighbour.
RP/0/RP0/CPU0:R1# show bgp ipv4 unicast neighbors 192.0.2.2 advertised-routes
RP/0/RP0/CPU0:R1# show bgp ipv4 unicast 10.1.1.0/24
R1# show ip bgp neighbors 192.0.2.2 advertised-routes
The first two commands are IOS XR, and the last is IOS XE.
Typical causes of a missing BGP route:
- The
networkstatement does not match a route in the table. - A route policy or route map drops it, including the missing policy on XR eBGP.
- The address family is not activated or not negotiated.
- The next hop is unreachable, so the path is not valid.
- A prefix limit was exceeded, and the neighbour was shut down.
What to remember for the exam
Seven facts cover most questions on this topic.
- Check the adjacency or session first, then the route exchange.
- OSPF stuck in ExStart or Exchange commonly points to an MTU mismatch.
- OSPF neighbours must match area, timers, authentication and stub flags.
- IS-IS adjacency needs a matching level, and the same area at level 1.
- BGP Active means the TCP connection is failing, and Idle means the session is not starting.
show bgp neighborsshows the state and the last error.- A missing BGP route is often a
networkmismatch, a policy, an inactive address family, or an unreachable next hop.
Trace a missing route from the origin router towards the far end, and stop at the first router that does not have it.
Common mistakes
These four mistakes appear often.
Starting at the routing table. If the session is down, the table will be empty for a simple reason.
Reading Active as working. In BGP, Active means the router is still trying to connect.
Overlooking passive interfaces. A passive interface advertises its prefix but forms no adjacency.
Ignoring the policy on a route that is received. The route may arrive and then be filtered before it reaches the table.
Debug commands on a busy provider router can overload the CPU. Prefer show commands, and limit any debug to one neighbour.
Check yourself
Work through these three questions.
What does an OSPF neighbour stuck in ExStart suggest?
It suggests an MTU mismatch between the two neighbours.
What does the BGP Active state mean?
The router is trying to open the TCP connection and it is failing, so check reachability and filters.
Where do you look first when a BGP route is missing at the far end?
Trace it from the origin router, and check the
networkstatement, any policy, the address family and the next hop.
Topic 6 of 8 in Networking
Test yourself on Networking
The full Cisco CCNP 350-501 SPCOR question bank has 738 questions, with timed practice exams and an explanation for every answer.
This study guide is independent and is not affiliated with, endorsed by, or sponsored by Cisco. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.