Visual RFC.
ALL RFCs / RFC 8484
Read the RFC ↗
RFC 8484 / PROTOCOL MECHANISMS

Read HTTP and DNS errors separately

03

HTTP status describes the HTTP exchange; DNS RCODE describes the embedded DNS result.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

RFC 8484 · § 4.2.1EXAMPLE
3 / 3
Read HTTP and DNS errors separatelyHTTP status describes the HTTP exchange; DNS RCODE describes the embedded DNS result.HTTP RESPONSEHTTP 200 OKDNS RCODE: NXDOMAINvalid negative DNS answerSeparate case: HTTP failure ≠ DNS NXDOMAINRead both HTTP status and embedded DNS result
03
Keep an HTTP transport failure separate from that valid DNS negative answer.

Keep an HTTP transport failure separate from that valid DNS negative answer.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

A valid DNS error response can be carried in a successful HTTP 2xx response.

  • A valid DNS error response can be carried in a successful HTTP 2xx response.
  • An HTTP failure is not itself a DNS NXDOMAIN result.
DETAILS

The drawing is a simplified worked example. Follow the linked RFC and its updates for implementation requirements.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. Choose the HTTPS resolver endpoint
  2. Send DNS using GET or POST
  3. Read HTTP and DNS errors separately
  4. Respect DNS TTL and HTTP cache age
  5. Understand who can still observe queries
RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗