Internet DRAFT - draft-liu-v6ops-dhcpv6-slaac-guidance
draft-liu-v6ops-dhcpv6-slaac-guidance
V6OPS B. Liu
Internet-Draft Huawei Technologies
Intended status: Informational R. Bonica
Expires: April 30, 2015 Juniper Networks
T. Yang
China Mobile
October 27, 2014
DHCPv6/SLAAC Interaction Operational Guidance
draft-liu-v6ops-dhcpv6-slaac-guidance-03
Abstract
The IPv6 Neighbor Discovery (ND) Protocol [RFC4861] specifies an
ICMPv6 Router Advertisement (RA) message. The RA message contains
three flags that indicate which address autoconfiguration mechanisms
are available to on-link hosts. These are the M, O and A flags. The
M, O and A flags are all advisory, not prescriptive.
In [I-D.ietf-v6ops-dhcpv6-slaac-problem], test results show that in
several cases the M, O and A flags elicit divergent host behaviors,
which might cause some operational problems. This document aims to
provide some operational guidance to eliminate the impact caused by
divergent host behaviors as much as possible.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on April 30, 2015.
Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved.
Liu, et al. Expires April 30, 2015 [Page 1]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Operational Guidance . . . . . . . . . . . . . . . . . . . . 3
2.1. Always Turn RAs On . . . . . . . . . . . . . . . . . . . 3
2.2. Guidance for DHCPv6/SLAAC Provisioning Scenarios . . . . 3
2.2.1. DHCPv6-only . . . . . . . . . . . . . . . . . . . . . 3
2.2.2. SLAAC-only . . . . . . . . . . . . . . . . . . . . . 4
2.2.3. DHCPv6/SLAAC Co-existence . . . . . . . . . . . . . . 4
2.3. Guidance for Renumbering . . . . . . . . . . . . . . . . 5
2.3.1. Adding a New Address from another Address
Configuration Mechanisms . . . . . . . . . . . . . . 5
2.3.2. Switching one Address Configuration Mechanism to
another . . . . . . . . . . . . . . . . . . . . . . . 6
3. Security Considerations . . . . . . . . . . . . . . . . . . . 6
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
6.1. Normative References . . . . . . . . . . . . . . . . . . 7
6.2. Informative References . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
The IPv6 Neighbor Discovery (ND) Protocol [RFC4861] specifies an
ICMPv6 Router Advertisement (RA) message. The RA message contains
three flags that indicate which address autoconfiguration mechanisms
are available to on-link hosts. These are the M, O and A flags. The
M, O and A flags are all advisory, not prescriptive.
In [I-D.ietf-v6ops-dhcpv6-slaac-problem], test results show that in
several cases the M, O and A flags elicit divergent host behaviors,
which might cause some operational problems. This document aims to
provide some operational guidance to eliminate the impact caused by
divergent host behaviors as much as possible.
This document does not intent to cover the topic of selection between
RA and DHCPv6 [RFC3315] for the overlapped functions. There always
Liu, et al. Expires April 30, 2015 [Page 2]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
are arguments about what should be done through RA options or through
DHCPv6 options. For this general issue, draft
[I-D.yourtchenko-ra-dhcpv6-comparison] could be referred.
2. Operational Guidance
2.1. Always Turn RAs On
Currently, turning RAs on is actually a basic requirement for running
IPv6 networks since only RAs could advertise default route(s) for the
end nodes. And if the nodes want to communicate with each other on
the same link via DHCPv6-configured addresses, they also need to be
advertised with L flag set in RAs. So for current networks, an IPv6
network could NOT run without RAs, unless the network only demands a
communication via link-local addresses.
2.2. Guidance for DHCPv6/SLAAC Provisioning Scenarios
2.2.1. DHCPv6-only
In IPv4, there is only one method (DHCPv4) for automatically
configuring the hosts. Many network operations/mechanisms,
especially in enterprise networks, are built around this central-
managed model. So it is reasonable for people who are accustomed to
DHCPv4-only deployment still prefer DHCPv6-only in IPv6 networks.
Besides, some networks just prefer central management of all IP
addressing. These networks may want to assign addresses only via
DHCPv6.
This can be accomplished by sending RAs that indicate DHCPv6 is
available (M=1), installing DHCPv6 servers or DHCPv6 relays on all
links, and setting A=0 in the Prefix Information Options of all
prefixes in the RAs. (Instead of forcing the A flag off, simply not
including any PIO in RAs could also make the same effect). But
before doing this, the administrators need to be sure that every node
in their intended management scope supports DHCPv6.
Note that RAs are still necessary in order for hosts to be able to
use these addresses. This is for two reasons:
o If there is no RA, some hosts will not attempt to obtain address
configuration via DHCPv6 at all.
o DHCPv6 can assign addresses but not routing. Routing can be
implemented on hosts by means of accepting and implementing
information from RA messages containing default-route, Prefix
Information Option with O=1, or Route Information Option, or by
configuring manual routing. Without routing, IPv6 addresses won't
Liu, et al. Expires April 30, 2015 [Page 3]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
be used for communication outside the host. Thus, for example, if
there is no RA and no static routing, then addresses assigned by
DHCPv6 cannot be used even for communication between hosts on the
same link.
Also note that unlike SLAAC [RFC4862], DHCPv6 is not a strict
requirement for IPv6 hosts [RFC6434], and some nodes do not support
DHCPv6. Thus, this model can only be used if all the hosts that need
IPv6 connectivity support DHCPv6.
2.2.2. SLAAC-only
In contrast with DHCPv6-only, some scenarios might be suitable for
SLAAC-only which allows minimal administration burden and node
capability requirement.
The administrators MUST turn the A flag on, and MUST turn M flag off.
Note that some platforms (e.g. Windows 8) might still initiate
DHCPv6 session regardless of M flag off. But since there is no
DHCPv6 service available, the only problem is that there would be
some unnecessary traffic.
2.2.3. DHCPv6/SLAAC Co-existence
- Scenarios of DHCPv6/SLAAC Co-existence
* For provisioning redundancy: If the administrators want all
nodes at least could configure a global scope address, then
they could turn A flag and M flag both on in case some nodes
only support one of the mechanisms. For example, some hosts
might only support SLAAC; while some hosts might only support
DHCPv6 due to manual/mistaken configurations.
* For different provisioning: the two address configuration
mechanisms might provide two addresses for the nodes
respectively. For example, SLAAC-configured address is for
basic connectivity and another address configured by DHCPv6 is
for a specific service.
- Cautions
* Notice that enabling both DHCPv6 and SLAAC would cause one host
to configure more IPv6 addresses. Typically, there would be
one more DHCPv6-configured address than SLAAC-only
configuration; and two more addresses based on SLAAC and
privacy extension than DHCPv6-only configuration. Too many
addresses might cause ND cache overflow problem in some
Liu, et al. Expires April 30, 2015 [Page 4]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
situations (please refer to Section 3.4 of
[I-D.liu-v6ops-running-multiple-prefixes] for details).
* For provisioning redundancy scenario, there is a concern that
SLAAC/DHCPv6 addresses based on the same prefix might cause
some applications confusing. [Open Question] Call for real
experiences on this issues.
* Besides address configuration, DNS can also be configured both
by SLAAC and DHCPv6. If the DNS information in RAs and DHCPv6
are different, the host might confuse. So in terms of
operation, the operators should make sure DNS configuration in
RAs and DHCPv6 are the same.
2.3. Guidance for Renumbering
This document only considers the renumbering cases where DHCPv6/SLAAC
interaction is involved. These renumbering operations need the A/M
flags transition which might cause unpredictable host behaviors. Two
renumbering cases are discussed as the following.
2.3.1. Adding a New Address from another Address Configuration
Mechanisms
o Adding a DHCPv6 Address for a SLAAC-configured Host
As discussed in Section 2.2.3, some operating systems that
having configured SLAAC addersses would NOT care about the
newly added DHCPv6 provision unless the current SLAAC address
lifetime is expired. In theory, one possible way is to stop
advertising RAs and wait the SLAAC addresses expired (this
makes the hosts return to the initial stage), then advertise
RAs again with the M flag set, so that the host would configure
SLAAC and DHCPv6 addresses simultaneously. However, there
would be some outage period during this operation, which might
be unacceptable for many situations. Thus, It is better for
the administrators to carefully plan the network provisioning
so that to make SLAAC and DHCPv6 available simultaneously
(through RA with M=1) at the initial stage rather than
configuring one and then configuring another.
o Adding a SLAAC Address for a DHCPv6-configured Host
As tested in [I-D.ietf-v6ops-dhcpv6-slaac-problem].), current
mainstream operating systems all support this renumbering
operation. The only thing need to care about is to make sure
the M flag is on in the RAs, since some operating systems would
immediately release the DHCPv6 addresses if M flag is off.
Liu, et al. Expires April 30, 2015 [Page 5]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
2.3.2. Switching one Address Configuration Mechanism to another
o DHCPv6 to SLAAC
This operation is supported by all the tested operating systems
in [I-D.ietf-v6ops-dhcpv6-slaac-problem]. However, the
behaviors are different. As said above, if A flag is on while
M flag is off, a flash switching renumbering would happen on
some operating systems. So while turning the A flag on, it is
recommended to retain the M flag on and stop the DHCPv6 server
to response the renew messages so that the DHCPv6 addresses
could be released when the lifetimes expired.
o SLAAC to DHCPv6
This operation is also supported by all the tested operating
systems. And the behaviors are the same since no operating
systems would immediatly release the SLAAC addresses when A
flag is off. However, for safe operation, while turning the M
flag on, it is also recommended to retain the A flag on and
stop advertising RAs so that the SLAAC addresses could be
released when the lifetimes expired.
3. Security Considerations
No more security considerations than the Neighbor Discovery protocol
[RFC4861].
4. IANA Considerations
This draft does not request any IANA action.
5. Acknowledgements
Valuable comments were received from Sheng Jiang and Brian E
Carpenter to initiate the draft. Some texts in Section 2.2.1 were
based on Lorenzo Colitti and Mikael Abrahamsson's proposal. There
were also comments from Erik Nordmark, Ralph Droms, John Brzozowski,
Andrew Yourtchenko and Wesley George to improve the draft. The
authors would like to thank all the above contributors.
This document was produced using the xml2rfc tool [RFC2629]. (This
document was initiallly prepared using 2-Word-v2.0.template.dot. )
Liu, et al. Expires April 30, 2015 [Page 6]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
6. References
6.1. Normative References
[RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629,
June 1999.
[RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
"Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
September 2007.
[RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless
Address Autoconfiguration", RFC 4862, September 2007.
[RFC6434] Jankiewicz, E., Loughney, J., and T. Narten, "IPv6 Node
Requirements", RFC 6434, December 2011.
6.2. Informative References
[I-D.ietf-v6ops-dhcpv6-slaac-problem]
Liu, B., Jiang, S., Bonica, R., Gong, X., and W. Wang,
"DHCPv6/SLAAC Address Configuration Interaction Problem
Statement", draft-ietf-v6ops-dhcpv6-slaac-problem-02 (work
in progress), October 2014.
[I-D.liu-v6ops-running-multiple-prefixes]
Liu, B., Jiang, S., and Y. Bo, "Considerations for Running
Multiple IPv6 Prefixes", draft-liu-v6ops-running-multiple-
prefixes-02 (work in progress), October 2014.
[I-D.yourtchenko-ra-dhcpv6-comparison]
Yourtchenko, A., "A comparison between the DHCPv6 and RA
based host configuration", draft-yourtchenko-ra-
dhcpv6-comparison-00 (work in progress), November 2013.
[RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
and M. Carney, "Dynamic Host Configuration Protocol for
IPv6 (DHCPv6)", RFC 3315, July 2003.
Authors' Addresses
Bing Liu
Huawei Technologies
Q14, Huawei Campus, No.156 Beiqing Road
Hai-Dian District, Beijing, 100095
P.R. China
Email: leo.liubing@huawei.com
Liu, et al. Expires April 30, 2015 [Page 7]
Internet-Draft DHCPv6/SLAAC Interaction Guidance-03 October 2014
Ron Bonica
Juniper Networks
Sterling, Virginia
20164
USA
Email: rbonica@juniper.net
Tianle Yang
China Mobile
32, Xuanwumenxi Ave.
Xicheng District, Beijing 100053
P.R. China
Email: yangtianle@chinamobile.com
Liu, et al. Expires April 30, 2015 [Page 8]