idnits 2.17.1 draft-narten-dhc-duid-uuid-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (July 8, 2010) is 5042 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 3315 (Obsoleted by RFC 8415) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force T. Narten 3 Internet-Draft J. Johnson 4 Intended status: Standards Track IBM 5 Expires: January 9, 2011 July 8, 2010 7 Definition of the UUID-based DHCPv6 Unique Identifier (DUID-UUID) 8 draft-narten-dhc-duid-uuid-01 10 Abstract 12 This document defines a new DHCPv6 Unique Identifier (DUID) type, 13 called DUID-UUID. DUID-UUIDs are derived from the already 14 standardized UUID format. DUID-UUID makes it possible for devices to 15 use UUIDs to identify themselves to DHC servers and vice versa. 16 UUIDs are globally unique and readily available on many systems, 17 making them convenient identifiers to leverage within DHCP. 19 Status of this Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at http://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on January 9, 2011. 36 Copyright Notice 38 Copyright (c) 2010 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (http://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 Table of Contents 53 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 54 2. DUID-UUID Format . . . . . . . . . . . . . . . . . . . . . . . 4 55 3. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 56 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 57 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 58 6. Normative References . . . . . . . . . . . . . . . . . . . . . 5 59 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 61 1. Introduction 63 In DHCPv6, clients identify themselves to servers via DHCP Unique 64 Identifiers (DUIDs) [RFC3315]. DUIDs are identifiers that DHCP 65 servers treat as opaque objects with no internal structure. DUIDs 66 are intended to be globally unique, with no two devices using the 67 same DUID. Three DUIDs types have been defined so far: 69 DUID-LLT - the Link-Layer address of one of the device's network 70 interfaces, concatenated with a timestamp 72 DUID-EN - an Enterprise Number plus additional information specific 73 to the enterprise 75 DUID-LL - the Link-Layer address of one of the device's network 76 interfaces 78 The intention of DUIDs is that they remain constant over time, so 79 that they can be used as permanent identifiers for a device. In the 80 case of DUID-LLTs, they are intended to be generated once, and then 81 stored in stable storage and reused from that point forward. 83 In DHCPv4, all clients identify themselves to servers via the MAC 84 address of the interface on which the DHCP packet is sent. The MAC 85 address identifier generally remains constant across machine 86 restarts, installation of new operating system releases, changes in 87 hardware configuration such as addition or removal of storage 88 devices, etc. While the MAC address will change if the network 89 interface is replaced, this is a relatively uncommon event. 91 In contrast, the DUID-LLT and DUID-LL identifiers that a given device 92 may use are less likely to remain constant on some types of devices 93 and deployments. Specifically, when a machine goes through a multi- 94 step boot process, it may first load a simple boot loader, followed 95 by a one or more secondary loaders before the eventual actual target 96 system is loaded. In IPv4, all steps of a multi-step boot processes 97 that invoke DHCP are guaranteed to use the same MAC identifier during 98 each stage. In contrast, with DHCPv6, it is more difficult to ensure 99 or arrange that each boot stage uses the same identifier. First, 100 there are multiple DUID types, and different systems might choose to 101 use different formats. Second, even if the different stages used 102 DUID-LL or DUID-LLT, on devices with multiple interfaces, there is no 103 way to guarantee that the same interface (and hence DUID) will be 104 selected. Finally, in the case of DUID-LLT, even if the same 105 interface were chosen, there is no guarantee that each stage would 106 use the same timestamp value. While a DUID-EN could be defined and 107 used, such usage would be proprietary by definition. 109 This document defines a new DUID type, based on the Universally 110 Unique IDentifier (UUID) [RFC4122]. UUIDs are already use in 111 practice and serve as an existing identifier that could be leveraged 112 by DHCP. For example, x86 based systems ship with an embedded UUID 113 in firmware that could be accessed for this purpose. 115 Although many UUIDs are in use today, not all UUIDs meet the 116 requirements of the DHCP protocol (see Section 9 of [RFC3315]). DHCP 117 UUIDs should be persistant across system restarts, across system 118 reconfiguration events, system software and operating system upgrades 119 or reinstallation, and be easily available to any part of the boot 120 process that requires access to the DHCP UUID. For example, UUIDs 121 used in Microsoft's Component Object Module (COM), and for labeling 122 partitions in filesystems, are likely not appropriate as they may not 123 be accessible to firmware boot loaders, and can change over time. 125 Implementations of this specification must use a DUID that is 126 persistent across system restart and reconfiguration events, and that 127 is available to all DHCP protocol agents that may need to identify 128 themselves. For instance, a DUID that is part of the system 129 firmware, or managed by the system firmware, would satisfy this 130 requirement. 132 It should be noted that use of a DUID-UUID will not by itself solve 133 all the problems motivating this document. Given the availablility 134 of a suitable DUID-UUID, implementations will still need to take 135 steps to ensure that all boot stages use the same DUID-UUID as 136 appropriate. Given that DHCP has already defined multiple DUID 137 types, the question of which of several DUIDs to select from already 138 exists and is not a new problem. 140 2. DUID-UUID Format 142 The DUID-UUID is carried within Client Identifier or Server 143 Identifier options. It has the following format: 145 0 1 2 3 146 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 147 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 148 | DUID-Type (TBD) | UUID (128 bits) | 149 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 150 | | 151 | | 152 | -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 153 | | 154 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 156 DUID-UUID format. . 158 Figure 1 160 DUID-Type - TBD (16 bits) 162 UUID - An RFC4122 UUID (128 bits) 164 3. Acknowledgements 166 This document was inspired by a discussion on the DHC mailing list in 167 November, 2009 on the topic of netboot for IPv6. Specifically, some 168 scenarios were described where it was difficult to do something in 169 DHCPv6 that had worked well in DHCPv4. 171 4. IANA Considerations 173 IANA has assigned the value TBD for use by DHCPv6 DUID-UUID type 174 described in this document. 176 5. Security Considerations 178 This document does not create any new security considerations. 180 6. Normative References 182 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 183 and M. Carney, "Dynamic Host Configuration Protocol for 184 IPv6 (DHCPv6)", RFC 3315, July 2003. 186 [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally 187 Unique IDentifier (UUID) URN Namespace", RFC 4122, 188 July 2005. 190 Authors' Addresses 192 Thomas Narten 193 IBM 195 Email: narten@us.ibm.com 197 Jarrod B. Johnson 198 IBM 200 Email: jarrod.b.johnson@gmail.com