draft-ietf-6man-addr-select-opt-11.txt | draft-ietf-6man-addr-select-opt-12.txt | |||
---|---|---|---|---|
6man Working Group A. Matsumoto | 6man Working Group A. Matsumoto | |||
Internet-Draft T. Fujisaki | Internet-Draft T. Fujisaki | |||
Intended status: Standards Track NTT | Intended status: Standards Track NTT | |||
Expires: February 08, 2014 T. Chown | Expires: March 25, 2014 T. Chown | |||
University of Southampton | University of Southampton | |||
August 07, 2013 | September 21, 2013 | |||
Distributing Address Selection Policy using DHCPv6 | Distributing Address Selection Policy using DHCPv6 | |||
draft-ietf-6man-addr-select-opt-11.txt | draft-ietf-6man-addr-select-opt-12.txt | |||
Abstract | Abstract | |||
RFC 6724 defines default address selection mechanisms for IPv6 that | RFC 6724 defines default address selection mechanisms for IPv6 that | |||
allow nodes to select an appropriate address when faced with multiple | allow nodes to select an appropriate address when faced with multiple | |||
source and/or destination addresses to choose between. RFC 6724 | source and/or destination addresses to choose between. RFC 6724 | |||
allows for the future definition of methods to administratively | allows for the future definition of methods to administratively | |||
configure the address selection policy information. This document | configure the address selection policy information. This document | |||
defines a new DHCPv6 option for such configuration, allowing a site | defines a new DHCPv6 option for such configuration, allowing a site | |||
administrator to distribute address selection policy overriding the | administrator to distribute address selection policy overriding the | |||
skipping to change at page 1, line 40 | skipping to change at page 1, line 40 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on February 08, 2014. | This Internet-Draft will expire on March 25, 2014. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2013 IETF Trust and the persons identified as the | Copyright (c) 2013 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 27 | skipping to change at page 2, line 27 | |||
the copyright in such materials, this document may not be modified | the copyright in such materials, this document may not be modified | |||
outside the IETF Standards Process, and derivative works of it may | outside the IETF Standards Process, and derivative works of it may | |||
not be created outside the IETF Standards Process, except to format | not be created outside the IETF Standards Process, except to format | |||
it for publication as an RFC or to translate it into languages other | it for publication as an RFC or to translate it into languages other | |||
than English. | than English. | |||
1. Introduction | 1. Introduction | |||
[RFC6724] describes default algorithms for selecting an address when | [RFC6724] describes default algorithms for selecting an address when | |||
a node has multiple destination and/or source addresses to choose | a node has multiple destination and/or source addresses to choose | |||
from by using an address selection policy. In Section 2 of RFC 6724, | from by using an address selection policy. This specification | |||
it is suggested that the default policy table may be administratively | defines a new DHCPv6 option for configuring the default policy table. | |||
configured to suit the specific needs of a site. This specification | ||||
defines a new DHCPv6 option for such configuration. | ||||
Some problems were identified with the default address selection | Some problems were identified with the default address selection | |||
policy as originally defined in [RFC3484]. As a result, RFC 3484 was | policy as originally defined in [RFC3484]. As a result, RFC 3484 was | |||
updated and obsoleted by [RFC6724]. While this update corrected a | updated and obsoleted by [RFC6724]. While this update corrected a | |||
number of issues identifed from operational experience, it is | number of issues identifed from operational experience, it is | |||
unlikely that any default policy will suit all scenarios, and thus | unlikely that any default policy will suit all scenarios, and thus | |||
mechanisms to control the source address selection policy will be | mechanisms to control the source address selection policy will be | |||
necessary. Requirements for those mechanisms are described in | necessary. Requirements for those mechanisms are described in | |||
[RFC5221], while solutions are discussed in | [RFC5221], while solutions are discussed in | |||
[I-D.ietf-6man-addr-select-considerations]. Those documents have | [I-D.ietf-6man-addr-select-considerations]. Those documents have | |||
helped shape the improvements in the default address selection | helped shape the improvements in the default address selection | |||
algorithm in [RFC6724] as well as the requirements for the DHCPv6 | algorithm in [RFC6724] as well as the requirements for the DHCPv6 | |||
option defined in this specification. | option defined in this specification. | |||
1.1. Conventions Used in This Document | This option's concept is to serve as a hint for a node about how to | |||
behave in the network. Ultimately, while the node's administrator | ||||
can control how to deal with the received policy information, the | ||||
implementation SHOULD follow the method described below uniformly, to | ||||
ease troubleshooting and to reduce operational costs. | ||||
1.1. Conventions Used in This Document | ||||
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.2. Terminology | 1.2. Terminology | |||
This document uses the terminology defined in [RFC2460] and the | This document uses the terminology defined in [RFC2460] and the | |||
DHCPv6 specification defined in [RFC3315] | DHCPv6 specification defined in [RFC3315] | |||
2. Address Selection options | 2. Address Selection options | |||
skipping to change at page 4, line 9 | skipping to change at page 4, line 14 | |||
A: Automatic Row Addition flag. This flag toggles the Automatic | A: Automatic Row Addition flag. This flag toggles the Automatic | |||
Row Addition flag at client hosts, which is described in section | Row Addition flag at client hosts, which is described in section | |||
2.1 of [RFC6724]. If this flag is set to 1, it does not change | 2.1 of [RFC6724]. If this flag is set to 1, it does not change | |||
client host behavior, that is, a client MAY automatically add | client host behavior, that is, a client MAY automatically add | |||
additional site-specific rows to the policy table. If set to 0, | additional site-specific rows to the policy table. If set to 0, | |||
the Automatic Row Addition flag is disabled, and a client SHOULD | the Automatic Row Addition flag is disabled, and a client SHOULD | |||
NOT automatically add rows to the policy table. If the option | NOT automatically add rows to the policy table. If the option | |||
contains a POLICY TABLE option, this flag is meaningless, and | contains a POLICY TABLE option, this flag is meaningless, and | |||
automatic row addition SHOULD NOT be performed against the | automatic row addition SHOULD NOT be performed against the | |||
distributed policy table. | distributed policy table. This flag SHOULD be set to 0 only | |||
when the Automatic Row Addition at client hosts is harmful for | ||||
site-specific reasons. | ||||
P: Privacy Preference flag. This flag toggles the Privacy | P: Privacy Preference flag. This flag toggles the Privacy | |||
Preference flag on client hosts, which is described in section 5 | Preference flag on client hosts, which is described in section 5 | |||
of [RFC6724]. If this flag is set to 1, it does not change | of [RFC6724]. If this flag is set to 1, it does not change | |||
client host behavior, that is, a client will prefer temporary | client host behavior, that is, a client will prefer temporary | |||
addresses [RFC4941]. If set to 0, the Privacy Preference flag | addresses [RFC4941]. If set to 0, the Privacy Preference flag | |||
is disabled, and a client will prefer public addresses. | is disabled, and a client will prefer public addresses. This | |||
flag SHOULD be set to 0 only when the temporary addresses should | ||||
not be preferred for site-specific reasons. | ||||
POLICY TABLE OPTIONS: Zero or more Address Selection Policy Table | POLICY TABLE OPTIONS: Zero or more Address Selection Policy Table | |||
options, as described below. This option corresponds to a row | options, as described below. This option corresponds to a row | |||
in the policy table defined in section 2.1 of [RFC6724]. | in the policy table defined in section 2.1 of [RFC6724]. | |||
0 1 2 3 | 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 | 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| OPTION_ADDRSEL_TABLE | option-len | | | OPTION_ADDRSEL_TABLE | option-len | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
skipping to change at page 5, line 10 | skipping to change at page 5, line 18 | |||
label: An 8-bit unsigned integer; this value is for correlation of | label: An 8-bit unsigned integer; this value is for correlation of | |||
source address prefixes and destination address prefixes. This | source address prefixes and destination address prefixes. This | |||
field is used to deliver a label value in the [RFC6724] policy | field is used to deliver a label value in the [RFC6724] policy | |||
table. | table. | |||
precedence: An 8-bit unsigned integer; this value is used for | precedence: An 8-bit unsigned integer; this value is used for | |||
sorting destination addresses. This field is used to to deliver | sorting destination addresses. This field is used to to deliver | |||
a precedence value in [RFC6724] policy table. | a precedence value in [RFC6724] policy table. | |||
prefix-len: An 8-bit unsigned integer; the number of leading bits in | prefix-len: An 8-bit unsigned integer; the number of leading bits in | |||
the prefix that are valid. The value ranges from 0 to 128. | the prefix that are valid. The value ranges from 0 to 128. If | |||
an option with a prefix length greater than 128 is included, the | ||||
whole Address Selection option MUST be ignored. | ||||
prefix: A variable-length field containing an IP address or the | prefix: A variable-length field containing an IP address or the | |||
prefix of an IP address. An IPv4-mapped address [RFC4291] must | prefix of an IP address. An IPv4-mapped address [RFC4291] must | |||
be used to represent an IPv4 address as a prefix value. This | be used to represent an IPv4 address as a prefix value. This | |||
field is padded with zeros up to the nearest octet boundary when | field is padded with zeros up to the nearest octet boundary when | |||
prefix-len is not divisible by 8. This can be expressed using | prefix-len is not divisible by 8. This can be expressed using | |||
the following equation: (prefix-len + 7)/8 So the length of this | the following equation: (prefix-len + 7)/8 So the length of this | |||
field should be between 0 and 16 bytes. For example, the prefix | field should be between 0 and 16 bytes. For example, the prefix | |||
2001:db8::/60 would be encoded with an prefix-len of 60, the | 2001:db8::/60 would be encoded with an prefix-len of 60, the | |||
prefix would be 8 octets and would contains octets 20 01 0d b8 | prefix would be 8 octets and would contains octets 20 01 0d b8 | |||
skipping to change at page 6, line 8 | skipping to change at page 6, line 21 | |||
(a) replace the existing flags and active policy table with the | (a) replace the existing flags and active policy table with the | |||
DHCPv6 distributed flags and policy table. | DHCPv6 distributed flags and policy table. | |||
(b) preserve the existing flags and active policy table, whether | (b) preserve the existing flags and active policy table, whether | |||
this be the default policy table, or user configured policy. | this be the default policy table, or user configured policy. | |||
Choice (a) SHOULD be the default, i.e. that the policy table is not | Choice (a) SHOULD be the default, i.e. that the policy table is not | |||
explictly configured by the user. | explictly configured by the user. | |||
3.2. Handling stale policy tables | 3.2. Handling stale distributed flags and policy table | |||
When the information from the DHCP server goes stale, the policy | When the information from the DHCP server goes stale, the flags and | |||
received from the DHCP server SHOULD be deprecated. | the policy table received from the DHCP server SHOULD be deprecated. | |||
The received information can be considered stale in several cases, | The received information can be considered stale in several cases, | |||
e.g., when the interface goes down, the DHCP server does not respond | e.g., when the interface goes down, the DHCP server does not respond | |||
for a certain amount of time, and the Information Refresh Time is | for a certain amount of time, and the Information Refresh Time is | |||
expired. | expired. | |||
3.3. Handling multiple interfaces | 3.3. Handling multiple interfaces | |||
The policy table, and other parameters specified in this document, | The policy table, and other parameters specified in this document, | |||
are node-global information by their nature. One reason being that | are node-global information by their nature. One reason being that | |||
End of changes. 12 change blocks. | ||||
15 lines changed or deleted | 24 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/ |