Network Working Group                                    F. Templin, Ed.
Internet-Draft                              Boeing Research & Technology
Intended status: Standards Track                        January 11, 2021
Expires: July 15, 2021


     The IPv6 Address-based DHCPv6 Unique Identifier (DUID-V6ADDR)
                       draft-templin-duid-ipv6-01

Abstract

   This document defines a new DHCPv6 Unique Identifier (DUID) type
   called DUID-V6ADDR that contains a single 128 bit IPv6 address.
   DUID-V6ADDR makes it possible for devices to use suitably-derived
   unique IPv6 addresses to identify themselves to DHCPv6 servers and/or
   other network nodes.

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 July 15, 2021.

Copyright Notice

   Copyright (c) 2021 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 Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.



Templin                   Expires July 15, 2021                 [Page 1]


Internet-Draft                 DUID-V6ADDR                  January 2021


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Background  . . . . . . . . . . . . . . . . . . . . . . . . .   3
   4.  DUID-V6ADDR Format  . . . . . . . . . . . . . . . . . . . . .   3
   5.  DUID-V6ADDR Uses  . . . . . . . . . . . . . . . . . . . . . .   4
   6.  Relation to Other DUID Types  . . . . . . . . . . . . . . . .   4
   7.  IPv6 Address Generation Method-Specific DUID Types  . . . . .   5
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   9.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   10. Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   5
   11. References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     11.1.  Normative References . . . . . . . . . . . . . . . . . .   6
     11.2.  Informative References . . . . . . . . . . . . . . . . .   7
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   DHCP Unique Identifiers (DUIDs) are used in DHCPv6 control messages
   [RFC8415] to identify clients and servers (they may also be used in
   other protocol messages that import the format such as IPv6 Neighbor
   Discovery (IPv6 ND) [RFC4861]).  This document defines a new DUID
   type containing a single valid IPv6 address [RFC8200] that has been
   suitably derived through some means to ensure uniqueness.  The new
   DUID type is termed DUID-V6ADDR.

   Some methods of producing unique identifiers take care to ensure that
   the identifier is included in a well-formed IPv6 address.  For
   example, the Host Identity Tag (HIT) [RFC7401][I-D.ietf-drip-rid] is
   a valid IPv6 address and therefore occupies the same 128-bit space as
   for any IPv6 address (in network byte order).  Other IPv6 address
   generation methods [RFC7721] also assert uniqueness.  The only
   distinction needed within the DUID space is therefore a new DUID type
   value indicating the presence of a single IPv6 address.

   DUID-V6ADDR allows devices to use suitably-derived IPv6 addresses to
   identify themselves to DHCPv6 servers and vice versa.  The DUID-
   V6ADDR format makes no statement about the method used for generating
   the IPv6 address, but its use in control messages asserts that the
   address has been ensured unique through some unspecified means.
   Valid IPv6 address types include any unicast/anycast Global Unicast
   (GUA), Link-Local (LLA) or Unique-Local (ULA) address, with the
   specific address type identified by the subnet prefix per the IPv6
   addressing architecture [RFC4193][RFC4291].  The following sections
   present the DUID-V6ADDR format and type designation.





Templin                   Expires July 15, 2021                 [Page 2]


Internet-Draft                 DUID-V6ADDR                  January 2021


2.  Terminology

   IETF keywords appear in [RFC2119][RFC8174].

3.  Background

   In DHCPv6, clients identify themselves to servers via DHCP Unique
   Identifiers (DUIDs) [RFC8415].  DUIDs are identifiers that DHCP
   servers treat as opaque objects with no internal structure.  DUIDs
   are intended to be globally unique, with no two devices using the
   same DUID.

   Four DUIDs types have been defined previously:

   DUID-LLT  the Link-Layer address of one of the device's network
      interfaces, concatenated with a timestamp.

   DUID-EN  an Enterprise Number plus additional information specific to
      the enterprise.

   DUID-LL  the Link-Layer address of one of the device's network
      interfaces.

   DUID-UUID  used in situations where there is a Universally Unique
      IDentifier (UUID) stored in a device's firmware settings
      [RFC6355].

   This document specifies a fifth DUID type, known as DUID-V6ADDR and
   identified by DUID-Type value TBD which distinguishes it from all
   other types.  (Note: The DUID Type value allocation policy per IANA
   is "Standards Action".)

4.  DUID-V6ADDR Format

   The DUID-V6ADDR is carried within control messages.  It has the
   following format:















Templin                   Expires July 15, 2021                 [Page 3]


Internet-Draft                 DUID-V6ADDR                  January 2021


       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |         DUID-Type (TBD)       |    IPv6 Address (128 bits)    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
      |                                                               |
      |                                                               |
      |                                -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                                |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

                       Figure 1: DUID-V6ADDR Format

      DUID-Type - DUID-V6ADDR (TBD) - (16 bits)

      IPv6 Address - An IPv6 Address (128 bits)

5.  DUID-V6ADDR Uses

   The DUID-V6ADDR may appear in DHCPv6 and/or other protocol control
   messages (such as IPv6 ND) within a service domain when a unique ID
   based on an IPv6 address is required.  Clients and servers include a
   unique GUA/LLA/ULA as the IPv6 address according to the domain
   service model, where GUAs are assumed globally unique while LLAs and
   ULAs are assumed unique within the service domain but not necessarily
   globally unique.  If multiple nodes within the service domain include
   the same GUA/LLA/ULA, the address assumes the properties of an
   anycast address.

   DUID-V6ADDR uses for IPv6 address types other than GUA/LLA/ULA are
   out of scope.

6.  Relation to Other DUID Types

   DUID-V6ADDR differs in size, format and contents from DUID-LLT, DUID-
   EN and DUID-LL.  DUID-V6ADDR shares the same size and format as DUID-
   UUID, however DUID-UUID includes a UUID which is by definition not an
   IPv6 address.  (A case could be considered for allowing the existing
   DUID-UUID format to also include an IPv6 address (i.e., instead of a
   UUID), however this would require a domain-wide observation of the
   alternate use.  It would further not be possible for software to
   distinguish a UUID from an IPv6 address, since UUIDs by definition do
   not honor the IPv6 addressing architecture.)








Templin                   Expires July 15, 2021                 [Page 4]


Internet-Draft                 DUID-V6ADDR                  January 2021


7.  IPv6 Address Generation Method-Specific DUID Types

   An alternative to defining a generic DUID-V6ADDR type for all manners
   of IPv6 addresses would be to define a specific DUID type for each
   IPv6 address generation method.  This would result in the assignment
   of additional DUID type values as more and more IPv6 address
   generation methods become standards.

   While the DUID type value assigned number space is not a scarce
   commodity, assigning a new DUID type value for each new IPv6 address
   generation method as they become standards would require updates to
   widely-deployed legacy systems that only care that a valid IPv6
   address is included and do not need to know the address generation
   method used.

   It should also be noted that different unique IPv6 address generation
   methods must presumably use a distinct IPv6 subnet prefix not shared
   by other address generation methods in order to avoid duplication.
   Hence, implementations that need to know the address generation
   method used can examine the IPv6 address subnet prefix in the DUID-
   V6ADDR in order to determine the address generation method.

8.  IANA Considerations

   IANA is requested to assign a value TBD in the 'dhcpv6-parameters'
   registry for DUID-V6ADDR.

9.  Security Considerations

   DHCP and other control message traffic such as IPv6 ND are sent in
   the clear.  An eavesdropper residing on the path could therefore
   examine the traffic and obtain the unique IPv6 address asserted by a
   particular machine.  This may raise some privacy issues but is not a
   new issue brought on by the use of the DUID type defined in this
   document.

10.  Acknowledgements

   This work is aligned with the NASA Safe Autonomous Systems Operation
   (SASO) program under NASA contract number NNA16BD84C.

   This work is aligned with the FAA as per the SE2025 contract number
   DTFAWA-15-D-00030.

   This work is aligned with the Boeing Commercial Airplanes (BCA)
   Internet of Things (IoT) and autonomy programs.





Templin                   Expires July 15, 2021                 [Page 5]


Internet-Draft                 DUID-V6ADDR                  January 2021


   This work is aligned with the Boeing Information Technology (BIT)
   MobileNet program.

11.  References

11.1.  Normative References

   [I-D.ietf-drip-rid]
              Moskowitz, R., Card, S., Wiethuechter, A., and A. Gurtov,
              "UAS Remote ID", draft-ietf-drip-rid-06 (work in
              progress), December 2020.

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

   [RFC4193]  Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast
              Addresses", RFC 4193, DOI 10.17487/RFC4193, October 2005,
              <https://www.rfc-editor.org/info/rfc4193>.

   [RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing
              Architecture", RFC 4291, DOI 10.17487/RFC4291, February
              2006, <https://www.rfc-editor.org/info/rfc4291>.

   [RFC4861]  Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
              "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
              DOI 10.17487/RFC4861, September 2007,
              <https://www.rfc-editor.org/info/rfc4861>.

   [RFC7401]  Moskowitz, R., Ed., Heer, T., Jokela, P., and T.
              Henderson, "Host Identity Protocol Version 2 (HIPv2)",
              RFC 7401, DOI 10.17487/RFC7401, April 2015,
              <https://www.rfc-editor.org/info/rfc7401>.

   [RFC7721]  Cooper, A., Gont, F., and D. Thaler, "Security and Privacy
              Considerations for IPv6 Address Generation Mechanisms",
              RFC 7721, DOI 10.17487/RFC7721, March 2016,
              <https://www.rfc-editor.org/info/rfc7721>.

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



Templin                   Expires July 15, 2021                 [Page 6]


Internet-Draft                 DUID-V6ADDR                  January 2021


   [RFC8415]  Mrugalski, T., Siodelski, M., Volz, B., Yourtchenko, A.,
              Richardson, M., Jiang, S., Lemon, T., and T. Winters,
              "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)",
              RFC 8415, DOI 10.17487/RFC8415, November 2018,
              <https://www.rfc-editor.org/info/rfc8415>.

11.2.  Informative References

   [RFC6355]  Narten, T. and J. Johnson, "Definition of the UUID-Based
              DHCPv6 Unique Identifier (DUID-UUID)", RFC 6355,
              DOI 10.17487/RFC6355, August 2011,
              <https://www.rfc-editor.org/info/rfc6355>.

Author's Address

   Fred L. Templin (editor)
   Boeing Research & Technology
   P.O. Box 3707
   Seattle, WA  98124
   USA

   Email: fltemplin@acm.org





























Templin                   Expires July 15, 2021                 [Page 7]