Carry diagnostics through one DNS exchange at a time
03A query advertises EDNS with OPT. Responses may contain several EDE options inside one OPT record; forwarding diagnostic information and managing response size need their own decisions.
Separate size case: 400+200=600 octets exceeds a 512-octet DNS payload budget. Following the recommendations, drop EDE, keep the 400 other octets, and set TC=1. This recommended truncation flag is not strengthened into a universal MUST.
Source for this drawing: RFC 8914 · Read RFC section 3 ↗
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.
Terms in this drawing
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
Accept multiple options, preserve provenance, and prioritize ordinary response data.
- A query with OPT can receive EDE; a separate client EDE opt-in is not required here. Senders MAY include more than one EDE option; receivers MUST accept them, without necessarily acting on them.
- Whether a resolver or forwarder passes EDE information to its client is implementation dependent. It MAY omit information or create new EDE options; when doing so the source SHOULD be attributed in EXTRA-TEXT.
- If a response exceeds the requester’s UDP payload limit, servers SHOULD drop EDE options before other data and SHOULD set the TC truncation flag when doing so. They SHOULD avoid lengthy EXTRA-TEXT.
- OPT is per-message metadata, not cacheable answer data (RFC 6891 §6.1.1). Regenerating EDE information is different from blindly forwarding an entire OPT record. EDE does not change ordinary DNS processing or caching permissions.
Each state is a separate example. The size arithmetic uses a fictional 512-octet DNS UDP payload budget, 400 other DNS octets and 200 EDE octets. No IP/UDP header bytes are included. If other data still exceeds the limit after removing EDE, additional DNS handling remains necessary.
Read the RFC section ↗