Internet DRAFT - draft-ietf-dhc-dual-stack-merge
draft-ietf-dhc-dual-stack-merge
Dynamic Host Configuration Working S. Venaas
Group T. Chown
Internet-Draft University of Southampton
Expires: April 27, 2006 October 24, 2005
Dual-stack clients and merging of data from DHCPv4 and DHCPv6
draft-ietf-dhc-dual-stack-merge-01
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task 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
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
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on April 27, 2006.
Copyright Notice
Copyright (C) The Internet Society (2005).
Abstract
A node may have support for communications using both IPv4 and IPv6
protocols. Such a node may wish to obtain both IPv4 and IPv6
configuration settings via the Dynamic Host Configuration Protocol
(DHCP). This can be done by using the IPv4 and the IPv6 DHC
protocols respectively. This document considers mechanisms that
allow such a node to make use of the configuration data from both
protocols to obtain the desired common configuration.
Venaas & Chown Expires April 27, 2006 [Page 1]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Tools for merging . . . . . . . . . . . . . . . . . . . . . . 3
2.1 Host prefers IPv4 or IPv6 . . . . . . . . . . . . . . . . 3
2.2 Dual-stack or both DHC protocols client option . . . . . . 4
2.3 DUID and integrated DHCPv4/v6 server . . . . . . . . . . . 4
2.4 DHCPv6 option telling dual-stack client to use DHCPv4 . . 4
2.5 IPv4-mapped addresses in DHCPv6 options . . . . . . . . . 4
3. Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1 Use of preference rules . . . . . . . . . . . . . . . . . 4
3.2 Lists of mixed addresses . . . . . . . . . . . . . . . . . 5
3.3 Issues not solved . . . . . . . . . . . . . . . . . . . . 6
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 6
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. Informative References . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 7
Intellectual Property and Copyright Statements . . . . . . . . 8
Venaas & Chown Expires April 27, 2006 [Page 2]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
1. Introduction
The original specification of the Dynamic Host Configuration Protocol
(DHCP) was made with only IPv4 in mind. That specification has been
subsequently revised, up to the latest version of DHCP [1]. With the
arrival of IPv6, a new DHCP specification for IPv6 has been designed,
and published as DHCPv6 [2].
These protocols allow nodes to communicate via IPv4 or IPv6 to
retrieve configuration settings for operation in a managed
environment. While an IPv6 node may acquire address-related
configuration settings via IPv6 stateless address autoconfiguration
[3], such a node may wish to use stateless DHCPv6 [4] for other
administratively configured options, such as DNS or NTP.
In early IPv6 deployments, a dual-stack mode of operation is
typically used. There will thus be nodes that require both IPv4 and
IPv6 configuration settings. At the same time there may be IPv4-only
and IPv6-only nodes using these protocols. Issues related to this
have been described in [5]. This document discusses approaches
towards resolving these issues.
This initial revision does not attempt to describe any complete
solutions, but rather serve as a discussion point by describing some
of the possible methods that may be of use.
In this document, we refer to DHCP for IPv4 [1] as DHCPv4 and DHCP
for IPv6 [2] as DHCPv6.
The authgors would welcome input on these approaches.
2. Tools for merging
There are a number of different tools or methods that can be of use
in ensuring that IPv4-only, IPv6-only and dual-stack hosts each get
the information they need from DHCPv4, DHCPv6 or a combination of the
two.
2.1 Host prefers IPv4 or IPv6
The idea with a preference option of some kind is that a dual-stack
host may obtain information from both DHCPv4 and DHCPv6 but will
prefer one of them. So if a single valued option is received from
both servers it can use the preferred one. For a set (or unordered
list) it might use only the preferred result or mix them, while for
an ordered list it should probably use all, but put the preferred
first. The preference could be manually configured on the host or
obtained via either DHCPv4 or DHCPv6. The option would only be
Venaas & Chown Expires April 27, 2006 [Page 3]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
needed for one of them.
2.2 Dual-stack or both DHC protocols client option
A host could use a new DHCP option to tell the DHCP server (DHCPv4 or
DHCPv6) that it is dual-stack and has or will request configuration
for the other protocol. This can indicate to the server what
information the server needs to return to the client.
2.3 DUID and integrated DHCPv4/v6 server
DHCPv6 [2] uses a DHCP Unique Identifier (DUID). A client requesting
both IPv4 and IPv6, should use the same DUID for the two requests, as
described in [6] for use of DUIDs with IPv4. If the client requests
DHCPv4 first, then when it makes the DHCPv6 request, the server knows
what information the client previously learnt through DHCPv4 from the
observed DUID and could leave the duplicate information out from the
DHCPv6 reply. We are not sure whether this can be done if multiple
integrated servers are deployed, but it seems an interesting
approach, and a good usage for DUIDs for IPv4.
2.4 DHCPv6 option telling dual-stack client to use DHCPv4
A new option could be used by a DHCPv6 server to tell a dual-stack
client to request IPv4 information even if it has IPv4 addresses
(tell client to use DHCPINFORM).
2.5 IPv4-mapped addresses in DHCPv6 options
DHCPv6 options could contain IPv4 addresses written as IPv4-mapped
IPv6 addresses. This is not elegant, however.
3. Solutions
We will now discuss how the above tools might be used to solve some
of the issues in [5].
3.1 Use of preference rules
A simple preference rule as in Section 2.1 might be sufficient in
many cases. The perhaps most difficult problem is where the option
is a list of values, and one wishes to have a mix of IPv4 and IPv6
addresses where one does not want to list all of one IP type before
the other, or if one is preferred to the other in most cases but not
always. Lists of mixed addresses are discussed in Section 3.2.
Another solution could be to use FQDNs as option values whenever
possible. Then DHCPv4 and DHCPv6 might simply specify the same FQDN
Venaas & Chown Expires April 27, 2006 [Page 4]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
where the FQDN is registered in the DNS with both IPv4 and IPv6
addresses. The preference would then be determined by the host's
destination address selection rules. Some sites deploying IPv6
choose initially to use different FQDNs for IPv6, in which case this
would not work.
The preference rule is not sufficient if say IPv6 is generally
preferred, but IPv4 should preferred in some cases. One way of doing
this could be to have the client prefer IPv6 and make the DHCPv6
server omit IPv6 information for options where IPv4 is preferred.
The server could do this if by use of the option in Section 2.2 it
knows that the client will also get the IPv4 information. An IPv6-
only client, or one not requesting IPv4 configuration, should still
get all the IPv6 options. The administrator may manually configure a
DHCPv6 server to omit some of the IPv6 configuration for clients that
also obtain IPv4 information. A combined DHCPv4 and DHCPv6 server
might be able to determine this automatically. With different
servers it might help to have a single combined admin interface.
One issue with the above is that the server must only omit options if
it knows for sure that client will request and successfully obtain
both IPv4 and IPv6 information. There are two ways this might be
done. One is that the server is told by the client that it uses
both, by using the option in Section 2.2, possibly combined with the
option in Section 2.4 where the server tells the client to request
the other. Another possibly safer way is to make use of the DUID as
in Section 2.3 so that server knows that the client that previously
made a DHCPv6 request, now makes a DHCPv4 request. The latter should
work if a client generally prefering one protocol, uses DHCP for the
preferred protocol last. We feel the DUID approach is an elegant
one, and is a good use of the DUID concept that is now available for
both DHCPv4 and DHCPv6.
3.2 Lists of mixed addresses
As we said previously, the most difficult problem is when one has a
list of values, and one wishes to have a mix of IPv4 and IPv6
addresses where one does not want to list all of one IP type before
the other. We are not sure if this is necessary to solve. If it is,
the easiest solution might be to use IPv4-mapped addresses as in
Section 2.5 so that a mixed list of IPv4-mapped IPv6 addresses and
other IPv6 addresses can be passed in a DHCPv6 option. If this is
done it might be useful to have an option as described in Section 2.2
that tells the server that the client is dual-stack. This is not
elegant however, and one should certainly not pass mapped addresses
to an IPv6-only host.
Another issue with using a simple preference for lists, is that if a
Venaas & Chown Expires April 27, 2006 [Page 5]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
server is dual-stack with both IPv4 and IPv6 addresses, one may not
wish to have both the addresses in the list. For example, if one has
a nameserver with IPv4 address a4 and IPv6 address a6, and another
with IPv4 address b4, one may not want the list "a6, a4, b4", but
rather "a6, b4". Whether this is a problem may depend on whether the
list is processed sequentially and how long timeout there is before
trying the next in the list. If an integrated DHCPv4 and DHCPv6
server knows that a client has previously got the list "a6" via say
DHCPv6, it could choose to omit "a4" when the same client makes a
DHCPv4 query. It can detect that it is the same client using the
DUID as in Section 2.3. However if there are multiple integrated
servers the two requests may go to different servers. Another
alternative could be to use the option in Section 2.2.
3.3 Issues not solved
There are many issues in [5] that are not tackled by the above. We
have not looked at the issue of different people managing DHCPv4 and
DHCPv6 or the case where the node is statically configured with
information for one protocol while using DHCP for the other. Another
issue is what to do when initially only one IP protocol is enabled,
and the other is enabled later. There are other issues not
sufficiently tackled as well, we suggest reading [5] for the full
details. The methods presented here are just some preliminary ideas.
Through discussion in the DHC WG we will try to come up with
solutions that can resolve the issues. It may however not be
possible to come up with a complete solution to all of them.
3.4 Conclusion
We have proposed some initial ideas for solving the issue of merging
DHCP information available from DHCPv4 and DHCPv6 servers to IPv4-
only, IPv6-only or dual-stack nodes. We would welcome feedback on
these initial suggestions before progressing the document in more
detail, and tackling the additional issues described in the problem
statement draft. There are certainly useful tools for the task, in
particular DUID identifiers now available for DHCPv4 and DHCPv6.
4. IANA Considerations
This document has no actions for IANA.
5. Security Considerations
We are not aware of any new security issues as a result of any of the
described options, but this needs to be considered.
Venaas & Chown Expires April 27, 2006 [Page 6]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
6. Informative References
[1] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131,
March 1997.
[2] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M.
Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)",
RFC 3315, July 2003.
[3] Thomson, S. and T. Narten, "IPv6 Stateless Address
Autoconfiguration", RFC 2462, December 1998.
[4] Droms, R., "Stateless Dynamic Host Configuration Protocol (DHCP)
Service for IPv6", RFC 3736, April 2004.
[5] Chown, T., "DHCP: IPv4 and IPv6 Dual-Stack Issues",
draft-ietf-dhc-dual-stack-03 (work in progress), July 2005.
[6] Sommerfeld, B. and T. Lemon, "Node-Specific Client Identifiers
for DHCPv4", draft-ietf-dhc-3315id-for-v4-05 (work in progress),
June 2005.
Authors' Addresses
Stig Venaas
University of Southampton
School of Electronics and Computer Science
Southampton, Hampshire SO17 1BJ
United Kingdom
Email: sv@ecs.soton.ac.uk
Tim Chown
University of Southampton
School of Electronics and Computer Science
Southampton, Hampshire SO17 1BJ
United Kingdom
Email: tjc@ecs.soton.ac.uk
Venaas & Chown Expires April 27, 2006 [Page 7]
Internet-Draft Merging of DHCPv4 and DHCPv6 data October 2005
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
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
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
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
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Copyright Statement
Copyright (C) The Internet Society (2005). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Venaas & Chown Expires April 27, 2006 [Page 8]