Internet Engineering Task Force (IETF) D. Eastlake 3rd
Request for Comments: 6604 Huawei
Updates: 1035, 2308, 2672 April 2012
Category: Standards Track
ISSN: 2070-1721
xNAME RCODE and Status Bits Clarification
Eastlake Standards Track [Page 1]
RFC 6604 xNAME RCODE Clarification April 2012
Table of Contents
1. Introduction
The Domain Name System (DNS) has long provided means, such as the CNAME (Canonical Name [RFC1035]) and DNAME [RFC2672] RRs (Resource Records), whereby a DNS query can be redirected to a different name. In particular, CNAME normally causes a query to its owner name to be redirected, while DNAME normally causes a query to any lower-level name to be redirected. There has been a proposal for another redirection RR. In addition, as specified in [RFC2672], redirection through a DNAME also results in the synthesis of a CNAME RR in the response. In this document, we will refer to all RRs causing such redirection as xNAME RRs.
Eastlake Standards Track [Page 2]
RFC 6604 xNAME RCODE Clarification April 2012 1.1. Conventions Used in This DocumentThe key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].
2. Restatement of Status Bits and What They Mean
There are two status bits returned in query responses for which a question could arise as to how, in the case of an xNAME chain, they relate to the first, possible intermediate, and/or last queries, as below. Note that the following is unchanged from [RFC1035] and [RFC4035]. The meaning of these bits is simply restated here for clarity, because of observations of released implementations that did not follow these meanings.
2.1. The Authoritative Answer Bit
The AA, or Authoritative Answer bit, in the DNS response header indicates that the answer returned is from a DNS server authoritative for the zone containing that answer. For an xNAME chain, this "authoritative" status could be different for each answer in that chain.
2.2. The Authentic Data Bit
The AD, or Authentic Data bit, indicates that the response returned is authentic according to the dictates of DNSSEC [RFC4035]. [RFC4035] unambiguously states that the AD bit is to be set in a DNS response header only if the DNSSEC-enabled server believes all RRs in the answer and authority sections of that response to be authentic. This specification of the AD bit has not been changed.
3. RCODE Clarification
The RCODE field in a DNS query response header is non-zero to indicate an error. Section 4.3.2 of [RFC1034] has a resolution algorithm that includes CNAME processing but has been found to be unclear concerning the ultimate setting of RCODE in the case of such redirection. Section 2.1 of [RFC2308] implies that the RCODE should be set based on the last query cycle in the case of an xNAME chain, but Section 2.2.1 of [RFC2308] says that some servers don't do that! When there is an xNAME chain, the RCODE field is set as follows:
Eastlake Standards Track [Page 3]
RFC 6604 xNAME RCODE Clarification April 2012
When an xNAME chain is followed, all but the last query cycle necessarily had no error. The RCODE in the ultimate DNS response MUST BE set based on the final query cycle leading to that response. If the xNAME chain was terminated by an error, it will be that error code. If the xNAME chain terminated without error, it will be zero.
4. Security Considerations
The AA header flag bit is not protected by DNSSEC [RFC4033]. To secure it, secure communications are needed between the querying resolver and the DNS server. Such security can be provided by DNS transaction security, either TSIG [RFC2845] or SIG(0) [RFC2931].5. References 5.1. Normative References[RFC1034] Mockapetris, P., "Domain names - concepts and
Eastlake Standards Track [Page 4]
RFC 6604 xNAME RCODE Clarification April 2012
[RFC2672] Crawford, M., "Non-Terminal DNS Name Redirection",
5.2. Informative References
[RFC2308] Andrews, M., "Negative Caching of DNS Queries (DNS