| Internet-Draft | NTP Server Identifier | October 2026 |
| Grant & Venhoek | Expires 25 April 2027 | [Page] |
This document defines an extension field that gives operators of NTP services the ability to provide additional information about their servers to clients which request it.¶
This note is to be removed before publishing as an RFC.¶
Status information for this document may be found at https://datatracker.ietf.org/doc/draft-grant-ntp-server-identifier-extension/.¶
Discussion of this document takes place on the Network Time Protocols Working Group mailing list (mailto:ntp@ietf.org), which is archived at https://mailarchive.ietf.org/arch/browse/ntp/. Subscribe at https://www.ietf.org/mailman/listinfo/ntp/.¶
Source for this draft and an issue tracker can be found at https://github.com/signalsforgranted/draft-grant-ntp-server-identifier-extension.¶
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 25 April 2027.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
Operators of NTP services may choose to have system architectures which result in multiple servers responding for the same IP address. This is particularly notable in the case of deployments which use load balancing of UDP traffic, or the use of anycast IP addresses. In such situations, the server operator may want to provide an indication which actual server responded to a request. This information can be useful in identifying infrastructure, providing ongoing monitoring, and assisting in triaging faults or issues with services.¶
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.¶
Many operators use various methods to include diagnostic information about the network segment, datacentre location, region, or other details pertaining to their infrastructure in NTP responses with the NTP reference identifier most commonly being used.¶
The Server Identifier Extension Field contains the following structure, based on the general structure of an NTP extension field defined in [RFC5905]:¶
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = TBD | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ . . . Server Identifier . . . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The type which identifies the Server Identifier Extension Field. To be determined by IANA. (Draft implementations: 0xf101)¶
Length of the Server Identifier Extension Field. The length is in octets expressed as an unsigned 16-bit integer and it includes the header itself. Implementations SHALL keep the length of this extension field at less than 64 octets.¶
A UTF-8 encoded Unicode string containing information about the server. In requests, this field shall be filled with zeroes. The length of this field should be chosen such that the length requirements on extension fields from the NTP version in use are satisfied. If the string is shorter than the field, the sender SHALL pad the remainder of the field with zeroes. The identifier ends at the first zero octet or at the end of the field, whichever comes first.¶
To request the server identifier, a client includes a Server Identifier Extension Field in its request, long enough to hold the identifier it expects. Clients wishing to reliably receive the identifier should use the maximum permitted length.¶
On receiving a Server Identifier Extension Field, a server MAY choose to send its server identifier in a Server Identifier Extension Field with matching length to the one in the request. If the server's identifier doesn't fit within that length, the server should not include the extension field in its response.¶
Operators should note that NTP packets are not confidential and that revealing this information to clients may expose sensitive details about their network, services, or their configuration. Deployments not wishing to expose this data to clients should be configured to filter or ignore this extension on non-monitoring interfaces.¶
As the extension field in a response is never bigger than the one in the corresponding request (Section 4.1), this extension cannot increase the DDoS amplification risk of NTP.¶
The identifier sent in responses doesn't depend on the requested length, so varying the request length discloses no additional information. Operators concerned about enumeration of servers should consider limiting the extension to trusted clients.¶
IANA is requested to allocate the following entries in the NTP Extension Field Types registry [RFC5905]:¶
| Field Type | Meaning | Reference |
|---|---|---|
| TBD | Server Identifier | this memo |
The authors would like to acknowledge Marco Davids, Miroslav Lichvar, Giovane Moura, Ruben Nijveld, and Ask Bjørn Hansen for providing thoughtful discussion and inspiration for this document.¶