Visual RFC.
ALL RFCs / RFC 8020
Read the RFC ↗
RFC 8020 / NXDOMAIN CUT

Attach the cut to the denied name

03

Aliases and SOA records make it unsafe to assume that the original question or zone apex is the denied node.

RFC 8020 · § 2EXAMPLE
4 / 4
Attach the cut to the denied nameAn NXDOMAIN at a.gone.example covers its own descendants but not sibling b.gone.example. Their parent gone.example cannot be assumed absent.Which name was actually denied?Cached denial: a.gone.example.New query: b.gone.example.Siblings share a parent, not this cutNormal resolution is still neededDo not invent absence of gone.example.RFC8020 · chapter 3 · state 4 · fictional examples
04
Resolve an uncovered sibling

A name sharing the parent is outside this cut; normal resolution is still needed.

Source for this drawing: RFC 8020 · Read RFC section 2 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

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

KEY POINT

Use the final denied name, never widen a cut from an SOA owner.

  • QNAME is the name in the question section. With CNAME or DNAME redirection, the denied name can differ: the NXDOMAIN refers to the end of the alias chain, not automatically the original QNAME. A CNAME maps one owner name to a target; DNAME redirects descendants. This guide’s concrete example uses CNAME only (§§1.1–2; RFC 6604 §§1,3).
  • In the selected chain www.example. CNAME gone.example., followed by NXDOMAIN, gone.example. is denied. www.example. still has the alias record. Cache the cut at the final name; do not mark the original alias owner nonexistent. RFC 6604 §3 requires the final response RCODE to reflect the last query cycle (MUST).
  • The SOA (Start of Authority) record accompanying a negative answer identifies the zone apex and carries negative-caching timing. Its owner is not the closest existing name. NXDOMAIN for a.gone.example. with SOA owner example. does not prove gone.example. or example. nonexistent (Appendix A).
  • If the first queried denied name is a.gone.example., a later b.gone.example. is a sibling, not a descendant of the denied node. The first NXDOMAIN does not cover it. The resolver may need normal resolution; it cannot invent a wider cut merely because a shared suffix or SOA looks convenient (§2, Appendix A).
  • The bounded helper follows a selected, explicitly ordered CNAME chain and rejects loops/broken links as local input errors. It does not implement DNAME rewriting, wildcard proofs or a complete DNS parser. Limits and error statuses are teaching choices, not new protocol requirements.
DETAILS

Fictional offline DNS examples. Trees show conceptual label relationships, not resolver storage requirements. Selected helpers are bounded cache-policy models; they do not send DNS packets, validate signatures, implement all DNS errors or configure a resolver.

Read the RFC section ↗

All chapters in RFC 8020

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 ↗