How to Diagnose an OSPF Adjacency From a Packet Capture
An OSPF neighbor that won't reach Full is usually one of a few problems — and the capture shows which. Here's how to read the adjacency straight from the packets.
Read articleYou capture a BGP session and see the OPEN — then nothing. Is the peer down, or did you just miss the rest? Here's how to read it without jumping to conclusions.
Key takeaways
A healthy BGP session has a recognisable shape on the wire. Two speakers exchange OPEN messages to agree on versions, AS numbers, hold timers and capabilities. They confirm with KEEPALIVEs, then exchange UPDATEs carrying prefixes, paths and attributes. KEEPALIVEs continue at the negotiated interval to hold the session up. A NOTIFICATION means one side is tearing the session down, and it carries a reason.
Because that sequence is so predictable, the interesting question in most BGP captures is simply: how far did it get? An OPEN followed by KEEPALIVEs and UPDATEs is an established, productive session. An OPEN followed by a NOTIFICATION is a session that reset — and the NOTIFICATION tells you why. And an OPEN followed by nothing is the case that trips people up.
An open-only result means exactly one thing: the capture contains OPEN evidence but no later session activity for that peer. It is tempting to read that as “the session never came up” — but the capture can be open-only for two very different reasons, and they lead to opposite conclusions.
A few checks quickly separate a real failure from a capture artefact:
Calling an open-only capture a “peer failure” when the session was actually healthy sends an investigation in the wrong direction and can escalate an incident that isn't real. Calling a real failure a “capture artefact” does the opposite. The whole point of reading BGP from evidence is to keep those two apart and attach a confidence level to whichever you conclude.
So the good habit is to state what the packets show, note that it's open-only, and record the reason you believe it's a real failure or a capture limitation — with the frames that support it. That's a finding the next engineer can trust.
It means the capture contains a BGP OPEN message but no later session activity (no KEEPALIVEs or UPDATEs) for that peer. It does not prove the peer failed — the session may have been healthy and simply captured outside its activity, or the capture may have missed the rest. Treat it as a lead and confirm.
Look for a NOTIFICATION message, which carries a structured reason for the reset or failed establishment. Check whether the capture window was long enough to see a keepalive interval and whether it was placed to see both directions. If data-plane traffic used prefixes that peer would announce, the session was likely up and the capture just missed it.
OPEN messages negotiate the session (versions, AS numbers, hold timer, capabilities), KEEPALIVEs confirm and hold it up at the negotiated interval, and UPDATEs carry prefixes, AS paths and attributes. A NOTIFICATION signals that one side is tearing the session down and includes the reason.