Internet-Draft dns-oops March 2023
Almond, et al. Expires 30 September 2023 [Page]
Workgroup:
DNSOP Working Group
Internet-Draft:
draft-grubto-dnsop-dns-out-of-protocol-signalling-01
Published:
Intended Status:
Standards Track
Expires:
Authors:
C. Almond
ISC
P. van Dijk
PowerDNS
M.W. Groeneweg
SIDN
S.W.J. Ubbink
SIDN
D. Daniel
CZ.NIC
W. Toorop
NLnet Labs

DNS Out Of Protocol Signalling

Abstract

This document seeks to specify a method for name servers to signal programs outside of the name server software, and which are not necessarily involved with the DNS protocol, about conditions that can arise within the name server. These signals can be used to invoke actions in areas that help provide the DNS service, such as routing.

Currently this document serves as a requirements document to come to a signalling mechanism that will suit the use cases best. Part of that effort is to assemble a list of conditions with potential associated out of DNS protocol actions, as well as inventory and assess existing signalling mechanisms for suitability.

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 30 September 2023.

Table of Contents

1. Introduction

Operators of name servers can benefit from automatically taking action upon certain conditions in the name server software. Some conditions can be monitored from outside the name server software, but for adequate and immediate action, the name server software can signal itself about the condition immediately when it occurs to invoke action by a listener for these signals.

An example of such a condition is when all zones, from a set served from an anycasted prefix, are loaded and ready to be served, with the associated automatic actions to only announce a prefix route from the point-of-presence where the name server is running, if all zones from the set are ready to be served, and to withdraw the prefix route if one of the zones cannot be served. This way queries for zones will only reach the point-of-presence if the name server software can answer those queries.

Operators of anycasted DNS authoritative services with diverse implementations will benefit from standardizing of the name server signalling, but before coming to a specification for the mechanism, this document will serve to inventorise the already available standardized and non-standardized signalling channels and assess them for usability for out of protocol signalling.

2. Terminology and Definitions

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.

3. Conditions to be signalled

This section served to collect a list of conditions for which actions outside of the DNS protocol may be interesting. It is by no means meant to be a complete list, but serves to inventorise the requirements for the signalling channel.

3.2. All zones are loaded and ready to serve

Action:

  • Start announcing the prefix on which these zones are served with BGP.

3.3. A zone is loaded and ready to serve

Action:

  • Start announcing the prefix on which this zone is served with BGP.

3.4. A zone is updated to a new version

Action:

  • Verify the zone content. Is it DNSSEC valid, does the ZONEMD validate.

3.5. A zone is (about to) expire

The period before expiration may be configurable. A value of 0 will emit the signal the moment the zone expires.

Action:

  • Stop the BGP announcement of the prefix on which the zone is served. It may be reannounced when the zone becomes available again (See Section 3.2).

3.6. DNSSEC signatures are (about to) expire

The period before expiration may be configurable. A value of 0 will emit the signal the DNSSEC signature expires.

Action:

  • Stop the BGP announcement of the prefix on which the zone is served. It may be reannounced when the zone becomes DNSSEC valid again (See Section 3.7).

3.7. DNSSEC signatures will no longer expire soon

Action:

  • Start announcing the prefix on which this zone is served with BGP.

3.8. Query rate is exceeding a threshold

Action:

  • Lengthen the AS path for the BGP announcement for a prefix, to demotivate the anycast node that receives all the queries.
  • Or if the query rate is indicating a denial of service attack, keep the BGP AS path short, to absorb the attack.

3.9. Query rate is below a threshold again

Action:

3.10. Extended DNS Error conditions

Action:

  • Dependent on the DNS Error condition

4. Requirements for signalling mechanisms and channels

The following requirements can be distilled from Section 3.

5. Existing signalling mechanisms and channels

What follows is a list of existing signalling mechanisms assessed on their suitability based on the requirements outlined in the previous paragraph.

6. Security and Privacy Considerations

Signalling MUST be performed in an authenticated and private manner.

7. Implementation Status

8. IANA Considerations

This document has no IANA actions

9. Acknowledgements

10. 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>.
[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>.

11. Informative References

[D-Bus]
Pennington, H., Carlsson, A., Larsson, A., Herzberg, S., McVittie, S., and D. Zeuthen, "D-Bus Specification", , <https://dbus.freedesktop.org/doc/dbus-specification.html>.
[I-D.ietf-dnsop-dns-error-reporting]
Arends, R. and M. Larson, "DNS Error Reporting", Work in Progress, Internet-Draft, draft-ietf-dnsop-dns-error-reporting-04, , <https://datatracker.ietf.org/doc/html/draft-ietf-dnsop-dns-error-reporting-04>.
[Knot-DNS-3.1.6]
CZ.NIC, "Knot DNS - Version 3.1.6", , <https://www.knot-dns.cz/2022-02-08-version-316.html>.
[RFC1996]
Vixie, P., "A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)", RFC 1996, DOI 10.17487/RFC1996, , <https://www.rfc-editor.org/info/rfc1996>.

Appendix A. Implementation Status

Note to the RFC Editor: please remove this entire appendix before publication.

Knot currently uses [D-Bus] for this.

Appendix B. Change History

Note to the RFC Editor: please remove this entire appendix before publication.

Initial version

Authors' Addresses

Cathy Almond
Internet Systems Consortium, Inc.
PO Box 360
Newmarket, NH 03857
United States of America
Peter van Dijk
PowerDNS
Den Haag
Netherlands
Marc Groeneweg
Stichting Internet Domeinregistratie Nederland
Postbus 5022
6802EA Arnhem
Netherlands
Stefan Ubbink
Stichting Internet Domeinregistratie Nederland
Postbus 5022
6802EA Arnhem
Netherlands
Daniel Salzman
CZ.NIC
Czechia
Willem Toorop
NLnet Labs
Science Park 400
1098 XH Amsterdam
Netherlands