Visual RFC.
ALL RFCs / RFC 1034
Read the RFC ↗
RFC 1034 / EDGE CASES

Missing names & failures

08

A nonexistent name, a name without the requested type, and a temporary lookup failure communicate different things.

Related RFCs and changes

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

RFC 1034 · § 5.2.3EXAMPLE
4 / 4
Missing names & failuresSeparate response rows distinguish absence of a name, absence of a type, and temporary failure.missing.example.org.NXDOMAINName does not existexample.org. / MXNOERROR + no MXName exists; type absentUnreachable serverSERVFAIL / timeoutNo conclusion about existenceNegative cache: bounded absence, with SOA lifetime
04
Remember absence for a bounded time.

Modern negative-cache rules come from RFC 2308, not just the original optional design.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
WHAT CHANGED
RFC 1034 § 4.3.4RFC 2308 § 5

RFC 2308 specifies negative caching more precisely; its TTL is the smaller of the SOA TTL and SOA MINIMUM.

Read the updated RFC section ↗
KEY POINT

Do not turn uncertainty into absence.

  • A name error means the queried name does not exist.
  • An existing name can lack the requested record type without being a name error.
  • Temporary failures should be reported separately and not treated as proof of nonexistence.
DETAILS

RFC 1034 originally describes negative caching as optional. RFC 2308 substantially revises those rules; use the later specification for modern implementations.

Read the RFC section ↗

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

Privacy
All chapters in this RFC
  1. The name tree
  2. Resource records
  3. Delegation & glue
  4. Iterative resolution
  5. Recursive resolution
  6. Caches & TTL
  7. Aliases
  8. Missing names & failures
  9. Wildcard synthesis
  10. Zone maintenance
  11. Reverse lookups
  12. Transport & historical scope

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

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

RFC status and corrections ↗