idnits 2.17.1 draft-ietf-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 (December 15, 2010) is 4874 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: June 18, 2011 December 15, 2010 7 Definition of the UUID-based DHCPv6 Unique Identifier (DUID-UUID) 8 draft-ietf-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 June 18, 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. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5 59 6.1. Normative References . . . . . . . . . . . . . . . . . . . 5 60 6.2. Informative References . . . . . . . . . . . . . . . . . . 6 61 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 63 1. Introduction 65 In DHCPv6, clients identify themselves to servers via DHCP Unique 66 Identifiers (DUIDs) [RFC3315]. DUIDs are identifiers that DHCP 67 servers treat as opaque objects with no internal structure. DUIDs 68 are intended to be globally unique, with no two devices using the 69 same DUID. Three DUIDs types have been defined previously: 71 DUID-LLT - the Link-Layer address of one of the device's network 72 interfaces, concatenated with a timestamp 74 DUID-EN - an Enterprise Number plus additional information specific 75 to the enterprise 77 DUID-LL - the Link-Layer address of one of the device's network 78 interfaces 80 The intention of DUIDs is that they remain constant over time, so 81 that they can be used as permanent identifiers for a device. In the 82 case of DUID-LLTs, they are intended to be generated once, and then 83 stored in stable storage and reused from that point forward. 85 In DHCPv4, all clients identify themselves to servers via the MAC 86 address of the interface on which the DHCP packet is sent. The MAC 87 address identifier generally remains constant across machine 88 restarts, installation of new operating system releases, changes in 89 hardware configuration such as addition or removal of storage 90 devices, etc. While the MAC address will change if the network 91 interface is replaced, this is a relatively uncommon event. 93 In contrast, the DUID-LLT and DUID-LL identifiers that a given device 94 may use are less likely to remain constant on some types of devices 95 and deployments. Specifically, when a machine goes through a multi- 96 step boot process, it may first load a simple boot loader, followed 97 by a one or more secondary loaders before the eventual desired target 98 system is loaded. In IPv4, all steps of a multi-step boot processes 99 that invoke DHCP are guaranteed to use the same MAC identifier during 100 each stage. In contrast, with DHCPv6, it is more difficult to ensure 101 or arrange that each boot stage uses the same identifier. First, 102 there are multiple DUID types, and different stages might choose to 103 use different formats. Second, even if the different stages used 104 DUID-LL or DUID-LLT, on devices with multiple interfaces, there is no 105 way to guarantee that the same interface (and hence DUID) will be 106 selected. Finally, in the case of DUID-LLT, even if the same 107 interface were chosen, there is no guarantee that each stage would 108 use the same timestamp value. While a DUID-EN could be defined and 109 used, such usage would be proprietary by definition. 111 This document defines a new DUID type, based on the Universally 112 Unique IDentifier (UUID) [RFC4122]. UUIDs are already used in 113 practice and serve as an existing identifier that could be leveraged 114 by DHCP. For example, x86 based systems ship with an embedded UUID 115 in firmware that could be accessed for this purpose. 117 Although DUIDs are new to DHCPv6, the idea of identifying clients via 118 a UUID is not. DHCPv4 defines a Client Machine Identifier Option 119 (option 97) that can contain a UUID [RFC4578]. 121 Although many UUIDs are in use today, not all UUIDs meet the 122 requirements of the DHCP protocol (see Section 9 of [RFC3315]). DHCP 123 UUIDs should be persistant across system restarts, across system 124 reconfiguration events, system software and operating system upgrades 125 or reinstallation, and be easily available to any part of the boot 126 process that requires access to the DHCP UUID. For example, UUIDs 127 used in Microsoft's Component Object Module (COM), and for labeling 128 partitions in filesystems, are likely not appropriate as they may not 129 be accessible to firmware boot loaders, and can change over time. 131 Implementations of this specification must use a DUID that is 132 persistent across system restart and reconfiguration events, and that 133 is available to all DHCP protocol agents that may need to identify 134 themselves. For instance, a DUID that is part of the system 135 firmware, or managed by the system firmware, would satisfy this 136 requirement. 138 It should be noted that use of a DUID-UUID will not by itself solve 139 all the problems motivating this document. Given the availablility 140 of a suitable DUID-UUID, implementations will still need to take 141 steps to ensure that all boot stages use the same DUID-UUID as 142 appropriate. Given that DHCP has already defined multiple DUID 143 types, the question of which of several DUIDs to select from already 144 exists and is not a new problem. 146 2. DUID-UUID Format 148 The DUID-UUID is carried within Client Identifier or Server 149 Identifier options. It has the following format: 151 0 1 2 3 152 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 153 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 154 | DUID-Type (4) | UUID (128 bits) | 155 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 156 | | 157 | | 158 | -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 159 | | 160 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 162 DUID-UUID format. . 164 Figure 1 166 DUID-Type - DUID-UUID (4) - (16 bits) 168 UUID - An RFC4122 UUID (128 bits) 170 3. Acknowledgements 172 This document was inspired by a discussion on the DHC mailing list in 173 November, 2009 on the topic of netboot for IPv6. Specifically, some 174 scenarios were described where it was difficult to do something in 175 DHCPv6 that had worked well in DHCPv4. 177 4. IANA Considerations 179 IANA has assigned the value 4 for use by the DHCPv6 DUID-UUID type. 180 [TO BE REMOVED UPON PUBLICATION: IANA should update the registry 181 entry for the DUID-UUID DUID-Type and mark the assignment permanent.] 183 5. Security Considerations 185 DHCP traffic is sent in the clear. An eavesdroppper could see DHCP 186 traffic and obtain the UUID for a particular machine. This may raise 187 some privacy issues. 189 6. References 191 6.1. Normative References 193 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 194 and M. Carney, "Dynamic Host Configuration Protocol for 195 IPv6 (DHCPv6)", RFC 3315, July 2003. 197 [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally 198 Unique IDentifier (UUID) URN Namespace", RFC 4122, 199 July 2005. 201 6.2. Informative References 203 [RFC4578] Johnston, M. and S. Venaas, "Dynamic Host Configuration 204 Protocol (DHCP) Options for the Intel Preboot eXecution 205 Environment (PXE)", RFC 4578, November 2006. 207 Authors' Addresses 209 Thomas Narten 210 IBM 212 Email: narten@us.ibm.com 214 Jarrod B. Johnson 215 IBM 217 Email: jarrod.b.johnson@gmail.com