From 4bfd864f10b68b71482b35c818559068ef8d5797 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 27 Nov 2024 20:54:24 +0100 Subject: doc: Add RFC documents --- doc/rfc/rfc6656.txt | 1347 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1347 insertions(+) create mode 100644 doc/rfc/rfc6656.txt (limited to 'doc/rfc/rfc6656.txt') diff --git a/doc/rfc/rfc6656.txt b/doc/rfc/rfc6656.txt new file mode 100644 index 0000000..70f2751 --- /dev/null +++ b/doc/rfc/rfc6656.txt @@ -0,0 +1,1347 @@ + + + + + + +Internet Engineering Task Force (IETF) R. Johnson +Request for Comments: 6656 K. Kinnear +Category: Informational M. Stapp +ISSN: 2070-1721 Cisco Systems, Inc. + July 2012 + + + Description of Cisco Systems' Subnet Allocation Option for DHCPv4 + +Abstract + + This memo documents a DHCPv4 option that currently exists and was + previously privately defined for the operation and usage of the Cisco + Systems' Subnet Allocation Option for DHCPv4. The option is passed + between the DHCPv4 Client and the DHCPv4 Server to request dynamic + allocation of a subnet, give specifications of the subnet(s) + allocated, and report usage statistics. This memo documents the + current usage of the option in agreement with RFC 3942, which + declares that any preexisting usages of option numbers in the range + 128-223 should be documented and that the working group will try to + officially assign those numbers to those options. + +Status of This Memo + + This document is not an Internet Standards Track specification; it is + published for informational purposes. + + This document is a product of the Internet Engineering Task Force + (IETF). It represents the consensus of the IETF community. It has + received public review and has been approved for publication by the + Internet Engineering Steering Group (IESG). Not all documents + approved by the IESG are a candidate for any level of Internet + Standard; see Section 2 of RFC 5741. + + Information about the current status of this document, any errata, + and how to provide feedback on it may be obtained at + http://www.rfc-editor.org/info/rfc6656. + + + + + + + + + + + + + + +Johnson, et al. Informational [Page 1] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +Copyright Notice + + Copyright (c) 2012 IETF Trust and the persons identified as the + document authors. All rights reserved. + + This document is subject to BCP 78 and the IETF Trust's Legal + Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info) in effect on the date of + publication of this document. Please review these documents + carefully, as they describe your rights and restrictions with respect + to this document. Code Components extracted from this document must + include Simplified BSD License text as described in Section 4.e of + the Trust Legal Provisions and are provided without warranty as + described in the Simplified BSD License. + + This document may contain material from IETF Documents or IETF + Contributions published or made publicly available before November + 10, 2008. The person(s) controlling the copyright in some of this + material may not have granted the IETF Trust the right to allow + modifications of such material outside the IETF Standards Process. + Without obtaining an adequate license from the person(s) controlling + the copyright in such materials, this document may not be modified + outside the IETF Standards Process, and derivative works of it may + not be created outside the IETF Standards Process, except to format + it for publication as an RFC or to translate it into languages other + than English. + + + + + + + + + + + + + + + + + + + + + + + + + +Johnson, et al. Informational [Page 2] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +Table of Contents + + 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 + 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 4 + 3. Subnet Allocation Option Format . . . . . . . . . . . . . . . 5 + 3.1. Subnet-Request Suboption Format . . . . . . . . . . . . . 5 + 3.2. Subnet-Information Suboption Format . . . . . . . . . . . 7 + 3.2.1. Subnet Prefix Information Block Format . . . . . . . . 8 + 3.3. Subnet-Name Suboption Format . . . . . . . . . . . . . . . 9 + 3.4. Suggested-Lease-Time Suboption Format . . . . . . . . . . 10 + 4. Requesting Allocation of a Subnet . . . . . . . . . . . . . . 10 + 4.1. Client DHCPDISCOVER Message . . . . . . . . . . . . . . . 11 + 4.2. Server DHCPOFFER Message . . . . . . . . . . . . . . . . . 11 + 4.3. Client DHCPREQUEST Message . . . . . . . . . . . . . . . . 12 + 4.4. Server DHCPACK Message . . . . . . . . . . . . . . . . . . 13 + 5. Client Renewal of Subnet Lease . . . . . . . . . . . . . . . . 13 + 5.1. Client RENEW DHCPREQUEST Message . . . . . . . . . . . . . 13 + 5.2. Server RENEW DHCPREQUEST Response . . . . . . . . . . . . 14 + 5.3. Client DHCPRELEASE Message . . . . . . . . . . . . . . . . 14 + 5.4. Server DHCPFORCERENEW Message . . . . . . . . . . . . . . 15 + 6. Client Requesting Previously Allocated Subnet Information . . 15 + 6.1. Initial Client DHCPDISCOVER Message . . . . . . . . . . . 15 + 6.2. Initial Server DHCPOFFER Response . . . . . . . . . . . . 16 + 6.3. Additional Client DHCPDISCOVER Messages . . . . . . . . . 16 + 6.4. Additional Server DHCPOFFER Responses . . . . . . . . . . 16 + 7. DHCP Server Subnet Allocation Method . . . . . . . . . . . . . 17 + 8. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 + 8.1. Example 1 . . . . . . . . . . . . . . . . . . . . . . . . 17 + 8.2. Example 2 . . . . . . . . . . . . . . . . . . . . . . . . 19 + 9. Differences from DHCPv6 Prefix Delegation . . . . . . . . . . 21 + 10. Security Considerations . . . . . . . . . . . . . . . . . . . 22 + 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 22 + 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23 + 12.1. Normative References . . . . . . . . . . . . . . . . . . . 23 + 12.2. Informative References . . . . . . . . . . . . . . . . . . 23 + Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . . 23 + + + + + + + + + + + + + + + +Johnson, et al. Informational [Page 3] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +1. Introduction + + This memo documents a DHCP option [RFC2132], the Subnet Allocation + option, that was developed by Cisco and allows a DHCP Client to + allocate a subnet given information from a DHCP Server. This + protocol makes use of DHCP option number 220, one of the option + numbers reclassified by [RFC3942]. That RFC specifies in Section 4, + procedure 2, "Vendors that currently use one or more of the + reclassified options have 6 months following this RFC's publication + date to notify the DHC WG and IANA that they are using particular + options numbers and agree to document that usage in an RFC". This + memo serves as that documentation. The DHC WG has had no input into + any of the details of the protocol operation and makes no statement + about the correctness or any other aspect of the protocol. The WG + also has seen no interest in further implementation or deployment of + this protocol other than privately, and therefore has decided to + publish this document solely for informational purposes. + + The Subnet Allocation option provides a straightforward way to + allocate a subnet from DHCP, useful for a simple Dial-in Aggregation + box, or to implement a Hierarchical chain of DHCP Servers, each one + in turn leasing one or more subnets to the next DHCP Server down the + chain. This option is specified in such a way as to use one DHCP + option number, while using suboption numbers for each function. + +2. Conventions + + The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", + "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this + document are to be interpreted as described in [RFC2119]. + + This document also uses the following terms: + + DHCP Client: DHCP Client or "Client" is an Internet host using DHCP + to obtain configuration parameters such as a network address. + + DHCP Server: A DHCP Server or "Server" is an Internet host that + returns configuration parameters to DHCP Clients. + + + + + + + + + + + + + +Johnson, et al. Informational [Page 4] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +3. Subnet Allocation Option Format + + 0 1 2 + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + | Code | Len | Flags | Suboptions ... + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + + Code = Subnet Allocation option code (1 octet): 220 + Len = Length of the entire option including all suboptions + (1 octet) + Flags = Various flags: (None currently defined) + + One or more suboptions may be specified as described below. + +3.1. Subnet-Request Suboption Format + + 0 1 2 3 + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 1 | Len | Flags :i:h| Prefix | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + Len = Length of the suboption (always 2 for this suboption) + (1 octet) + Flags = Flags field. (all unused bits must be zero) + + 'h' = Hierarchical flag + 1 : Client will be allocating addresses from this subnet. + 0 : Client will be relaying DHCP requests to the Server + from this subnet. + 'i' = Information flag + 1 : Client is seeking information about previously + allocated subnets. + 0 : Client is seeking a new subnet allocation. + + Prefix = Network prefix length requested + (0 means no suggested length is given) (1 octet) + + The DHCP Server SHOULD NOT include the Subnet Request suboption in + any replies to the DHCP Client. Enough information will be present + in the Subnet-Information suboption, such that the Subnet Request + suboption is not needed in replies to the Client. + + The DHCP Server SHOULD allocate a subnet with prefix length [RFC4632] + less than or equal to the "Prefix" field length specified in the + request. In other words, a subnet containing a number of addresses + at least the size indicated by the prefix length requested and + + + +Johnson, et al. Informational [Page 5] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + possibly more. The DHCP Server MAY allocate a subnet with a prefix + length greater than that specified in the request (or a subnet with a + number of addresses less than requested), but this is not encouraged. + + A "Prefix" field size of 0 MAY be specified by the DHCP Client. In + this case, no suggested prefix length is given. + + Multiple Subnet-Request suboptions in a DHCP packet indicate that + multiple subnets are being requested. Note that multiple occurrences + of this suboption MUST NOT be concatenated in the sense of [RFC3396]. + + Each Subnet-Request suboption MUST result in no more than one Subnet- + Information suboption in the DHCPOFFER message from the Server, and + may result in no Subnet-Information suboptions. + + The Client MAY also include the Subnet-Information suboption in order + to request a particular subnet. In this case, the Client SHOULD only + include one Subnet-Request suboption, since it would otherwise be + unclear which Subnet-Information suboption referred to which Subnet- + Request suboption. Multiple subnet requests can be made by sending + multiple DHCPDISCOVER packets. + + Setting the 'h' flag to 1 indicates the Client will be allocating + addresses from the allocated subnet(s) itself. This can be thought + of as a "Hierarchical DHCP" design in that control of allocation for + the subnet(s) will be passed to the Client. + + Setting the 'h' flag to 0 indicates the Client wants the DHCP Server + to retain control over allocation of addresses from the subnet(s). + Any address allocation requests on the subnet will be relayed back to + the DHCP Server. + + Setting the 'i' flag to 1 indicates the Client is NOT seeking + allocation of any subnets, but is simply seeking information from the + Server as to what subnet(s) have been allocated (or reserved) for + this Client. If the 'i' flag is set to 1, then the "Prefix" field + SHOULD be set to 0 and MUST be ignored by the Server. In this case, + the conversation between the Client and the Server will only progress + to the DHCPOFFER packet from the Server, giving the information, as + described in Section 6 below. + + Any undefined flags (those other than 'i' and 'h', mentioned above) + should be ignored by the DHCP Server. + + + + + + + + +Johnson, et al. Informational [Page 6] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +3.2. Subnet-Information Suboption Format + + 0 1 2 + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + | 2 | Len | Flags :c:s| SP1, SP2, ... + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + + + Len = Length of the suboption (min. length of 8) (1 octet) + Flags = Various flags that apply to ALL Subnet Prefix + Information fields specified in this suboption. + Unused flags must be zero. + + 'c' : Client flag (explained below) + 1 : This information is in response to a Client request + (or has been echoed back by the Client, when asking + for the next previously allocated subnet from the + Server). + 0 : Otherwise. + 's' : Server flag (explained below) + 1 : Server has additional subnet information for this + Client. + 0 : Otherwise. + + SP1, SP2, ... Subnet Prefix Information blocks as specified below + (variable size) + + Setting the 'c' flag to 1 indicates this Subnet-Information suboption + is in response to a Client request for information from the Server as + to what subnet(s) have been allocated. This flag is used in response + to a Subnet-Request suboption with the 'i' flag set and should be 0 + in other Server responses. Note, the flag is echoed back from the + Client to the Server when requesting the "next previously allocated + subnet". Another way to think of the 'c' bit would be that it + indicates that the subnet information contained in this suboption + does not represent a new allocation by the Server or a new request + for allocation by the Client, but instead represents previously + allocated subnet information. + + Setting the 's' flag to 1 indicates the Server has additional subnet + information for the Client. + + Any undefined flags (those other than 'c' and 's', mentioned above) + should be ignored by the DHCP Server. + + + + + + +Johnson, et al. Informational [Page 7] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + The Subnet-Information suboption is used by the DHCP Server in order + to return information as to what subnets are offered (in the case of + a DHCPOFFER packet) or allocated (in the case of a DHCPACK packet). + As is indicated above, multiple subnets may be returned in one + Subnet-Information suboption. + + The Subnet-Information suboption is also used by the DHCP Client in + order to request allocation of specific subnets in a DHCPREQUEST + packet. In this case, the "Network", "Prefix", and "Flags" fields + contained in the associated Subnet Prefix Information blocks MUST NOT + be changed from the information that was received in the DHCPOFFER + packet from the Server. The Client MAY, however, use multiple + Subnet-Information suboptions in order to request subnets that were + originally specified by the Server inside one Subnet-Information + suboption. + +3.2.1. Subnet Prefix Information Block Format + + 0 1 2 3 + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Network | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Prefix | Flags :h:d| Stat-len | Optional stats... + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + + Network = IPv4 network number (4 octets) + Prefix = Prefix length (1 octet) + Flags = Flags field (Undefined bits must be zero) (1 octet) + + 'd' = Deprecate flag (explained below) + 1 : Deprecation of this subnet is requested. + 0 : No deprecation is needed. + + 'h' = Hierarchical flag (explained below) + 1 : Client will be allocating addresses from this subnet. + 0 : Client will be relaying DHCP requests to the Server + from this subnet. + + Stat-len = Length of the optional statistics information field + (zero if no statistics are included) (1 octet) + + The 'd' flag may only be returned by the Server to the Client (inside + a DHCPACK packet, in response to a DHCP RENEW). Its presence means + that the Client should prepare to give up the subnet. For example, + if the Client is assigning addresses from this subnet to other + Clients, it should cease doing so immediately and should not renew + + + +Johnson, et al. Informational [Page 8] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + any leases when Clients ask for renewal. As soon as all addresses in + the subnet are unallocated, the Client should send a DHCPRELEASE + message to the Server, including a Subnet Prefix Information block + for the subnet in order to release the subnet. The format of this + message is described farther below. + + The 'h' flag tells the Client how the Server intends for the Client + to use the allocated subnet. It is interpreted in the same manner as + that in the Subnet-Request suboption. In response to a Subnet- + Request, the Server should normally specify the 'h' flag in the same + manner as it was in the Subnet-Request suboption from the Client. + The Server MAY, however, change the 'h' flag from that specified in + the Subnet-Request suboption if it has been configured to override + the Client's request. + + Any undefined flags (those other than 'd' and 'h', mentioned above) + should be ignored by the DHCP Server. + + If any usage statistics information is to be included, then the + "Stat-len" field specifies the number of bytes of statistics + information that is included. See below for more information. If no + statistics information is included, then this byte MUST be zero. The + "Stat-len" field SHOULD always be zero when this suboption is sent by + the DHCP Server. The usage statistics information is intended for + use only to report usage statistics from the Client to the Server. + +3.2.1.1. Subnet Usage Statistics + + The Subnet-Information suboption may also include usage statistics + information. If this information is included, then the "Stat-len" + (Statistics length) field MUST be set to the number of bytes of + statistics information that is being included. The statistics + information MUST be in the following form and order: + + 0 1 + 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | High water | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Currently in use | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Unusable | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + "High water" refers the to "high-water mark" of allocated addresses + within the subnet. That is, the largest number of addresses that + were ever allocated at one time from the subnet. + + + + +Johnson, et al. Informational [Page 9] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + "Currently in use" refers to the number of addresses currently + allocated in the subnet. + + "Unusable" refers to the number of addresses that are currently + unusable for any reason (such as a Client returning a DHCPDECLINE, or + finding the address already in use). + + Additional statistics may be added to this option in the future. If + so, they MUST be appended immediately after the already defined + statistics fields. All statistics fields MUST remain in the same + order. Use the all ones value (0xffff) in order to skip reporting a + number for a particular field. Fewer fields may be included than + what is specified above; for example, if "Stat-len" is "4", then the + "Unusable" field has not been included. All fields that are included + MUST remain in order specified here. + +3.3. Subnet-Name Suboption Format + + 0 1 + 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + | 3 | Len | Name ... + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + + Len = length of the suboption (min. length of 1) (1 octet) + + The Subnet-Name suboption may be used in order to pass a subnet name + to the Server for use during allocation. This name may be used for + any purpose but is intended to tell the Server something extra about + the needed subnet; for example, "sales department", "customer 1002", + "address pool FOO", or some such. The "name" should NOT be NULL + terminated since the "len" field already specifies the length of the + name. The "Name" in this suboption MUST be given using UTF-8 + [RFC3629]. + +3.4. Suggested-Lease-Time Suboption Format + + 0 1 2 3 + 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 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 4 | Len (4) | t1 | t2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | t3 | t4 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + Len = length of the suboption (always 4 for this suboption) (1 + octet) + + + + +Johnson, et al. Informational [Page 10] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + The Suggested-Lease-Time suboption MAY be included by the Server in + order to suggest the lease time to be used by the Client when + allocating addresses from the subnet allocated. The 4-octet value of + the lease time is in the same format as that of the "IP Address Lease + Time" option (option 51), as described in [RFC2132]. + + If included, this suboption MUST appear only once. (Inclusion of + multiple such suboptions would result in ambiguity as to which + applied to which subnet.) If different suggested lease times are + needed, the Server SHOULD, instead, reply with only one offered + subnet and should set the "Server flag" in the Subnet-Information + suboption to indicate to the Client that it should send another + subnet request to gather the others. + + The Client SHOULD use a lease time, when allocating addresses from + the subnet, that is the lesser of the remaining lease time of the + subnet itself and the Suggested-Lease-Time suboption. + +4. Requesting Allocation of a Subnet + +4.1. Client DHCPDISCOVER Message + + The DHCP Client creates a DHCPDISCOVER message including the Subnet + Allocation option, and its set of suboptions, to request allocation + of a subnet. The DHCP Client should include the Subnet-Request + suboption, specifying the prefix length of the subnet requested. The + 'h' bit should be set to 1 if the Client intends to control + allocation of addresses within the subnet itself, or 0 if the Server + should retain control of addresses within the subnet. More than one + Subnet Allocation option may appear in a DHCPDISCOVER message; + however, the Client SHOULD limit the number of requests, noting that + the DHCP replies will need to include the Subnet-Information + suboption, which takes up more space than the Subnet-Request + suboption. + + If more than one subnet is being requested, multiple Subnet-Request + suboptions MAY be included or multiple DHCPDISCOVER messages MAY be + sent instead. The prefix length field of each Subnet-Request + suboption MUST be either 0, or in the range of 1 to 30 inclusive. + + The DHCP "IP address lease time" option (code 51) MAY be included in + the DHCPDISCOVER message to specify the lease time the Client is + requesting for the subnet. If not present, no suggested lease time + is given. + + The DHCP "Client ID" option (code 61) MAY be included in the + DHCPDISCOVER message as it may be used by the Server in performing + the subnet allocation. + + + +Johnson, et al. Informational [Page 11] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +4.2. Server DHCPOFFER Message + + Upon receiving a DHCPDISCOVER containing the Subnet Allocation + option, the DHCP Server SHOULD respond with a DHCPOFFER message + including the Subnet-Information suboption in order to specify the + subnet(s) that it is willing to allocate to the Client in order to + fulfill the request(s). + + The Server need not reserve the subnets that are being offered, but + SHOULD not offer the same subnets to another DHCP Client until a + reasonable time period (implementation dependent) has passed. (This + is similar to normal DHCP address allocation.) + + The Server MUST NOT include the Subnet-Request suboption in the + DHCPOFFER. The same information is already present in the Subnet + Information suboption(s) that SHOULD be included in the DHCPOFFER. + + The Server SHOULD also include the IP address lease time option + (option 51) in the DHCPOFFER message. This gives the lease time for + all subnets given in all Subnet-Request suboptions contained in the + DHCPOFFER message. The Server MAY also include the Renewal and/or + Rebinding options in order to further control the "T1" and "T2" lease + timers of the Client. There MUST be exactly one IP address lease + time (and optionally one Rebinding and/or one Renewal option) in the + DHCPOFFER message. + + The Server MAY set the "Server flag" ('s') to 1 to indicate that it + would like to allocate one or more additional subnet(s) to the + Client. This indicates that the Client should send another + DHCPDISCOVER message specifying a prefix length field, P, of zero in + order to request the additional subnet allocation(s) information. + This may be necessary if the subnets are to be allocated with + different lease times, for example. + + The "Client flag" ('c') MUST be set to 0 to indicate this is a Server + response to a Client request for a new subnet allocation and not a + response to a request for information about already allocated + subnets. + + If the packet contains a Subnet Allocation option, the Server SHOULD + set the DHCP yiaddr value to all zeros (0.0.0.0) and the Client MUST + ignore fields having to do with address assignment. In other words, + a DHCP packet exchange cannot provide subnet allocation and address + assignment simultaneously. + + + + + + + +Johnson, et al. Informational [Page 12] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +4.3. Client DHCPREQUEST Message + + When sending a DHCPREQUEST, the Client MUST NOT modify any fields of + any Subnet-Information suboptions received from the Server. However, + the Client MAY choose not to include some Subnet-Information + suboptions when issuing the DHCPREQUEST. Subnet-Request suboptions + MUST NOT be included in the DHCPREQUEST message; only the Subnet- + Information suboption(s) should be included. + +4.4. Server DHCPACK Message + + The DHCP Server, upon receipt of the Client's DHCPREQUEST message, + MAY refuse allocation of any subnets (for example, if they have been + allocated elsewhere in the meantime); however, since the Server + should have set aside the subnets offered for a short period of time, + and since the Client should have requested the subnets within a short + period of time after receiving the offer(s) from the Server(s), this + last minute rejection should be rare. The DHCP Server MUST NOT + change the network number(s) or prefix length(s); however, it MAY + remove some Subnet-Information suboptions from the list. + + The Server SHOULD include the IP address lease time option specifying + the lease period for all subnet(s) in the DHCPACK. All subnets + allocated in one DHCP message will have the same lease time, and only + one IP address lease time option must appear in the DHCP message. + + If the Server has internal information that states that the Client + should be allocated more subnets than were requested, the Server MAY + set the 's' bit in the last Subnet-Information suboption to indicate + that the Client needs to request more subnets (as described above). + + The allocable unit is the tuple (network number, prefix length). + Multiple subnets may be allocated in one DHCPACK; however, since + there can be only one Lease-time option, each subnet allocated is + assigned the same lease time. Each subnet lease tuple (network + number, prefix length) MAY be renewed or released individually. + +5. Client Renewal of Subnet Lease + +5.1. Client RENEW DHCPREQUEST Message + + The Client MUST renew all subnets allocated with a lease time in much + the same manner as renewing an allocated IP address. Renewal timers + need not be set in exactly the same manner, however. If Renewal + and/or Rebinding options were included in the DHCPACK of the subnet + allocation, then these "T1" and "T2" timers should be used just as + they would be in the case of address allocation timers. + + + + +Johnson, et al. Informational [Page 13] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + The DHCPREQUEST message MUST include a Subnet-Information suboption + for which the Client is seeking renewal of the lease. This Subnet- + Information suboption may optionally include subnet usage statistics, + as described above in Section 3.2 ("Subnet-Information Suboption + Format"). + + The subnet network number field ("Network") and subnet prefix length + field ("Prefix") MUST agree with the values as they were originally + allocated to the Client by the Server. In any of the statistics + fields (High water, Currently in use, Unusable), a value of all ones + (0xffff) SHOULD be used if the Client has no information to report + for a statistic. + +5.2. Server RENEW DHCPREQUEST Response + + The Server MAY respond to a subnet RENEW with either a DHCPACK or + DHCPNAK response. If a DHCPNAK response is given, the Client MUST + immediately stop using the subnet(s) specified and, if possible, + notify all Clients with addresses allocated from this subnet that + their addresses are no longer valid. The Client MAY, of course, send + a DHCPDISCOVER message containing the Subnet Allocation option and + the Subnet-Request suboption in order to acquire another subnet for + use. In general, the Server should ask the Client to deprecate + subnets by using the 'd' bit of the Subnet-Information suboption in a + DHCPACK message (see below). + + If a DHCPACK response is given, the "Deprecate" ('d') bit of the + Flags field in the Subnet-Information suboption may also be set. + This indicates the DHCP Client should prepare to stop using this + subnet. If the Client is allocating IP addresses for other Clients + from this subnet (e.g., via DHCP), the Client SHOULD immediately stop + allocating such addresses. Once all allocated addresses in the + subnet have been released, the Client SHOULD send a DHCPRELEASE + message, including the Subnet-Information suboption (with optional + usage statistics) in order to release the subnet(s) back to the + Server. + +5.3. Client DHCPRELEASE Message + + The DHCP Client SHOULD send a DHCPRELEASE message in order to release + allocated subnet(s) back to the Server when it is finished using + them. This message MUST NOT include the Subnet-Request suboption, + but MUST include one or more Subnet-Information suboptions, and may + optionally include usage statistics. + + The Client MUST release the same subnet(s) of the same prefix length + ("Prefix"), as were originally allocated. The Client MAY release a + subset of the subnets that were allocated originally. In other + + + +Johnson, et al. Informational [Page 14] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + words, the allocable unit is the tuple (network number, prefix + length). Multiple subnets may be allocated in one DHCPACK; however, + each subnet MAY be released individually. + +5.4. Server DHCPFORCERENEW Message + + The DHCP Server MAY issue a DHCPFORCERENEW [RFC3203] message + containing the Subnet Allocation option and the Subnet-Information + suboption. Upon receiving this message, the DHCP Client MUST issue a + DHCPREQUEST message to the DHCP Server in order to renew the lease on + the subnet mentioned. No other subnets allocated to the Client are + affected. As is the case with all DHCP RENEW messages, the Client + may include subnet usage information in the Subnet-Information + suboption in order to report subnet usage statistics, or set the + "Stat-len" field to 0 if no statistics are to be reported. + + If the Server responds to this DHCPREQUEST with a DHCPNAK message, + then the Client MUST immediately stop using the subnet(s) and, if + possible, notify all Clients with addresses allocated from this/these + subnet(s) that their addresses are no longer valid. The Client MAY, + of course, send a DHCPDISCOVER message containing the Subnet + Allocation option and the Subnet-Request suboption in order to + acquire another subnet for use. + +6. Client Requesting Previously Allocated Subnet Information + + A DHCP Client MAY request from the DHCP Server a list of what subnets + are currently allocated to the Client. This may be used to recover + from a restart if the Client does not have local storage in order to + retain the information itself. (For an example of this, see + Section 8.2 below.) + +6.1. Initial Client DHCPDISCOVER Message + + The DHCP Client DHCPDISCOVER message, when used to discover already + allocated subnet information, SHOULD contain a Subnet-Request + suboption with the "Prefix" field set to 0 and with the 'i' flag set + to 1 to indicate that the Client is seeking already allocated subnet + information from the Server. No Subnet-Information suboptions should + be included in this message. Note, no Subnet-Information suboption + is included in this message, since the Client would not know of any + subnet to request at that point. + + This DHCPDISCOVER message MAY be unicast to a particular DHCP Server, + or broadcast in the normal fashion. + + + + + + +Johnson, et al. Informational [Page 15] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +6.2. Initial Server DHCPOFFER Response + + Any DHCP Server that has allocated subnets to the Client SHOULD + respond to the DHCPDISCOVER message with a DHCPOFFER message. The + DHCPOFFER message should contain one or more Subnet-Information + suboption(s) telling the prefix of the subnet(s) allocated to the + Client. + + The Server SHOULD, internally, retain an ordered list of subnets that + are allocated to each Client. In response to an initial DHCPDISCOVER + message requesting allocated subnet information (i.e., one with the + 'i' flag set to 1, but not carrying a Subnet-Information suboption), + the Server returns in the DHCPOFFER message the subnet information + for the first subnet(s) from this list. If the end of the list has + been reached, then the 's' bit of the last Subnet-Information + suboption included in the message MUST be set to 0. If there are + more subnets in the list, the 's' bit MUST be set to 1 to indicate to + the Client that more information is available. Since this + information is in response to a Client request for previously + allocated subnet information, the 'c' bit MUST be set to 1. + +6.3. Additional Client DHCPDISCOVER Messages + + The Client, upon receiving any Server DHCPOFFER messages containing + Subnet Information suboption information with the 'c' ("Client") bit + set, SHOULD gather the network number ("Network") and prefix length + ("Prefix") information from the message. + + If the 's' bit is set in the last of the Subnet-Information + suboptions included in the message, then the Client SHOULD construct + a new DHCPDISCOVER message containing the Subnet Allocation option + and the last Subnet-Information suboption from the Server's message. + This message SHOULD then be sent back to the same DHCP Server + originating the DHCPOFFER message. The 'c' and 's' bits MUST retain + the same settings they had from the Server's DHCPOFFER message and + the network number ("Network") and prefix length ("Prefix") fields + MUST be unaltered as well. + + If the 's' bit in all of the Subnet-Information suboptions from the + Server was 0, then it indicates the Server has no more information + about subnets allocated to the Client. + +6.4. Additional Server DHCPOFFER Responses + + The Server, upon receiving from a Client an additional DHCPDISCOVER + message for allocated subnet information retrieval, with the 'i' flag + set to 1 and containing one or more Subnet Information suboptions + with the 'c' and the 's' bits set, MUST use the network number + + + +Johnson, et al. Informational [Page 16] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + ("Network") and prefix length ("Prefix") fields contained in the last + such Subnet Information suboption. This is in order to locate the + position in the internal table of allocated subnets for this Client. + Then, the Server MUST return an DHCPOFFER message containing a + Subnet-Information suboption giving information about the next set of + subnets allocated to this Client. If this finishes the list in the + table for this Client, then the 's' bit MUST be set to 0 to indicate + there is no more information. Any Subnet Information suboptions + encountered without both the 'c' and 's' bits set should be ignored + by the Server. + +7. DHCP Server Subnet Allocation Method + + The actual method of allocating subnets on the DHCP Server, as well + as the configuration of what networks may be subnetted and how, is + left up to the implementation. + +8. Examples + + Only the Subnet Allocation option and accompanying suboptions are + displayed in these examples. All other fields in the DHCP messages + are described in [RFC2131]. + +8.1. Example 1 + + A DHCP Client requesting a subnet with prefix length 24 from which + the Client will allocate addresses to other Clients. The Server + responds with an allocation of exactly the size requested: + + The Client sends a DHCPDISCOVER message including a Subnet Allocation + option with the Subnet-Request suboption: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 5 | 0 | 1 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 |0|0| 24 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + The Server responds with a DHCPOFFER message including a Subnet + Allocation option with a Subnet-Information suboption, offering the + subnet 10.0.1.0/24. + + + + + + + + + + +Johnson, et al. Informational [Page 17] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | 0 |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 1 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + The Client sends a DHCPREQUEST including a Subnet Allocation option + with a Subnet-Information suboption: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | 0 |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 1 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + The Server responds with a DHCPACK message including a Subnet + Allocation option with a Subnet-Information suboption: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | 0 |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 1 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + Later, the Client sends a DHCPRELEASE message including a Subnet + Allocation option with a Subnet-Information suboption: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | 0 |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 1 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + + +Johnson, et al. Informational [Page 18] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +8.2. Example 2 + + A DHCP Client requesting two subnets, each with prefix length 24: + + The Client sends a DHCPDISCOVER message including a Subnet Allocation + option with a Subnet-Request suboption: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 9 | 0 | 1 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 |0|0| 24 | 1 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 |0|0| 24 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + The Server responds with a DHCPOFFER message including a Subnet + Allocation option with a Subnet-Information suboption: + + The DHCPOFFER specifies one subnet of size 24 and one subnet of size + 28. + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 18 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 15 | |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | 10 | 0 | 3 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | 28 | |0|0| 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + The Client sends a DHCPREQUEST message including a Subnet Allocation + option with a Subnet-Information suboption: + + The Client decides that the subnet of size 28 is not sufficient so it + doesn't include that subnet in the DHCPREQUEST message. + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + + +Johnson, et al. Informational [Page 19] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + The Server responds with a DHCPACK message including a Subnet + Allocation option with a Subnet-Information suboption: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + Later, the Client sends a DHCPREQUEST message in order to renew the + lease on the one subnet and includes subnet usage information. It + reports that a maximum of 10 addresses were allocated from the subnet + since the last report, 7 addresses are currently allocated, and 2 + addresses were found to be unusable. + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 17 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 14 | |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 6 | 0 | 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 7 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + The Server responds with a DHCPACK message; however, it signals to + the Client that the subnet should be deprecated. + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|1| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + The Client reloads at this point and, upon completion of the reload, + sends a DHCPDISCOVER asking for information about all subnets that + were allocated to it. + + + + +Johnson, et al. Informational [Page 20] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 5 | 0 | 1 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | |1|0| 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + + The Server responds with a DHCPOFFER, giving the subnet information + about the one subnet that is allocated to the Client. Also, the + Server specifies that the one allocated subnet should be immediately + deprecated. Note that the 's' ("Server") bit is 0, thus indicating + that there is no more information available for this Client. + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | 2 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | |1|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|1| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + + The Client responds with a DHCPRELEASE message after having + deprecated the subnet: + + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 220 | 11 | 0 | SIS | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 8 | |0|0| 10 | 0 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 2 | 0 | 24 | |0|0| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | 0 | + +-+-+-+-+-+-+-+-+ + +9. Differences from DHCPv6 Prefix Delegation + + The following differences may be noticed between Subnet Allocation as + described in this document and DHCPv6 Prefix Delegation as described + in [RFC3633]: + + o This option does not use anything like an "IA_PD" as is used in + DHCPv6. + + o If the Server cannot allocate a subnet, it remains silent, instead + of returning a special response saying nothing is available. + + + + + +Johnson, et al. Informational [Page 21] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + + o DHCPv6 Prefix Delegation has no mechanism for returning subnet/ + prefix usage statistics. + + o DHCPv6 has no equivalent to the "subnet deprecation" flag as + described here. + + o DHCPv6 Prefix Delegation makes no mention of what Client actions + should result from receiving a DHCPNAK during a RENEW of a + delegation. + + o DHCPv6 has no equivalent of the subnet allocation "Network name" + suboption, which may be used by the Server for various purposes, + such as to specify a pool to use when allocating a subnet. + + o DHCPv6 Prefix Delegation corresponds to "Hierarchical Subnet + Allocation" (setting the 'h' flag in the Prefix Information + block). There is no v6 equivalent of clearing the 'h' flag, in + which the Server retains authority over allocation of addresses + from the subnet. + + o DHCPv6 Prefix Delegation has nothing to correspond to the + Suggested-Lease-Time suboption. + +10. Security Considerations + + Potential exposures to attack are discussed in Section 7 of the DHCP + protocol specification [RFC2131]. The Subnet Allocation option can + be used to hoard all allocable subnets on a network. + + Implementations should consider using the DHCP Authentication option + [RFC3118] in order to provide a higher level of security if it is + deemed necessary in their environment. + +11. IANA Considerations + + IANA has assigned DHCP option number 220 for this option, in + accordance with [RFC3942]. + + No assignment of values for the suboption codes need be made at this + time. New values may only be defined by IETF Consensus, as described + in [RFC5226]. Basically, this means that they are defined by RFCs + approved by the IESG. + + + + + + + + + +Johnson, et al. Informational [Page 22] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +12. References + +12.1. 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 2131, March 1997. + + [RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor + Extensions", RFC 2132, March 1997. + + [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO + 10646", STD 63, RFC 3629, November 2003. + + [RFC3942] Volz, B., "Reclassifying Dynamic Host Configuration + Protocol version 4 (DHCPv4) Options", RFC 3942, + November 2004. + + [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an + IANA Considerations Section in RFCs", BCP 26, RFC 5226, + May 2008. + +12.2. Informative References + + [RFC3118] Droms, R. and W. Arbaugh, "Authentication for DHCP + Messages", RFC 3118, June 2001. + + [RFC3203] T'Joens, Y., Hublet, C., and P. De Schrijver, "DHCP + reconfigure extension", RFC 3203, December 2001. + + [RFC3396] Lemon, T. and S. Cheshire, "Encoding Long Options in the + Dynamic Host Configuration Protocol (DHCPv4)", RFC 3396, + November 2002. + + [RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic + Host Configuration Protocol (DHCP) version 6", RFC 3633, + December 2003. + + [RFC4632] Fuller, V. and T. Li, "Classless Inter-domain Routing + (CIDR): The Internet Address Assignment and Aggregation + Plan", BCP 122, RFC 4632, August 2006. + + + + + + + + +Johnson, et al. Informational [Page 23] + +RFC 6656 Cisco Systems' DHCP Subnet Alloc Option July 2012 + + +Appendix A. Acknowledgments + + The authors gratefully acknowledge the contributions of Jay + Kumarasamy. + +Authors' Addresses + + Richard A. Johnson + Cisco Systems, Inc. + 170 W. Tasman Dr. + San Jose, CA 95134 + US + + Phone: +1 408 526 4000 + EMail: raj@cisco.com + + + Kim Kinnear + Cisco Systems, Inc. + 170 W. Tasman Dr. + San Jose, CA 95134 + US + + Phone: +1 408 526 4000 + EMail: kkinnear@cisco.com + + + Mark Stapp + Cisco Systems, Inc. + 170 W. Tasman Dr. + San Jose, CA 95134 + US + + Phone: +1 408 526 4000 + EMail: mjs@cisco.com + + + + + + + + + + + + + + + + +Johnson, et al. Informational [Page 24] + -- cgit v1.2.3