Network Troubleshooting Guide

DNS Timeouts and SERVFAIL in a PCAP: Find the Cause

Slow or failing name lookups stall every application. How to find unanswered DNS queries and SERVFAIL answers in a packet capture, and who fixes them

When DNS Is the Slow Part

Before an application can connect, it has to resolve a name, and two DNS failures stall it in different ways. An unanswered query makes the client wait for its timeout, a second or more each time, then retry or try another resolver. A SERVFAIL answer comes back quickly but says the resolver could not complete the lookup, because its forwarders or the authoritative servers are unreachable, or DNSSEC validation failed.

Users rarely see the word DNS. They see some sites or internal systems that open after a pause, or not at all, while others work. Because the network carries the queries and the answers fine, the fault sits with the DNS server, and a capture shows which names fail and how.

What users notice

The first click on a site or an internal system hangs for seconds, or fails with "server not found", then sometimes works.

What a capture shows

Queries to the resolver that never get an answer, and answers with the SERVFAIL code for specific names.

What the PcapAI Report Shows

In the sample capture, two office laptops use the router at 192.168.10.1 as their DNS server. Most lookups are answered in milliseconds; a few names are not. PcapAI reports two problems and places both on the DNS server:

  • ✦A DNS server leaves queries unanswered: 12 of 120 queries got no answer, and the clients retried them 24 times. Each unanswered lookup costs the application a timeout of a second or more.
  • ✦A DNS server fails lookups (SERVFAIL): 12 of 84 answers were SERVFAIL, for two names, from both laptops.
  • ✦Why: unanswered queries stall every application that needs a name; SERVFAIL means the resolver could not complete the lookup, because its forwarders or the authoritative servers are unreachable, or DNSSEC validation failed.
  • ✦Who fixes it: the DNS administrator. The report asks them to check that the resolver is reachable on UDP and TCP port 53, its forwarders and its DNSSEC validation logs, and to give clients a second resolver.

The sample capture behind this page was built in a lab: every server uses a documentation address (RFC 5737) and a documentation name (RFC 2606), and the PDF is the unedited report PcapAI wrote for it.

How It Looks in a Capture (Check It Yourself)

In Wireshark, the first filter shows SERVFAIL answers, the second shows queries that never got a response, the third slow answers:

dns.flags.rcode == 2
dns.flags.response == 0 && !dns.response_in
dns.time > 0.5

From the command line, the names that fail with SERVFAIL and how often:

tshark -r capture.pcap -Y "dns.flags.rcode == 2" -T fields -e dns.qry.name | sort | uniq -c

When DNS Failures Count as a Problem

ProblemReported whenHigh when
Unanswered queriesAt least 3 unanswered, and at least 5% of 10 or more queries to one server20% or more go unanswered, or the server never answers
SERVFAIL answersAt least 3, and at least 2% of the server's answers20% or more of its answers

Common Causes of DNS Failures

  • ✦The resolver is overloaded or restarting, and drops queries.
  • ✦Its forwarders, or the path to them, are down, so it answers SERVFAIL or nothing.
  • ✦A firewall blocks DNS over TCP, so large answers fail.
  • ✦DNSSEC validation fails for a zone with broken signatures.
  • ✦Internal zones are missing on the resolver clients use, for example after a VPN or split-DNS change.

The report names the failing names and the resolver, which narrows these down to one or two.

From Capture to Fix

  1. Capture on a client while the slow or failing names are used, including the first lookup of each.
  2. Upload the capture: the free summary shows which DNS server fails and how.
  3. From a host you control, repeat the lookups read-only: dig @192.168.10.1 example.com, and for a SERVFAIL name, dig @192.168.10.1 name +cd. A name that resolves only with checking disabled fails DNSSEC validation.
  4. After the fix, capture again: the report's own check is that the failing names resolve with NOERROR and no queries go unanswered.

Frequently Asked Questions

What does SERVFAIL mean?

SERVFAIL is the answer a resolver sends when it could not complete a lookup: its forwarders or the authoritative servers did not answer, or the answer failed DNSSEC validation. The name may exist; this resolver could not get it.

Why are some DNS queries never answered?

The resolver may be overloaded or down, a firewall may drop UDP or TCP port 53 on the way, or the resolver may itself wait on an upstream server that never answers. The capture shows the queries leaving and nothing coming back, which separates this from a client problem.

Can the client side cause DNS failures too?

Yes, and the report checks for it: a client that sends internal names to a public DNS server, tries many search suffixes for one short name, or floods the resolver with queries. Those problems point at the client's settings instead of the DNS server.

Check your own capture

Capture the slow or failing lookups and upload them: the free summary shows in about two minutes which DNS server fails and how, and the $9 PDF adds the names, the counts and the fix for the DNS administrator.

Sample Report: Executive Summary

PcapAI sample troubleshooting report: an office DNS server leaves queries unanswered and returns SERVFAIL
Download Full PDF Report The full PDF, as a customer receives it. What every report contains →

Network slow or dropping connections?

Skip the manual Wireshark filters. Upload the capture: the free summary shows the problems in about two minutes, and the $9 PDF adds the affected hosts, the fault domain and the fix.

Prefer to work from your editor? You can also analyze PCAPs in Claude Desktop via our MCP server.