DNS

DNS 1 FORMERR vs 5 REFUSED

Both DNS 1 (FORMERR) and 5 (REFUSED) belong to the DNS Response Codes (RCODEs) category. 1 indicates that format error. The name server was unable to interpret the query due to a malformed DNS message. Meanwhile, 5 means that query refused. The name server refuses to perform the requested operation for policy reasons.

Description

Format error. The name server was unable to interpret the query due to a malformed DNS message.

When You See It

Your DNS client or library sent a query the server could not parse, often caused by a buggy resolver, corrupted packet, or unsupported EDNS options.

How to Fix

Check your DNS client or library version for known bugs. Capture the raw query with dig or Wireshark and verify it conforms to the DNS wire format.

Description

Query refused. The name server refuses to perform the requested operation for policy reasons.

When You See It

The server rejected your query due to access control — for example, a recursive resolver that only serves its own network, or a zone transfer blocked by ACL.

How to Fix

Check the server's allow-query, allow-recursion, or allow-transfer ACLs. If you are not authorized to use this resolver, switch to a public DNS service.

Key Differences

1.

DNS 1: Format error. The name server was unable to interpret the query due to a malformed DNS message.

2.

DNS 5: Query refused. The name server refuses to perform the requested operation for policy reasons.

3.

You encounter 1 when your DNS client or library sent a query the server could not parse, often caused by a buggy resolver, corrupted packet, or unsupported EDNS options.

4.

You encounter 5 when the server rejected your query due to access control — for example, a recursive resolver that only serves its own network, or a zone transfer blocked by ACL.

When to Use Which

For 1 (FORMERR): Check your DNS client or library version for known bugs. Capture the raw query with dig or Wireshark and verify it conforms to the DNS wire format. For 5 (REFUSED): Check the server's allow-query, allow-recursion, or allow-transfer ACLs. If you are not authorized to use this resolver, switch to a public DNS service.

Learn More