Skip to main content

The IPv6 Segment Routing (SRv6) Domain Name System (DNS) Resource Record
draft-eastlake-dnsop-rrtype-srv6-05

Document Type Active Internet-Draft (individual)
Authors Donald E. Eastlake 3rd , Haoyu Song
Last updated 2024-03-28
RFC stream (None)
Intended RFC status (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-eastlake-dnsop-rrtype-srv6-05
DNSOP                                                        D. Eastlake
Internet-Draft                                                   H. Song
Intended status: Standards Track                  Futurewei Technologies
Expires: 29 September 2024                                 28 March 2024

The IPv6 Segment Routing (SRv6) Domain Name System (DNS) Resource Record
                  draft-eastlake-dnsop-rrtype-srv6-05

Abstract

   A Domain Name System (DNS) Resource Record (RR) Type is specified for
   storing IPv6 Segment Routing (SRv6) Information in the DNS.

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 29 September 2024.

Copyright Notice

   Copyright (c) 2024 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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2

Eastlake & Song         Expires 29 September 2024               [Page 1]
Internet-Draft               The SRv6 DNS RR                  March 2024

     1.1.  IPv6 Segment Routing  . . . . . . . . . . . . . . . . . .   2
     1.2.  The SRV6 RR Type  . . . . . . . . . . . . . . . . . . . .   3
     1.3.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  SRV6 RR Type RDATA  . . . . . . . . . . . . . . . . . . . . .   4
   3.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   5
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   6.  Normative References  . . . . . . . . . . . . . . . . . . . .   5
   7.  Informative References  . . . . . . . . . . . . . . . . . . .   6
   Appendix A.  SRV6 RR Type Template  . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   The Domain Name System (DNS) is a hierarchical, distributed, highly
   available database with a variety of security features [RFC4034]
   [RFC4035] used for bi-directional mapping between domain names and
   addresses, for email routing, and for other information [RFC1034]
   [RFC1035].  This data is formatted into resource records (RRs) whose
   content type and structure are indicated by the RR Type field.
   General familiarity with the DNS and its terminology [RFC9499] is
   assumed in this document.

1.1.  IPv6 Segment Routing

   Internet Protocol versions 4 (IPv4, [RFC0791]) and 6 (IPv6,
   [RFC8200]) have long provided header options that support including
   an ordered sequence of addresses in a packet header so the packet
   travels in order through the nodes specified by that sequence of
   addresses.  This is sometimes referred to as "source routing" because
   the route or path the packet follows is set, at least in part, when
   the sequence of addresses is added to the packet, usually at the
   packet's source, rather than being dynamically determined as the
   packet proceeds through the network.

   IPv6 Segment Routing (SRv6, [RFC8402]) extends "source routing" by
   generalizing the IPv6 sized "address" quantities in a source
   "routing" sequence to be "instructions".  [RFC8754] specifies a
   particular Segment Routing Header (SRH) that may be use used as part
   of the headers of an IPv6 packet to indicate an IPv6 Segment Routing
   sequence of addresses / instructions.  And [RFC8986] further
   specifies the structuring of an IPv6 address size quantity such that
   it may be composed of addressing information followed by a function
   designation which is optionally further followed by arguments to that
   function.  Thus, segment routing might encode a series of operations
   to be performed on a packet.

Eastlake & Song         Expires 29 September 2024               [Page 2]
Internet-Draft               The SRv6 DNS RR                  March 2024

   Furthermore, because a sequence of SRv6 instructions may all start
   with the same constant addressing prefix, methods of compression have
   been specified [Compress] to represent this addressing prefix less
   often and pack an increased number of quantities into a Segment
   Routing Header where each quantity may consist optionally of
   additional address information and/or function designation and/or
   function arguments.

1.2.  The SRV6 RR Type

   This document specifies a SRV6 RR Type to return a sequence of IPv6
   Segment Routing addresses / instructions and optionally other data.

   In many ways, the data returned for an SRV6 DNS RR is like an
   address.  This RR supports a DNS client querying for SRV6 RRs at a
   name, inserting returned SRv6 information into the header of an IPv6
   packet, and transmitting that packet so addressed.  It would also be
   reasonable for an application using SRv6 to do a type SRV DNS query
   [RFC2782] followed by an SRV6 query at the resulting domain name if
   it was in a domain where SRv6 was in use.  Furthermore, as a fall
   back, if no SRV6 RR is present in the DNS at a domain name, a client
   application whose SRV6 query has failed could query for the AAAA IPv6
   address RR type.

   Segment Routing is intended to be used in a limited domain compared
   with the global Internet.  Furthermore, the DNS is commonly thought
   of as the source for global Internet addressing.  However, most DNS
   servers can be easily configured in a network so that some names are
   only visible locally and some RRs are only delivered locally.

1.3.  Terminology

   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.

   The following acronyms are used in this document:

      DNS - Domain Name System

      IANA - Internet Assigned Number Authority

      IPv6 - Internet Protocol Version 6 [RFC8200]

      RR - DNS Resource Record

Eastlake & Song         Expires 29 September 2024               [Page 3]
Internet-Draft               The SRv6 DNS RR                  March 2024#x27;s
                      true state is unknown; for example, when it is
                      being initialized.

                      If the MAU is not jabbering the agent returns
                      noJabber(3).  This is the 'normal' state.

                      If the MAU is in jabber state the agent returns
                      the jabbering(4) value."
          REFERENCE "[IEEE 802.3 Std], 30.5.1.1.6,
                    aJabber.jabberFlag."
          ::= { rpMauEntry 8 }

      rpMauJabberingStateEnters OBJECT-TYPE
          SYNTAX      Counter32
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "A count of the number of times that
                      mauJabberState for this MAU instance enters the
                      state jabbering(4).  For MAUs of type
                      dot3MauTypeAUI, dot3MauType100BaseT4,
                      dot3MauType100BaseTX, dot3MauType100BaseFX and
                          all 1000Mbps types, this counter will always
                          indicate zero.

                          Discontinuities in the value of this counter
                          can occur at re-initialization of the
                          management system, and at other times as
                          indicated by the value of
                          rptrMonitorPortLastChange."
              REFERENCE   "[IEEE 802.3 Std], 30.5.1.1.6,
                          aJabber.jabberCounter.
                          RFC 2108, rptrMonitorPortLastChange"

Smith, et al.               Standards Track                    [Page 18]
RFC 2668                     802.3 MAU MIB                   August 1999

          ::= { rpMauEntry 9 }

      rpMauFalseCarriers OBJECT-TYPE
          SYNTAX      Counter32
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "A count of the number of false carrier events
                      during IDLE in 100BASE-X links.  This counter
                      does not increment at the symbol rate.  It can
                      increment after a valid carrier completion at a
                      maximum rate of once per 100 ms until the next
                      carrier event.

                      This counter increments only for MAUs of type
                      dot3MauType100BaseT4, dot3MauType100BaseTX, and
                      dot3MauType100BaseFX and all 1000Mbps types.
                      For all other MAU types, this counter will
                      always indicate zero.

                      The approximate minimum time for rollover of
                      this counter is 7.4 hours.

                      Discontinuities in the value of this counter can
                      occur at re-initialization of the management
                      system, and at other times as indicated by the
                      value of rptrMonitorPortLastChange."
          REFERENCE   "[IEEE 802.3 Std], 30.5.1.1.10, aFalseCarriers.
                      RFC 2108, rptrMonitorPortLastChange"
          ::= { rpMauEntry 10 }

      -- The rpJackTable applies to MAUs attached to repeaters
      -- which have one or more external jacks (connectors).

      rpJackTable OBJECT-TYPE
          SYNTAX      SEQUENCE OF RpJackEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION "Information about the external jacks attached
                      to MAUs attached to the ports of a repeater."
          ::= { dot3RpMauBasicGroup 2 }

      rpJackEntry OBJECT-TYPE
          SYNTAX      RpJackEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION "An entry in the table, containing information
                      about a particular jack."
          INDEX       { rpMauGroupIndex,

Smith, et al.               Standards Track                    [Page 19]
RFC 2668                     802.3 MAU MIB                   August 1999

                        rpMauPortIndex,
                        rpMauIndex,
                        rpJackIndex
                      }
          ::= { rpJackTable 1 }

      RpJackEntry ::=
          SEQUENCE {
              rpJackIndex                         Integer32,
              rpJackType                          JackType
          }

      rpJackIndex OBJECT-TYPE
          SYNTAX      Integer32 (1..2147483647)
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION "This variable uniquely identifies the jack
                      described by this entry from among other jacks
                      attached to the same MAU (rpMauIndex)."
          ::= { rpJackEntry 1 }

      rpJackType OBJECT-TYPE
          SYNTAX      JackType
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "The jack connector type, as it appears on the
                      outside of the system."
          ::= { rpJackEntry 2 }

      --
      -- The Basic Interface MAU Table
      --

      ifMauTable OBJECT-TYPE
          SYNTAX      SEQUENCE OF IfMauEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION "Table of descriptive and status information
                      about MAU(s) attached to an interface."
          ::= { dot3IfMauBasicGroup 1 }

      ifMauEntry OBJECT-TYPE
          SYNTAX      IfMauEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION "An entry in the table, containing information
                      about a single MAU."
          INDEX       { ifMauIfIndex,

Smith, et al.               Standards Track                    [Page 20]
RFC 2668                     802.3 MAU MIB                   August 1999

                        ifMauIndex
                      }
          ::= { ifMauTable 1 }

      IfMauEntry ::=
          SEQUENCE {
              ifMauIfIndex                        Integer32,
              ifMauIndex                          Integer32,
              ifMauType                           OBJECT IDENTIFIER,
              ifMauStatus                         INTEGER,
              ifMauMediaAvailable                 INTEGER,
              ifMauMediaAvailableStateExits       Counter32,
              ifMauJabberState                    INTEGER,
              ifMauJabberingStateEnters           Counter32,
              ifMauFalseCarriers                  Counter32,
              ifMauTypeList                       Integer32,
              ifMauDefaultType                    OBJECT IDENTIFIER,
              ifMauAutoNegSupported               TruthValue,
              ifMauTypeListBits                   BITS
          }

      ifMauIfIndex OBJECT-TYPE
          SYNTAX      Integer32 (1..2147483647)
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "This variable uniquely identifies the interface
                      to which the MAU described by this entry is
                      connected."
          REFERENCE   "RFC 1213, ifIndex"
          ::= { ifMauEntry 1 }

      ifMauIndex OBJECT-TYPE
          SYNTAX      Integer32 (1..2147483647)
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "This variable uniquely identifies the MAU
                      described by this entry from among other MAUs
                      connected to the same interface (ifMauIfIndex)."
          REFERENCE   "[IEEE 802.3 Std], 30.5.1.1.1, aMAUID."
          ::= { ifMauEntry 2 }

      ifMauType OBJECT-TYPE
          SYNTAX      OBJECT IDENTIFIER
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "This object identifies the MAU type.  An
                      initial set of MAU types are defined above.  The
                      assignment of OBJECT IDENTIFIERs to new types of

Smith, et al.               Standards Track                    [Page 21]
RFC 2668                     802.3 MAU MIB                   August 1999

                      MAUs is managed by the IANA.  If the MAU type is
                      unknown, the object identifier

                      unknownMauType OBJECT IDENTIFIER ::= { 0 0 }

                      is returned.  Note that unknownMauType is a
                      syntactically valid object identifier, and any
                      conformant implementation of ASN.1 and the BER
                      must be able to generate and recognize this
                      value.

                      This object represents the operational type of
                      the MAU, as determined by either (1) the result
                      of the auto-negotiation function or (2) if
                      auto-negotiation is not enabled or is not
                      implemented for this MAU, by the value of the
                      object ifMauDefaultType.  In case (2), a set to
                      the object ifMauDefaultType will force the MAU
                      into the new operating mode."
          REFERENCE   "[IEEE 802.3 Std], 30.5.1.1.2, aMAUType."
          ::= { ifMauEntry 3 }

      ifMauStatus OBJECT-TYPE
          SYNTAX      INTEGER {
                          other(1),
                          unknown(2),
                          operational(3),
                          standby(4),
                          shutdown(5),
                          reset(6)
                      }
          MAX-ACCESS  read-write
          STATUS      current
          DESCRIPTION "The current state of the MAU.  This object MAY
                      be implemented as a read-only object by those
                      agents and MAUs that do not implement software
                      control of the MAU state.  Some agents may not
                      support setting the value of this object to some
                      of the enumerated values.

                      The value other(1) is returned if the MAU is in
                      a state other than one of the states 2 through
                      6.

                      The value unknown(2) is returned when the MAU's
                      true state is unknown; for example, when it is
                      being initialized.

Smith, et al.               Standards Track                    [Page 22]
RFC 2668                     802.3 MAU MIB                   August 1999

                      A MAU in the operational(3) state is fully
                      functional, operates, and passes signals to its
                      attached DTE or repeater port in accordance to
                      its specification.

                      A MAU in standby(4) state forces DI and CI to
                      idle and the media transmitter to idle or fault,
                      if supported.  Standby(4) mode only applies to
                      link type MAUs.  The state of
                      ifMauMediaAvailable is unaffected.

                      A MAU in shutdown(5) state assumes the same
                      condition on DI, CI, and the media transmitter
                      as though it were powered down or not connected.
                      The MAU MAY return other(1) value for the
                      ifMauJabberState and ifMauMediaAvailable objects
                      when it is in this state.  For an AUI, this
                      state will remove power from the AUI.

                      Setting this variable to the value reset(6)
                      resets the MAU in the same manner as a
                      power-off, power-on cycle of at least one-half
                      second would.  The agent is not required to
                      return the value reset (6).

                      Setting this variable to the value
                      operational(3), standby(4), or shutdown(5)
                      causes the MAU to assume the respective state
                      except that setting a mixing-type MAU or an AUI
                      to standby(4) will cause the MAU to enter the
                      shutdown state."
          REFERENCE   "[IEEE 802.3 Std], 30.5.1.1.7, aMAUAdminState,
                      30.5.1.2.2, acMAUAdminControl, and 30.5.1.2.1,
                      acResetMAU."
          ::= { ifMauEntry 4 }
      ifMauMediaAvailable OBJECT-TYPE
          SYNTAX      INTEGER {
                          other(1),
                          unknown(2),
                          available(3),
                          notAvailable(4),
                          remoteFault(5),
                          invalidSignal(6),
                          remoteJabber(7),
                          remoteLinkLoss(8),
                          remoteTest(9),
                          offline(10),
                          autoNegError(11)

Smith, et al.               Standards Track                    [Page 23]
RFC 2668                     802.3 MAU MIB                   August 1999

                      }
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION "If the MAU is a link or fiber type (FOIRL,
                      10BASE-T, 10BASE-F) then this is equivalent to
                      the link test fail state/low light function.
                      For an AUI or a coax (including broadband) MAU
                      this indicates whether or not loopback is
                      detected on the DI circuit.  The value of this
                      attribute persists between packets for MAU types
                      AUI, 10BASE5, 10BASE2, 10BROAD36, and 10BASE-FP.

                      The value other(1) is returned if the
                      mediaAvailable state is not one of 2 through 11.

                      The value unknown(2) is returned when the MAU&

      SID - Segment Identifier [RFC8402]

      SRH - Segment Routing (IPv6) Header [RFC8754]

      SRv6 - IPv6 Segment Routing [RFC8402]

      SRV6 - Mnemonic for the SRv6 RR Type

      TLV - Type, Length, Value

2.  SRV6 RR Type RDATA

   The SRV6 RR type enables the storage and retrieval of an ordered
   sequence of SRv6 quantities each of which is the size of an IPv6
   [RFC8200] address.  The RDATA for this type of RR is a set of fields
   followed by a sequence of such quantities followed by optional data
   (see Figure 1) and will be ( 4 + N*16 + Opt) bytes long, where N is
   the number of such quantities present and Opt is the length of the
   optional data.

   The RR Type Code for the SRV6 RR is TBD1.

      0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    SID Count  |   SRH Flags   |          SRH Tag              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     |             16-byte SRv6 Address/Instruction (SID)            |
     |                                                               |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     .                                                               .
     .     Additional 16-byte SRv6 Addresses/Instructions (SIDs)     .
     .                                                               .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     .    Optional TLVs                                              .
     .................................................................

                         Figure 1: SRV6 RRTYPE Data

   The RDATA consists of a segment count followed by a flags byte, a 2
   byte tag, and then one or more 128-bit SRv6 SIDs followed by optional
   TLV data, all as further detailed as follows:

      SID Count - As unsigned one byte integer giving the number of
      16-byte SRv6 SIDs in the RDATA.

Eastlake & Song         Expires 29 September 2024               [Page 4]
Internet-Draft               The SRv6 DNS RR                  March 2024

      SRH Flags - This byte gives a initial value for the Flags field of
      the Segment Routing Header (SRH, [RFC8754]).

      SRH Tag - This field is a suggested value for the Tag field of the
      SRH [RFC8754].

      SIDs - 16-byte SRv6 segment identifiers (SIDs, [RFC8402].

      Optional TLVs - Suggested TLVs for inclusion in a Segment Routing
      Header (SRH, [RFC8754]) created using this RDATA.

   If the RDATA length is less than (4 + (SID Count)*16) or if the
   Optional TLVs do not parse as SRH TLVs, then the RR is malformed and
   MUST be ignored.

   Circumstances and/or future definition of flags and TLV types may
   require, when an IPv6 packet header is contructed based on an SRV6
   RR, that some SRH FLags be set or clear regardless of the SRH Flags
   RR field and/or that some SRH TLVs be included or excluded regardless
   of the Optional TLV in the SRH RR.

3.  Acknowledgements

   The suggestions and comments of the following persons are gratefully
   acknowledged:

      tbd

4.  IANA Considerations

   IANA is requested to assign an SRV6 RR Type (TBD1) as in the template
   in Appendix A.

5.  Security Considerations

   For information on DNS features that improve the authentication of
   retrieved RRs, see [RFC4034] and [RFC4035].

   For SRv6 Security Considerations, see [RFC8402] and Section 5 of
   [RFC8754].  For Security Considerations of SRv6 Network Programming,
   see [RFC8986]

6.  Normative References

   [RFC1034]  Mockapetris, P., "Domain names - concepts and facilities",
              STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987,
              <https://www.rfc-editor.org/info/rfc1034>.

Eastlake & Song         Expires 29 September 2024               [Page 5]
Internet-Draft               The SRv6 DNS RR                  March 2024

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
              November 1987, <https://www.rfc-editor.org/info/rfc1035>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <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,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8200]  Deering, S. and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", STD 86, RFC 8200,
              DOI 10.17487/RFC8200, July 2017,
              <https://www.rfc-editor.org/info/rfc8200>.

   [RFC8402]  Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
              Decraene, B., Litkowski, S., and R. Shakir, "Segment
              Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
              July 2018, <https://www.rfc-editor.org/info/rfc8402>.

   [RFC8986]  Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer,
              D., Matsushima, S., and Z. Li, "Segment Routing over IPv6
              (SRv6) Network Programming", RFC 8986,
              DOI 10.17487/RFC8986, February 2021,
              <https://www.rfc-editor.org/info/rfc8986>.

7.  Informative References

   [Compress] Cheng, W., Ed., Filsfils, C., Ed., Previdi, S., Li, Z.,
              Decraene, B., and F. Clad, "Compressed SRv6 Segment List
              Encoding in SRH", 13 September 2023,
              <https://datatracker.ietf.org/doc/draft-ietf-spring-srv6-
              srh-compression/>.

   [RFC0791]  Postel, J., "Internet Protocol", STD 5, RFC 791,
              DOI 10.17487/RFC0791, September 1981,
              <https://www.rfc-editor.org/info/rfc791>.

   [RFC2782]  Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for
              specifying the location of services (DNS SRV)", RFC 2782,
              DOI 10.17487/RFC2782, February 2000,
              <https://www.rfc-editor.org/info/rfc2782>.

Eastlake & Song         Expires 29 September 2024               [Page 6]
Internet-Draft               The SRv6 DNS RR                  March 2024

   [RFC3597]  Gustafsson, A., "Handling of Unknown DNS Resource Record
              (RR) Types", RFC 3597, DOI 10.17487/RFC3597, September
              2003, <https://www.rfc-editor.org/info/rfc3597>.

   [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, March 2005,
              <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, March 2005,
              <https://www.rfc-editor.org/info/rfc4035>.

   [RFC8754]  Filsfils, C., Ed., Dukes, D., Ed., Previdi, S., Leddy, J.,
              Matsushima, S., and D. Voyer, "IPv6 Segment Routing Header
              (SRH)", RFC 8754, DOI 10.17487/RFC8754, March 2020,
              <https://www.rfc-editor.org/info/rfc8754>.

   [RFC9499]  Hoffman, P. and K. Fujiwara, "DNS Terminology", BCP 219,
              RFC 9499, DOI 10.17487/RFC9499, March 2024,
              <https://www.rfc-editor.org/info/rfc9499>.

Appendix A.  SRV6 RR Type Template

Eastlake & Song         Expires 29 September 2024               [Page 7]
Internet-Draft               The SRv6 DNS RR                  March 2024

   A. Submission Date: tbd

   B.1 Submission Type:  [X] New RRTYPE  [ ] Modification to RRTYPE
   B.2 Kind of RR:  [X] Data RR  [ ] Meta-RR

   C. Contact Information for submitter (will be publicly posted):
      Name: Donald Eastlake
      Email Address: d3e3e3@gmail.com
      International telephone number: +1-508-333-2270
      Other contact handles:

   D. Motivation for the new RRTYPE application.

      Enable storeage of IPv6 Segment Routing sequences in the DNS.

   E. Description of the proposed RR type.
      See draft-eastlake-dnsop-rrtype-srv6

   F. What existing RRTYPE or RRTYPEs come closest to filling that need
      and why are they unsatisfactory?

      Perhaps AAAA but that only returns a single IPv6 address, not an
      ordered sequence of IPv6 sized SRv6 instructions.

   G. What mnemonic is requested for the new RRTYPE (optional)?

      SRV6

   H. Does the requested RRTYPE make use of any existing IANA registry
      or require the creation of a new IANA subregistry in DNS
      Parameters?  If so, please indicate which registry is to be used
      or created.  If a new subregistry is needed, specify the
      allocation policy for it and its initial contents.

      Does not use any existing registry and does not create a new
      registry.

   I. Does the proposal require/expect any changes in DNS
      servers/resolvers that prevent the new type from being processed
      as an unknown RRTYPE (see [RFC3597])?

      No.

   J. Comments:  None.

Authors' Addresses

Eastlake & Song         Expires 29 September 2024               [Page 8]
Internet-Draft               The SRv6 DNS RR                  March 2024

   Donald Eastlake
   Futurewei Technologies
   2386 Panoramic Circle
   Apopka, FL 32703
   United States of America
   Phone: +1 508 333 2270
   Email: d3e3e3@gmail.com

   Haoyu Song
   Futurewei Technologies
   2220 Central Expressway
   Santa Clara, CA 95050
   United States of America
   Email: haoyu.song@futurewei.com

Eastlake & Song         Expires 29 September 2024               [Page 9]