draft-ietf-dhc-pxe-options-01.txt   draft-ietf-dhc-pxe-options-02.txt 
Dynamic Host Configuration Working M. Johnston Dynamic Host Configuration Working M. Johnston
Group Intel Corporation Group Intel Corporation
Internet-Draft S. Venaas, Ed.
Expires: July 22, 2005 Expires: April 29, 2006 University of Southampton
October 26, 2005
DHCP Preboot eXecution Environment (PXE) Options DHCP Preboot eXecution Environment (PXE) Options
draft-ietf-dhc-pxe-options-01.txt draft-ietf-dhc-pxe-options-02
Status of this Memo Status of this Memo
This document is an Internet-Draft and is subject to all provisions By submitting this Internet-Draft, each author represents that any
of section 3 of RFC 3667. By submitting this Internet-Draft, each applicable patent or other IPR claims of which he or she is aware
author represents that any applicable patent or other IPR claims of have been or will be disclosed, and any of which he or she becomes
which he or she is aware have been or will be disclosed, and any of aware will be disclosed, in accordance with Section 6 of BCP 79.
which he or she become aware will be disclosed, in accordance with
RFC 3668.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as other groups may also distribute working documents as Internet-
Internet-Drafts. Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on July 22, 2005. This Internet-Draft will expire on April 29, 2006.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2005). Copyright (C) The Internet Society (2005).
Abstract Abstract
Define DHCP options being used by PXE and EFI clients. We define DHCP options being used by PXE and EFI clients to uniquely
identify booting client machines and their pre-OS runtime environment
so the DHCP and/or PXE boot server can return the correct OS
bootstrap image (or pre-boot application) name and server to the
client.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [1].
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Revision history . . . . . . . . . . . . . . . . . . . . . . . 3 2. Revision history . . . . . . . . . . . . . . . . . . . . . . . 3
3. Option Definitions . . . . . . . . . . . . . . . . . . . . . . 3 3. Option Definitions . . . . . . . . . . . . . . . . . . . . . . 4
3.1 Client System Architecture Type Option Definition . . . . 3 3.1. Client System Architecture Type Option Definition . . . . . 4
3.2 Client Network Interface Identifier Option Definition . . 4 3.2. Client Network Interface Identifier Option Definition . . . 4
3.3 Client Machine Identifier Option Definition . . . . . . . 5 3.3. Client Machine Identifier Option Definition . . . . . . . . 5
3.4 Site Specific Options Being Requested By PXE Client . . . 5 3.4. Options Requested by PXE Clients . . . . . . . . . . . . . 5
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
6. Normative References . . . . . . . . . . . . . . . . . . . . . 6 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . 6 7. Normative References . . . . . . . . . . . . . . . . . . . . . 6
Intellectual Property and Copyright Statements . . . . . . . . 7 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7
Intellectual Property and Copyright Statements . . . . . . . . . . 8
1. Introduction 1. Introduction
These DHCP options [RFC2131] are being widely used by PXE compliant These DHCP [2] options are being widely used by PXE compliant clients
clients to uniquely identify booting client machines themselves and to uniquely identify booting client machines themselves and their
their pre-OS runtime environment so the DHCP and/or PXE boot server pre-OS runtime environment so the DHCP and/or PXE boot server can
can return the correct OS bootstrap image (or pre-boot application) return the correct OS bootstrap image (or pre-boot application) name
name and server to the client. In the past, this work was done by and server to the client. In the past, this work was done by
examining the network MAC address in the "chaddr" field in the BOOTP/ examining the network MAC address in the "chaddr" field in the BOOTP/
DHCP header and keeping a database of MAC addresses on the BOOTP/DHCP DHCP header and keeping a database of MAC addresses on the BOOTP/DHCP
server. This was deemed insufficient for large and complex networks server. This was deemed insufficient for large and complex networks
for two main reasons. 1) Multiple laptops could end up with the same for two main reasons. 1) Multiple laptops could end up with the same
MAC address if the NIC was in a shared docking station. 2) Multiple MAC address if the NIC was in a shared docking station. 2) Multiple
network devices and MAC addresses could be used by one machine for network devices and MAC addresses could be used by one machine for
redundancy or because of repairs. Another issue that came up was the redundancy or because of repairs. Another issue that came up was the
machine that could change its pre-OS runtime environment. This issue machine that could change its pre-OS runtime environment. This issue
caused the creation of another new option to identify the runtime caused the creation of another new option to identify the runtime
environment so the correct binary image could be matched up with the environment so the correct binary image could be matched up with the
booting machine. These options are defined in the PXE [pxe] and EFI booting machine. These options are defined in the PXE [3] and EFI
[efi] specifications and are being documented in this draft for [4] specifications and are being documented in this draft for
completeness within the IETF. Comments about this Internet Draft completeness within the IETF. Comments about this Internet Draft
should be sent to the dhcwg@ietf.org mailing list. should be sent to the dhcwg@ietf.org mailing list.
2. Revision history 2. Revision history
Revision 00 to Revision 01 Revision 00 to Revision 01
o Changed all occurrences of "suboption" to "option". o Changed all occurrences of "suboption" to "option".
o Re-worded first sentence of Introduction to clarify that these o Re-worded first sentence of Introduction to clarify that these
options are in wide use by PXE clients. options are in wide use by PXE clients.
o Clarified external document references. o Clarified external document references.
o Added description of site specific options 128 through 135.
o Added description of use of options 128 through 135.
o Added IANA Considerations and Security Considerations sections. o Added IANA Considerations and Security Considerations sections.
Revision 01 to Revision 02
o Changed and extended description of use of options 128 through
135.
o Removed text on IANA registries since Informational.
3. Option Definitions 3. Option Definitions
There are three DHCP options [RFC2132]defined for use by PXE clients. There are three DHCP options [5] defined for use by PXE clients.
3.1 Client System Architecture Type Option Definition 3.1. Client System Architecture Type Option Definition
The format of the option is: The format of the option is:
Code Len 16-bit Type Code Len 16-bit Type
+----+---+------+------+ +----+-----+-----+-----+
| 93 | n | n1 | n2 | | 93 | n | n1 | n2 |
+----+---+------+------+ +----+-----+-----+-----+
Octet "n" MUST be an even number greater than zero. Clients that Octet "n" MUST be an even number greater than zero. Clients that
support more than one architecture type MAY include a list of these support more than one architecture type MAY include a list of these
types in their initial DHCP and PXE boot server packets. The list of types in their initial DHCP and PXE boot server packets. The list of
supported architecture types MAY be reduced in any packet exchange supported architecture types MAY be reduced in any packet exchange
between the client and server(s). Octets "n1" and "n2" encode a between the client and server(s). Octets "n1" and "n2" encode a 16-
16-bit architecture type identifier that describes the pre-boot bit architecture type identifier that describes the pre-boot runtime
runtime environment(s) of the client machine. environment(s) of the client machine.
As of the writing of this document the following pre-boot As of the writing of this document the following pre-boot
architecture types have been requested. architecture types have been requested.
Type Architecture Name Type Architecture Name
---- ----------------- ---- -----------------
0 Intel x86PC 0 Intel x86PC
1 NEC/PC98 1 NEC/PC98
2 EFI Itanium 2 EFI Itanium
3 DEC Alpha 3 DEC Alpha
4 Arc x86 4 Arc x86
5 Intel Lean Client 5 Intel Lean Client
6 EFI IA32 6 EFI IA32
This option must be present in all DHCP and PXE packets sent by PXE This option MUST be present in all DHCP and PXE packets sent by PXE
compliant clients and servers. compliant clients and servers.
3.2 Client Network Interface Identifier Option Definition 3.2. Client Network Interface Identifier Option Definition
The format of the option is: The format of the option is:
Code Len Type Major Minor Code Len Type Major Minor
+----+-----+----+-----+-----+ +----+-----+----+-----+-----+
| 94 | 3 | t | M | m | | 94 | 3 | t | M | m |
+----+-----+----+-----+-----+ +----+-----+----+-----+-----+
Octet "t" encodes a network interface type. For now the only Octet "t" encodes a network interface type. For now the only
supported value is 1 for UNDI (Universal Network Device Interface). supported value is 1 for UNDI (Universal Network Device Interface).
Octets "M" and "m" describe the interface revision. To encode the Octets "M" and "m" describe the interface revision. To encode the
UNDI revision of 2.11, "M" would set to 2 and "m" would be set to 11 UNDI revision of 2.11, "M" would be set to 2 and "m" would be set to
(0x0B). 11 (0x0B).
Revision Description Revision Description
-------- ----------- -------- -----------
< 2.00 LANDesk service agent boot ROMs. No PXE APIs. < 2.00 LANDesk service agent boot ROMs. No PXE APIs.
2.00 First generation PXE boot ROMs. (PXENV+) [pxe] 2.00 First generation PXE boot ROMs. (PXENV+) [3]
2.01 Second generation PXE boot ROMs. (!PXE) [pxe] 2.01 Second generation PXE boot ROMs. (!PXE) [3]
3.00 32/64-bit UNDI specification. (Alpha) [efi] 3.00 32/64-bit UNDI specification. (Alpha) [4]
EFI boot services driver only. No EFI runtime support. EFI boot services driver only. No EFI runtime support.
3.10 32/64-bit UNDI specification. (Beta) [efi] 3.10 32/64-bit UNDI specification. (Beta) [4]
First generation EFI runtime driver support. First generation EFI runtime driver support.
3.20 32/64-bit UNDI specification. (Release) [efi] 3.20 32/64-bit UNDI specification. (Release) [4]
Second generation EFI runtime driver support. Second generation EFI runtime driver support.
This option must be present in all DHCP and PXE packets sent by PXE This option MUST be present in all DHCP and PXE packets sent by PXE
compliant clients and servers. compliant clients and servers.
3.3 Client Machine Identifier Option Definition 3.3. Client Machine Identifier Option Definition
The format of the option is: The format of the option is:
Code Len Type Machine Identifier Code Len Type Machine Identifier
+----+-----+----+-----+ . . . +-----+ +----+-----+----+-----+ . . . +-----+
| 97 | n | t | | . . . | | | 97 | n | t | | . . . | |
+----+-----+----+-----+ . . . +-----+ +----+-----+----+-----+ . . . +-----+
Octet "t" describes the type of the machine identifier in the Octet "t" describes the type of the machine identifier in the
remaining octets in this option. 0 (zero) is the only defined value remaining octets in this option. 0 (zero) is the only defined value
for this octet at the present time and it describes the remaining for this octet at the present time and it describes the remaining
octets as a 16-octet GUID. Octet "n" is 17 for type 0. (One octets as a 16-octet GUID. Octet "n" is 17 for type 0. (One
definition of GUID can be found in Appendix A in the EFI definition of GUID can be found in Appendix A in the EFI
skipping to change at page 5, line 40 skipping to change at page 5, line 45
| 97 | n | t | | . . . | | | 97 | n | t | | . . . | |
+----+-----+----+-----+ . . . +-----+ +----+-----+----+-----+ . . . +-----+
Octet "t" describes the type of the machine identifier in the Octet "t" describes the type of the machine identifier in the
remaining octets in this option. 0 (zero) is the only defined value remaining octets in this option. 0 (zero) is the only defined value
for this octet at the present time and it describes the remaining for this octet at the present time and it describes the remaining
octets as a 16-octet GUID. Octet "n" is 17 for type 0. (One octets as a 16-octet GUID. Octet "n" is 17 for type 0. (One
definition of GUID can be found in Appendix A in the EFI definition of GUID can be found in Appendix A in the EFI
specification [efi].) specification [efi].)
This option must be present in all DHCP and PXE packets sent by PXE This option MUST be present in all DHCP and PXE packets sent by PXE
compliant clients and servers. compliant clients and servers.
3.4 Site Specific Options Being Requested By PXE Client 3.4. Options Requested by PXE Clients
All compliant PXE clients MUST include a request for DHCP options 128 All compliant PXE clients MUST include a request for DHCP options 128
through 135 in all DHCP and PXE packets. The format and contents of through 135 in all DHCP and PXE packets. The format and contents of
these options are NOT defined by the PXE specification. These these options are NOT defined by the PXE specification. These
options MAY be present in the DHCP and PXE boot server replies and options MAY be present in the DHCP and PXE boot server replies and
are meant for use by the downloaded network bootstrap programs. are meant for use by the downloaded network bootstrap programs.
These options are NOT used by the PXE boot ROMs. These options are NOT used by the PXE boot ROMs.
4. IANA Considerations As options 128-135 are not officially assigned for PXE use (previous
to November 2004 they were considered site-specific options, [6]),
use of these options may conflict with other uses of these options.
This document defines two new name spaces associated with PXE 4. Acknowledgements
compliant client machines: Client System Architecture Type and Client
Network Interface Identifier. IANA is requested to manage a registry
of values for these new name spaces, which are described in sections
2.1 and 2.2.
5. Security Considerations The authors thank Bernie Volz for valuable input.
5. IANA Considerations
This document has no actions for IANA.
6. Security Considerations
This document in and by itself provides no security, nor does it This document in and by itself provides no security, nor does it
impact existing security. impact existing security.
6 Normative References 7. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2131] Droms, R., "Dynamic Host Configuration Protocol", RFC [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
2131, March 1997. Levels", BCP 14, RFC 2119, March 1997.
[RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor [2] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131,
Extensions", RFC 2132, March 1997. March 1997.
[efi] Intel Corp., "Extensible Firmware Interface [3] Henry, M. and M. Johnston, "Preboot Execution Environment (PXE)
Specification", December 2002. Specification", September 1999,
<http://www.pix.net/software/pxeboot/archive/pxespec.pdf>.
http://developer.intel.com/technology/efi/main_specification.htm [4] Intel Corp., "Extensible Firmware Interface Specification",
December 2002, <http://developer.intel.com/technology/efi/
main_specification.htm>.
[pxe] Henry, M. and M. Johnston, "Preboot Execution Environment [5] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor
(PXE) Specification", September 1999. Extensions", RFC 2132, March 1997.
ftp://download.intel.com/labs/manage/wfm/download/pxespec.pdf [6] Volz, B., "Reclassifying Dynamic Host Configuration Protocol
version 4 (DHCPv4) Options", RFC 3942, November 2004.
Author's Address Authors' Addresses
Michael Johnston Michael Johnston
Intel Corporation Intel Corporation
MS. JF1-239 2111 NE 25th Ave. MS. JF1-239 2111 NE 25th Ave.
Hillsboro, OR 97124 Hillsboro, OR 97124
USA USA
Phone: +1 503-264-9703 Phone: +1 503-264-9703
EMail: michael.johnston@intel.com Email: michael.johnston@intel.com
Stig Venaas
University of Southampton
School of Electronics and Computer Science
Southampton, Hampshire SO17 1BJ
United Kingdom
Email: sv@ecs.soton.ac.uk
Intellectual Property Statement Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be on the procedures with respect to rights in RFC documents can be
 End of changes. 47 change blocks. 
76 lines changed or deleted 106 lines changed or added

This html diff was produced by rfcdiff 1.27, available from http://www.levkowetz.com/ietf/tools/rfcdiff/