idnits 2.17.1 draft-ietf-dhc-pxe-options-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 16. -- Found old boilerplate from RFC 3978, Section 5.5 on line 300. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 277. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 284. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 290. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (March 7, 2006) is 6619 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) -- Possible downref: Non-RFC (?) normative reference: ref. '3' -- Possible downref: Non-RFC (?) normative reference: ref. '4' ** Downref: Normative reference to an Informational RFC: RFC 3679 (ref. '8') Summary: 4 errors (**), 0 flaws (~~), 2 warnings (==), 9 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Dynamic Host Configuration Working M. Johnston 3 Group Intel Corporation 4 Internet-Draft S. Venaas, Ed. 5 Expires: September 8, 2006 UNINETT 6 March 7, 2006 8 DHCP Options for the Intel Preboot eXecution Environment (PXE) 9 draft-ietf-dhc-pxe-options-03 11 Status of this Memo 13 By submitting this Internet-Draft, each author represents that any 14 applicable patent or other IPR claims of which he or she is aware 15 have been or will be disclosed, and any of which he or she becomes 16 aware will be disclosed, in accordance with Section 6 of BCP 79. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/ietf/1id-abstracts.txt. 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 This Internet-Draft will expire on September 8, 2006. 36 Copyright Notice 38 Copyright (C) The Internet Society (2006). 40 Abstract 42 We define DHCP options being used by Preboot eXecution Environment 43 (PXE) and Extensible Firmware Interface (EFI) clients to uniquely 44 identify booting client machines and their pre-OS runtime environment 45 so the DHCP and/or PXE boot server can return the correct OS 46 bootstrap image (or pre-boot application) name and server to the 47 client. 49 Requirements Language 51 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 52 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 53 document are to be interpreted as described in RFC 2119 [1]. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 2. Option Definitions . . . . . . . . . . . . . . . . . . . . . . 3 59 2.1. Client System Architecture Type Option Definition . . . . . 3 60 2.2. Client Network Interface Identifier Option Definition . . . 4 61 2.3. Client Machine Identifier Option Definition . . . . . . . . 5 62 2.4. Options Requested by PXE Clients . . . . . . . . . . . . . 5 63 3. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 64 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 65 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 66 6. Normative References . . . . . . . . . . . . . . . . . . . . . 6 67 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 68 Intellectual Property and Copyright Statements . . . . . . . . . . 8 70 1. Introduction 72 These DHCP [2] options are being widely used by PXE compliant clients 73 to uniquely identify booting client machines themselves and their 74 pre-OS runtime environment so the DHCP and/or PXE boot server can 75 return the correct OS bootstrap image (or pre-boot application) name 76 and server to the client. In the past, this work was done by 77 examining the network MAC address in the "chaddr" field in the BOOTP/ 78 DHCP header and keeping a database of MAC addresses on the BOOTP/DHCP 79 server. This was deemed insufficient for large and complex networks 80 for two main reasons. 1) Multiple laptops could end up with the same 81 MAC address if the NIC was in a shared docking station. 2) Multiple 82 network devices and MAC addresses could be used by one machine for 83 redundancy or because of repairs. Another issue that came up was the 84 machine that could change its pre-OS runtime environment. This issue 85 caused the creation of another new option to identify the runtime 86 environment so the correct binary image could be matched up with the 87 booting machine. These options are defined by Intel in the PXE [3] 88 and EFI [4] specifications and are being documented in this draft for 89 completeness within the IETF. 91 2. Option Definitions 93 There are three DHCP options [5] defined for use by PXE clients. 95 2.1. Client System Architecture Type Option Definition 97 The format of the option is: 99 Code Len 16-bit Type 100 +----+-----+-----+-----+ 101 | 93 | n | n1 | n2 | 102 +----+-----+-----+-----+ 104 Octet "n" gives the number of octets containing "architecture types" 105 (not including the code and len fields). It MUST be an even number 106 greater than zero. Clients that support more than one architecture 107 type MAY include a list of these types in their initial DHCP and PXE 108 boot server packets. The list of supported architecture types MAY be 109 reduced in any packet exchange between the client and server(s). 110 Octets "n1" and "n2" encode a 16-bit architecture type identifier 111 that describes the pre-boot runtime environment(s) of the client 112 machine. 114 As of the writing of this document the following pre-boot 115 architecture types have been requested. 117 Type Architecture Name 118 ---- ----------------- 119 0 Intel x86PC 120 1 NEC/PC98 121 2 EFI Itanium 122 3 DEC Alpha 123 4 Arc x86 124 5 Intel Lean Client 125 6 EFI IA32 127 This option MUST be present in all DHCP and PXE packets sent by PXE 128 compliant clients and servers. 130 2.2. Client Network Interface Identifier Option Definition 132 The format of the option is: 134 Code Len Type Major Minor 135 +----+-----+----+-----+-----+ 136 | 94 | 3 | t | M | m | 137 +----+-----+----+-----+-----+ 139 Octet "t" encodes a network interface type. For now the only 140 supported value is 1 for UNDI (Universal Network Device Interface). 141 Octets "M" and "m" describe the interface revision. To encode the 142 UNDI revision of 2.11, "M" would be set to 2 and "m" would be set to 143 11 (0x0B). 145 Revision Description 146 -------- ----------- 147 < 2.00 LANDesk service agent boot ROMs. No PXE APIs. 149 2.00 First generation PXE boot ROMs. (PXENV+) [3] 151 2.01 Second generation PXE boot ROMs. (!PXE) [3] 153 3.00 32/64-bit UNDI specification. (Alpha) [4] 154 EFI boot services driver only. No EFI runtime support. 156 3.10 32/64-bit UNDI specification. (Beta) [4] 157 First generation EFI runtime driver support. 159 3.20 32/64-bit UNDI specification. (Release) [4] 160 Second generation EFI runtime driver support. 162 This option MUST be present in all DHCP and PXE packets sent by PXE 163 compliant clients and servers. 165 2.3. Client Machine Identifier Option Definition 167 The format of the option is: 169 Code Len Type Machine Identifier 170 +----+-----+----+-----+ . . . +-----+ 171 | 97 | n | t | | . . . | | 172 +----+-----+----+-----+ . . . +-----+ 174 Octet "t" describes the type of the machine identifier in the 175 remaining octets in this option. 0 (zero) is the only defined value 176 for this octet at the present time and it describes the remaining 177 octets as a 16-octet GUID. Octet "n" is 17 for type 0. (One 178 definition of GUID can be found in Appendix A in the EFI 179 specification [efi].) 181 This option MUST be present in all DHCP and PXE packets sent by PXE 182 compliant clients and servers. 184 2.4. Options Requested by PXE Clients 186 All compliant PXE clients MUST include a request for DHCP options 128 187 through 135 in all DHCP and PXE packets. The format and contents of 188 these options are NOT defined by the PXE specification. These 189 options MAY be present in the DHCP and PXE boot server replies and 190 are meant for use by the downloaded network bootstrap programs. 191 These options are NOT used by the PXE boot ROMs. 193 As options 128-135 are not officially assigned for PXE use (previous 194 to November 2004 they were considered site-specific options, [6]), 195 use of these option values for PXE may conflict with other uses of 196 the same options on the same networks. 198 3. Acknowledgements 200 The authors thank Bernie Volz for valuable input. 202 4. IANA Considerations 204 IANA is requested to update the numbering space defined for public 205 DHCP options in [7] with references to this document for options 93, 206 94 and 97 (currently there are references to [8]), and also mark 207 options 128-135 as being used by PXE and reference this document 208 (they are currently marked as being used by PXE, but without 209 references). 211 5. Security Considerations 213 By specifying incorrect values for some of these options a client may 214 get access to, and possibly attempt to execute, code intended for 215 another platform or client. This may have security ramifications. 216 Also note that these options contain information about a client's 217 system architecture and pre-OS runtime environment which is revealed 218 to anyone who is able to listen in on DHCP messages sent by the 219 client. This information may be of use to potential attackers. 221 6. Normative References 223 [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement 224 Levels", BCP 14, RFC 2119, March 1997. 226 [2] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, 227 March 1997. 229 [3] Henry, M. and M. Johnston, "Preboot Execution Environment (PXE) 230 Specification", September 1999, 231 . 233 [4] Intel Corp., "Extensible Firmware Interface Specification", 234 December 2002, . 237 [5] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor 238 Extensions", RFC 2132, March 1997. 240 [6] Volz, B., "Reclassifying Dynamic Host Configuration Protocol 241 version 4 (DHCPv4) Options", RFC 3942, November 2004. 243 [7] Droms, R., "Procedures and IANA Guidelines for Definition of New 244 DHCP Options and Message Types", BCP 43, RFC 2939, 245 September 2000. 247 [8] Droms, R., "Unused Dynamic Host Configuration Protocol (DHCP) 248 Option Codes", RFC 3679, January 2004. 250 Authors' Addresses 252 Michael Johnston 253 Intel Corporation 254 MS. JF1-239 2111 NE 25th Ave. 255 Hillsboro, OR 97124 256 USA 258 Phone: +1 503-264-9703 259 Email: michael.johnston@intel.com 261 Stig Venaas 262 UNINETT 263 Trondheim NO-7465 264 Norway 266 Email: venaas@uninett.no 268 Intellectual Property Statement 270 The IETF takes no position regarding the validity or scope of any 271 Intellectual Property Rights or other rights that might be claimed to 272 pertain to the implementation or use of the technology described in 273 this document or the extent to which any license under such rights 274 might or might not be available; nor does it represent that it has 275 made any independent effort to identify any such rights. Information 276 on the procedures with respect to rights in RFC documents can be 277 found in BCP 78 and BCP 79. 279 Copies of IPR disclosures made to the IETF Secretariat and any 280 assurances of licenses to be made available, or the result of an 281 attempt made to obtain a general license or permission for the use of 282 such proprietary rights by implementers or users of this 283 specification can be obtained from the IETF on-line IPR repository at 284 http://www.ietf.org/ipr. 286 The IETF invites any interested party to bring to its attention any 287 copyrights, patents or patent applications, or other proprietary 288 rights that may cover technology that may be required to implement 289 this standard. Please address the information to the IETF at 290 ietf-ipr@ietf.org. 292 Disclaimer of Validity 294 This document and the information contained herein are provided on an 295 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 296 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 297 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 298 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 299 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 300 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 302 Copyright Statement 304 Copyright (C) The Internet Society (2006). This document is subject 305 to the rights, licenses and restrictions contained in BCP 78, and 306 except as set forth therein, the authors retain all their rights. 308 Acknowledgment 310 Funding for the RFC Editor function is currently provided by the 311 Internet Society.