Internet Engineering Task Force T. Narten Internet-Draft J. Johnson Intended status: Standards Track IBM Expires: January 9, 2011 July 8, 2010 Definition of the UUID-based DHCPv6 Unique Identifier (DUID-UUID) draft-narten-dhc-duid-uuid-01 Abstract This document defines a new DHCPv6 Unique Identifier (DUID) type, called DUID-UUID. DUID-UUIDs are derived from the already standardized UUID format. DUID-UUID makes it possible for devices to use UUIDs to identify themselves to DHC servers and vice versa. UUIDs are globally unique and readily available on many systems, making them convenient identifiers to leverage within DHCP. 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 http://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 January 9, 2011. Copyright Notice Copyright (c) 2010 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 (http://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 Narten & Johnson Expires January 9, 2011 [Page 1] Internet-Draft DUID-UUID July 2010 described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. DUID-UUID Format . . . . . . . . . . . . . . . . . . . . . . . 4 3. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 6. Normative References . . . . . . . . . . . . . . . . . . . . . 5 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 Narten & Johnson Expires January 9, 2011 [Page 2] Internet-Draft DUID-UUID July 2010 1. Introduction In DHCPv6, clients identify themselves to servers via DHCP Unique Identifiers (DUIDs) [RFC3315]. 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. Three DUIDs types have been defined so far: 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 The intention of DUIDs is that they remain constant over time, so that they can be used as permanent identifiers for a device. In the case of DUID-LLTs, they are intended to be generated once, and then stored in stable storage and reused from that point forward. In DHCPv4, all clients identify themselves to servers via the MAC address of the interface on which the DHCP packet is sent. The MAC address identifier generally remains constant across machine restarts, installation of new operating system releases, changes in hardware configuration such as addition or removal of storage devices, etc. While the MAC address will change if the network interface is replaced, this is a relatively uncommon event. In contrast, the DUID-LLT and DUID-LL identifiers that a given device may use are less likely to remain constant on some types of devices and deployments. Specifically, when a machine goes through a multi- step boot process, it may first load a simple boot loader, followed by a one or more secondary loaders before the eventual actual target system is loaded. In IPv4, all steps of a multi-step boot processes that invoke DHCP are guaranteed to use the same MAC identifier during each stage. In contrast, with DHCPv6, it is more difficult to ensure or arrange that each boot stage uses the same identifier. First, there are multiple DUID types, and different systems might choose to use different formats. Second, even if the different stages used DUID-LL or DUID-LLT, on devices with multiple interfaces, there is no way to guarantee that the same interface (and hence DUID) will be selected. Finally, in the case of DUID-LLT, even if the same interface were chosen, there is no guarantee that each stage would use the same timestamp value. While a DUID-EN could be defined and used, such usage would be proprietary by definition. Narten & Johnson Expires January 9, 2011 [Page 3] Internet-Draft DUID-UUID July 2010 This document defines a new DUID type, based on the Universally Unique IDentifier (UUID) [RFC4122]. UUIDs are already use in practice and serve as an existing identifier that could be leveraged by DHCP. For example, x86 based systems ship with an embedded UUID in firmware that could be accessed for this purpose. Although many UUIDs are in use today, not all UUIDs meet the requirements of the DHCP protocol (see Section 9 of [RFC3315]). DHCP UUIDs should be persistant across system restarts, across system reconfiguration events, system software and operating system upgrades or reinstallation, and be easily available to any part of the boot process that requires access to the DHCP UUID. For example, UUIDs used in Microsoft's Component Object Module (COM), and for labeling partitions in filesystems, are likely not appropriate as they may not be accessible to firmware boot loaders, and can change over time. Implementations of this specification must use a DUID that is persistent across system restart and reconfiguration events, and that is available to all DHCP protocol agents that may need to identify themselves. For instance, a DUID that is part of the system firmware, or managed by the system firmware, would satisfy this requirement. It should be noted that use of a DUID-UUID will not by itself solve all the problems motivating this document. Given the availablility of a suitable DUID-UUID, implementations will still need to take steps to ensure that all boot stages use the same DUID-UUID as appropriate. Given that DHCP has already defined multiple DUID types, the question of which of several DUIDs to select from already exists and is not a new problem. 2. DUID-UUID Format The DUID-UUID is carried within Client Identifier or Server Identifier options. It has the following format: Narten & Johnson Expires January 9, 2011 [Page 4] Internet-Draft DUID-UUID July 2010 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) | UUID (128 bits) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | | | | -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- DUID-UUID format. . Figure 1 DUID-Type - TBD (16 bits) UUID - An RFC4122 UUID (128 bits) 3. Acknowledgements This document was inspired by a discussion on the DHC mailing list in November, 2009 on the topic of netboot for IPv6. Specifically, some scenarios were described where it was difficult to do something in DHCPv6 that had worked well in DHCPv4. 4. IANA Considerations IANA has assigned the value TBD for use by DHCPv6 DUID-UUID type described in this document. 5. Security Considerations This document does not create any new security considerations. 6. Normative References [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M. Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3315, July 2003. [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally Unique IDentifier (UUID) URN Namespace", RFC 4122, July 2005. Narten & Johnson Expires January 9, 2011 [Page 5] Internet-Draft DUID-UUID July 2010 Authors' Addresses Thomas Narten IBM Email: narten@us.ibm.com Jarrod B. Johnson IBM Email: jarrod.b.johnson@gmail.com Narten & Johnson Expires January 9, 2011 [Page 6]