Internet-Draft Resinfo DNSSEC and DNS64 November 2024
Bortzmeyer & Obser Expires 11 May 2025 [Page]
Workgroup:
Internet Engineering Task Force
Internet-Draft:
draft-bortzmeyer-add-resinfo-dnssecval-dns64-01
Published:
Intended Status:
Informational
Expires:
Authors:
S. Bortzmeyer
Afnic
F. Obser
OpenBSD

Two DNS Resolver Information Keys for DNSSEC and DNS64

Abstract

This document specifies two DNS Resolver Information Keys (RFC 9606) for DNSSEC validation capability, "dnssecval" and DNS64 synthesis, "dns64".

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 11 May 2025.

Table of Contents

1. Introduction

RFC 9606 specifies a DNS resource record (RR) type RESINFO to allow resolvers to publish information about their capabilities and policies. This information is encoded as {key, value} pairs, with each information is unambiguously identified with a key. Keys are maintained in an IANA registry. This specification adds two new keys.

The first one indicates that the resolver validates with DNSSEC [RFC4033][RFC4034][RFC4035]. Such key may be used, for example, by a DNS client to prefer resolvers that enable DNSSEC validation.

The second key is used for DNS64. DNS64 [RFC6147] is performed by a DNS resolver together with NAT64 [RFC6146] to allow an IPv6-only client to initiate communications by name to an IPv4-only server. The new key can be used to inform DNS clients that DNS64 is performed by the DNS resolver.

Note that, per the rules for the keys defined in Section 6.4 of [RFC6763] if there is no '=' in a key, then it is a boolean attribute, simply identified as being present, with no value. The two keys are therefore simple booleans.

1.1. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

2. The key "dnssecval"

The name of the key is "dnssecval", for "DNSSEC validating [resolver]". The presence of this key indicates that the DNS resolver validates all answers with DNSSEC [RFC4033] [RFC4034] [RFC4035].

A resolver that announces this capability in a RESINFO record MAY add DNSSEC-specific EDE (Extended DNS Error Codes, [RFC8914]) to the value of the "exterr" key, e.g., "Unsupported DNSKEY Algorithm", "Unsupported DS Digest Type", and "DNSSEC Bogus". Refer to the "Extended DNS Error Codes" registry for a definitive list of these EDEs.

3. The key "dns64"

The name of the key is simply "dns64". The presence of this key indicates that the DNS resolver performs address synthesis. A resolver which supports [RFC9606] SHOULD add the dns64 key if it performs DNS64 [RFC6147] address synthesis.

4. IANA Considerations

This document requests IANA to add the key "dnssecval", with the explanation text "The presence of the key name indicates that DNSSEC validation is enabled", and a reference to this document to the registry "DNS Resolver Information Keys" under the "Domain Name System (DNS) Parameters" registry group.

This document requests IANA to add the key "dns64", with the explanation text "The presence of the key indicates that DNS64 address synthesis is performed", and a reference to this document to the registry "DNS Resolver Information Keys" under the "Domain Name System (DNS) Parameters" registry group.

Table 1
Name Description Reference
dnssecval The presence of the key name indicates that DNSSEC validation is enabled. RFC EDITOR: replace : This_Document
dns64 The presence of the key indicates that DNS64 address synthesis is performed RFC EDITOR: replace : This_Document

5. Security Considerations

DNSSEC is a very important tool for the security of the DNS. Therefore it is important for users to know in advance whether the resolver they consider supports DNSSEC. It would be better to assume that every resolver validates (thus rendering this document useless) but it is not the case today.

Using the RESINFO mechanism solely to inform clients about the presence of DNS64 without conveying any prefix information avoids the security problems of [RFC7050].

As with any information published in the DNS, the keys in the RESINFO may be wrong or outdated. They should be regarded with care. The security considerations discussed in Section 7 of [RFC9606] apply.

6. References

6.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC6763]
Cheshire, S. and M. Krochmal, "DNS-Based Service Discovery", RFC 6763, DOI 10.17487/RFC6763, , <https://www.rfc-editor.org/info/rfc6763>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.
[RFC9606]
Reddy.K, T. and M. Boucadair, "DNS Resolver Information", RFC 9606, DOI 10.17487/RFC9606, , <https://www.rfc-editor.org/info/rfc9606>.

6.2. Informative References

[RFC4033]
Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "DNS Security Introduction and Requirements", RFC 4033, DOI 10.17487/RFC4033, , <https://www.rfc-editor.org/info/rfc4033>.
[RFC4034]
Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Resource Records for the DNS Security Extensions", RFC 4034, DOI 10.17487/RFC4034, , <https://www.rfc-editor.org/info/rfc4034>.
[RFC4035]
Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Protocol Modifications for the DNS Security Extensions", RFC 4035, DOI 10.17487/RFC4035, , <https://www.rfc-editor.org/info/rfc4035>.
[RFC6146]
Bagnulo, M., Matthews, P., and I. van Beijnum, "Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers", RFC 6146, DOI 10.17487/RFC6146, , <https://www.rfc-editor.org/info/rfc6146>.
[RFC6147]
Bagnulo, M., Sullivan, A., Matthews, P., and I. van Beijnum, "DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers", RFC 6147, DOI 10.17487/RFC6147, , <https://www.rfc-editor.org/info/rfc6147>.
[RFC7050]
Savolainen, T., Korhonen, J., and D. Wing, "Discovery of the IPv6 Prefix Used for IPv6 Address Synthesis", RFC 7050, DOI 10.17487/RFC7050, , <https://www.rfc-editor.org/info/rfc7050>.
[RFC8914]
Kumari, W., Hunt, E., Arends, R., Hardaker, W., and D. Lawrence, "Extended DNS Errors", RFC 8914, DOI 10.17487/RFC8914, , <https://www.rfc-editor.org/info/rfc8914>.

Appendix A. Discussions and alternatives

To be deleted before publication.

It has been proposed to turn "dnssecval" from a boolean into a key with value ([RFC9606], section 4) to indicate different ways to do DNSSEC validation. For instance, the PowerDNS resolver has several levels of validation, see https://doc.powerdns.com/recursor/dnssec.html. At the present stage, it is the opinion of the authors that such detailed information is both difficult to standardize (different resolvers have different knobs to turn) and difficult o use since the typical consumer will have difficulty understanding them.

This draft does not suggest what to do with the information provided, it is up to the consumer. This is inline with [RFC9606], which goal is to provide information, not guidance.

Acknowledgements

Original idea by Marco Davids.

Authors' Addresses

Stéphane Bortzmeyer
Afnic
7 avenue du 8 mai 1945
78280 Guyancourt
France
Florian Obser
OpenBSD