draft-ietf-dhc-subnet-option-06.txt   rfc3011.txt 
Network Working Group G. Waters Network Working Group G. Waters
INTERNET-DRAFT Nortel Networks Request for Comments: 3011 Nortel Networks
July 2000 Category: Standards Track November 2000
The IPv4 Subnet Selection Option for DHCP
<draft-ietf-dhc-subnet-option-06.txt>
Friday, July 14, 2000, 2:07 PM
Status of this Memo
This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task The IPv4 Subnet Selection Option for DHCP
Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Status of this Memo
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."
The list of current Internet-Drafts can be accessed at This document specifies an Internet standards track protocol for the
http://www.ietf.org/ietf/1id-abstracts.txt Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
The list of Internet-Draft Shadow Directories can be accessed at Copyright Notice
http://www.ietf.org/shadow.html.
Copyright Notice
Copyright (C) The Internet Society (2000). All Rights Reserved. Copyright (C) The Internet Society (2000). All Rights Reserved.
Abstract Abstract
This memo defines a new DHCP option for selecting the subnet on which This memo defines a new Dynamic Host Configuration Protocol (DHCP)
to allocate an address. This option would override a DHCP server's option for selecting the subnet on which to allocate an address.
normal methods of selecting the subnet on which to allocate an address This option would override a DHCP server's normal methods of
for a client. selecting the subnet on which to allocate an address for a client.
Table of Contents Table of Contents
1. Introduction......................................................2 1. Introduction..................................................1
1.1. Motivational Example.........................................2 1.1. Motivational Example........................................2
2. Subnet Selection Option Definition................................3 2. Subnet Selection Option Definition............................3
3. Intellectual Property.............................................4 3. Intellectual Property.........................................4
4. IANA Considerations...............................................5 4. IANA Considerations...........................................4
5. Acknowledgements..................................................5 5. Acknowledgements..............................................5
6. Security Considerations...........................................5 6. Security Considerations.......................................5
7. References........................................................5 7. References....................................................5
8. Editor's Addresses................................................5 8. Editor's Addresses............................................6
9. Full Copyright Statement..........................................6 9. Full Copyright Statement......................................7
1. Introduction 1. Introduction
The Dynamic Host Configuration Protocol (DHCP) [RFC2131] provides a The Dynamic Host Configuration Protocol (DHCP) [RFC2131] provides a
framework for passing configuration information to hosts on a TCP/IP framework for passing configuration information to hosts on a TCP/IP
network. RFC 2132 [RFC2132] specifies DHCP option configuration network. RFC 2132 [RFC2132] specifies DHCP option configuration
information that may be carried in DHCP packets to/from the DHCP information that may be carried in DHCP packets to/from the DHCP
server and the DHCP client. This document specifies a new DHCP option. server and the DHCP client. This document specifies a new DHCP
option.
To select the subnet on which to allocate an address, the DHCP server To select the subnet on which to allocate an address, the DHCP server
determines the subnet from which the request originated, and then determines the subnet from which the request originated, and then
selects an address on the originating subnet or on a subnet that is on selects an address on the originating subnet or on a subnet that is
the same network segment as the originating subnet. The subnet from on the same network segment as the originating subnet. The subnet
which the request originates can be determined by: from which the request originates can be determined by:
o Using the subnet address of the giaddr field in the DHCP packet o Using the subnet address of the giaddr field in the DHCP packet
header, or if the giaddr field is zero; header, or if the giaddr field is zero;
o Using the subnet address of the local interface on which the DHCP o Using the subnet address of the local interface on which the DHCP
server received the packet. server received the packet.
This memo defines a new DHCP option, the subnet selection option, This memo defines a new DHCP option, the subnet selection option,
which allows the DHCP client to specify the subnet on which to which allows the DHCP client to specify the subnet on which to
allocate an address. This option takes precedence over the methods allocate an address. This option takes precedence over the methods
that the DHCP server uses to determine the subnet on which to select that the DHCP server uses to determine the subnet on which to select
an address. an address.
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 [RFC2119]. document are to be interpreted as described in [RFC2119].
1.1. Motivational Example 1.1. Motivational Example
An example of where this option could be useful is in a device (e.g.: An example of where this option could be useful is in a device (e.g.:
a RAS device) that is allocating addresses on behalf of its clients. a RAS device) that is allocating addresses on behalf of its clients.
In this case the device would be allocating addresses through DHCP and In this case the device would be allocating addresses through DHCP
then managing those addresses among its clients. and then managing those addresses among its clients.
In this scenario, the device is connected to a private "internal" In this scenario, the device is connected to a private "internal"
network on which the DHCP server would be located. The device is also network on which the DHCP server would be located. The device is
connected to one or more service providing "external" networks (i.e.: also connected to one or more service providing "external" networks
the networks that the device's clients are connected to). Furthermore, (i.e.: the networks that the device's clients are connected to).
the internal network is not IP connected to the external networks, Furthermore, the internal network is not IP connected to the external
although inside the device there is connectivity between the internal networks, although inside the device there is connectivity between
and external networks (e.g.: though the backplane). the internal and external networks (e.g.: though the backplane).
Recall that the device is allocating addresses for its clients on the Recall that the device is allocating addresses for its clients on the
external networks and that there is no IP connectivity between the external networks and that there is no IP connectivity between the
internal network and the external networks. The DHCP requests cannot internal network and the external networks. The DHCP requests cannot
originate from the external networks since packets cannot be routed originate from the external networks since packets cannot be routed
between the external network and the internal network. Thus, the DHCP between the external network and the internal network. Thus, the
requests must originate from the internal network. The problem with DHCP requests must originate from the internal network. The problem
originating the DHCP requests from the internal network is that the with originating the DHCP requests from the internal network is that
DHCP server will allocate addresses on the internal network's subnet, the DHCP server will allocate addresses on the internal network's
when what is required are addresses on the external subnets. The subnet, when what is required are addresses on the external subnets.
subnet selection option provides a solution to this problem. The subnet selection option provides a solution to this problem.
The device would send its DHCP request on the internal subnet, but The device would send its DHCP request on the internal subnet, but
would include the subnet selection option containing the address of would include the subnet selection option containing the address of
the external subnet on which it requires the address. The subnet the external subnet on which it requires the address. The subnet
selection option instructs the DHCP server to allocate the address on selection option instructs the DHCP server to allocate the address on
the requested subnet as opposed to the normal operation of allocating the requested subnet as opposed to the normal operation of allocating
the address on the subnet from which the DHCP request originated. the address on the subnet from which the DHCP request originated.
2. Subnet Selection Option Definition 2. Subnet Selection Option Definition
The subnet selection option is a DHCP option. The option contains a The subnet selection option is a DHCP option. The option contains a
single IPv4 address that is the address of a subnet. The value for the single IPv4 address that is the address of a subnet. The value for
subnet address is determined by taking any IPv4 address on the subnet the subnet address is determined by taking any IPv4 address on the
and ANDing that address with the subnet mask (i.e.: the network and subnet and ANDing that address with the subnet mask (i.e.: the
subnet bits are left alone and the remaining (address) bits are set to network and subnet bits are left alone and the remaining (address)
zero). When the DHCP server is configured to respond to this option, bits are set to zero). When the DHCP server is configured to respond
is allocating an address, and this option is present then the DHCP to this option, is allocating an address, and this option is present
server MUST allocate the address on either: then the DHCP server MUST allocate the address on either:
o the subnet specified in the subnet selection option, or; o the subnet specified in the subnet selection option, or;
o a subnet on the same network segment as the subnet specified in the o a subnet on the same network segment as the subnet specified in the
subnet selection option. subnet selection option.
The format of the option is: The format of the option is:
Code Len IPv4 Address Code Len IPv4 Address
+-----+-----+-----+-----+-----+-----+ +-----+-----+-----+-----+-----+-----+
| TBD | 4 | A1 | A2 | A3 | A4 | | 118 | 4 | A1 | A2 | A3 | A4 |
+-----+-----+-----+-----+-----+-----+ +-----+-----+-----+-----+-----+-----+
Servers configured to support this option MUST return an identical Servers configured to support this option MUST return an identical
copy of the option to any client that sends it, regardless of whether copy of the option to any client that sends it, regardless of whether
or not the client requests the option in a parameter request list. or not the client requests the option in a parameter request list.
Clients using this option MUST discard DHCPOFFER or DHCPACK packets Clients using this option MUST discard DHCPOFFER or DHCPACK packets
that do not contain this option. that do not contain this option.
This option does not require changes to operations or features of the This option does not require changes to operations or features of the
DHCP server other than to select the subnet on which to allocate an DHCP server other than to select the subnet on which to allocate an
address. For example, the handling of DHCPDISCOVER for an unknown address. For example, the handling of DHCPDISCOVER for an unknown
subnet should continue to operate unchanged. subnet should continue to operate unchanged.
When this option is present and the server is configured to support When this option is present and the server is configured to support
this option, the server MUST NOT offer an address that is not on the this option, the server MUST NOT offer an address that is not on the
requested subnet or network segment. Servers that do not understand requested subnet or network segment. Servers that do not understand
this option will allocate an address using their normal algorithms and this option will allocate an address using their normal algorithms
will not return this option in the DHCPOFFER or DHCPACK. In this case and will not return this option in the DHCPOFFER or DHCPACK. In this
the client will discard the DHCPOFFER or DHCPACK. Servers that case the client will discard the DHCPOFFER or DHCPACK. Servers that
understand this option but are administratively configured to ignore understand this option but are administratively configured to ignore
the option MUST ignore the option, use their normal algorithms to the option MUST ignore the option, use their normal algorithms to
allocate an address, and MUST NOT return this option in the DHCPOFFER allocate an address, and MUST NOT return this option in the DHCPOFFER
or DHCPACK. In this case the client will discard the DHCPOFFER or or DHCPACK. In this case the client will discard the DHCPOFFER or
DHCPACK. DHCPACK.
During an address renew, the DHCP server may send a DHCPACK directly During an address renew, the DHCP server may send a DHCPACK directly
to the allocated address, however packets from the DHCP server may not to the allocated address, however packets from the DHCP server may
be routable to the address. Thus, in all packets that the DHCP client not be routable to the address. Thus, in all packets that the DHCP
sends that contain the subnet selection option, the giaddr field in client sends that contain the subnet selection option, the giaddr
the BOOTP header MUST be set to an IPv4 address on which the DHCP field in the BOOTP header MUST be set to an IPv4 address on which the
client will accept DHCP packets (e.g.: the address on the subnet DHCP client will accept DHCP packets (e.g.: the address on the subnet
connected to the internal network). connected to the internal network).
The IPv4 address to which a DHCP server sends a reply to MUST be the The IPv4 address to which a DHCP server sends a reply to MUST be the
same as it would chose when this option is not present. same as it would chose when this option is not present.
3. Intellectual Property 3. Intellectual Property
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 or other rights that might be claimed to pertain intellectual property or other rights that might be claimed to
to the implementation or use of the technology described in this pertain to the implementation or use of the technology described in
document or the extent to which any license under such rights might or this document or the extent to which any license under such rights
might not be available; neither does it represent that it has made any might or might not be available; neither does it represent that it
effort to identify any such rights. Information on the IETF's has made any effort to identify any such rights. Information on the
procedures with respect to rights in standards-track and standards- IETF's procedures with respect to rights in standards-track and
related documentation can be found in BCP-11. standards-related documentation can be found in BCP-11.
Copies of claims of rights made available for publication and any Copies of claims of rights made available for publication and any
assurances of licenses to be made available, or the result of an assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this specification such proprietary rights by implementers or users of this
can be obtained from the IETF Secretariat. specification can be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights which may cover technology that may be required to practice rights which may cover technology that may be required to practice
this standard. Please address the information to the IETF Executive this standard. Please address the information to the IETF Executive
Director. Director.
4. IANA Considerations 4. IANA Considerations
IANA has assigned a value of TBD for the DHCP option code described in IANA has assigned a value of 118 for the DHCP option code described
this document. in this document.
5. Acknowledgements 5. Acknowledgements
This document is the result of work undertaken the by DHCP working This document is the result of work undertaken the by DHCP working
group. Thanks to Ted Lemon, Tim Aston and Ralph Droms for their group. Thanks to Ted Lemon, Tim Aston and Ralph Droms for their
helpful comments in this work. helpful comments in this work.
6. Security Considerations W. Mark Townsley and Pratik Gupta originally published a subnet
selection option Internet Draft in July 1997. The work in this
document was not based on the original work but it does achieve the
same goals.
6. Security Considerations
DHCP currently provides no authentication or security mechanisms. DHCP currently provides no authentication or security mechanisms.
Potential exposures to attack are discussed is section 7 of the Potential exposures to attack are discussed is section 7 of the
protocol specification [RFC2131]. protocol specification [RFC2131].
The subnet selection option allows for the DHCP client to specify the The subnet selection option allows for the DHCP client to specify the
subnet on which to allocate an address. This would allow a client to subnet on which to allocate an address. This would allow a client to
perform a more complete address-pool exhaustion attack since the perform a more complete address-pool exhaustion attack since the
client would no longer be restricted to attacking address-pools on client would no longer be restricted to attacking address-pools on
just its local subnet. Under the current DHCP security model there is just its local subnet.
no methods available to circumvent this type of attack.
7. References Servers that implement the subnet selection option MUST by default
disable use of the feature; it must specifically be enabled through
configuration. Moreover, a server SHOULD provide the ability to
selectively enable use of the feature under restricted conditions,
e.g., by enabling use of the option only from explicitly configured
client-ids, enabling its use only by clients on a particular subnet,
or restricting the subnets (as indicated in the subnet selection
option) from which addresses may be requested.
7. References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", RFC 2119, BCP 14, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2131] Droms, R. "Dynamic Host Configuration Protocol", RFC 2131, [RFC2131] Droms, R. "Dynamic Host Configuration Protocol", RFC 2131,
March 1997. March 1997.
[RFC2132] Alexander, S. and Droms, R., "DHCP Options and BOOTP Vendor [RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor
Extensions", RFC 2132, March 1997. Extensions", RFC 2132, March 1997.
8. Editor's Addresses 8. Editor's Address
Glenn Waters Glenn Waters
Nortel Networks Nortel Networks
310-875 Carling Avenue, 310-875 Carling Avenue,
Ottawa, Ontario K1S 5P1 Ottawa, Ontario K1S 5P1
Canada Canada
Phone: +1 613-798-4925 Phone: +1 613-765-0249
Email: gww@nortelnetworks.com EMail: gww@nortelnetworks.com
9. Full Copyright Statement 9. Full Copyright Statement
Copyright (C) The Internet Society (2000). All Rights Reserved. Copyright (C) The Internet Society (2000). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published and or assist in its implementation may be prepared, copied, published
distributed, in whole or in part, without restriction of any kind, and distributed, in whole or in part, without restriction of any
provided that the above copyright notice and this paragraph are kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of developing Internet organizations, except as needed for the purpose of
Internet standards in which case the procedures for copyrights defined developing Internet standards in which case the procedures for
in the Internet Standards process must be followed, or as required to copyrights defined in the Internet Standards process must be
translate it into languages other than English. followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns. revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
 End of changes. 49 change blocks. 
124 lines changed or deleted 126 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/