draft-ietf-softwire-ds-lite-tunnel-option-00.txt   draft-ietf-softwire-ds-lite-tunnel-option-01.txt 
Dynamic Host Configuration Working D. Hankins Dynamic Host Configuration Working D. Hankins
Group ISC Group ISC
Internet-Draft T. Mrugalski Internet-Draft T. Mrugalski
Intended status: Standards Track Gdansk University of Technology Intended status: Standards Track Gdansk University of Technology
Expires: June 24, 2010 December 21, 2009 Expires: July 9, 2010 January 5, 2010
Dynamic Host Configuration Protocol (DHCPv6) Options for Dual-Stack Lite Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Options for Dual-
draft-ietf-softwire-ds-lite-tunnel-option-00 Stack Lite
draft-ietf-softwire-ds-lite-tunnel-option-01
Abstract
This document specifies two DHCPv6 Options which are meant to be used
by Softwire Initiator (SI) to retrieve its attached DS-Lite AFTR
(Address Family Transition Router).
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 1, line 33 skipping to change at page 1, line 40
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."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on June 24, 2010. This Internet-Draft will expire on July 9, 2010.
Copyright Notice Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the Copyright (c) 2010 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 in effect on the date of Provisions Relating to IETF Documents
publication of this document (http://trustee.ietf.org/license-info). (http://trustee.ietf.org/license-info) in effect on the date of
Please review these documents carefully, as they describe your rights publication of this document. Please review these documents
and restrictions with respect to this document. carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
Abstract include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
This document describes how Dual-Stack Lite configuration (the described in the BSD License.
Softwire Concentrator (SC)'s address) can be obtained by a Softwire
Initiator (SI) via DHCPv6.
Table of Contents Table of Contents
1. Requirements Language . . . . . . . . . . . . . . . . . . . . . 3 1. Requirements Language . . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. DHCPv6 Options . . . . . . . . . . . . . . . . . . . . . . . . 3 3. DHCPv6 Options . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1. The Dual-Stack Lite Softwire Concentrator Address 3.1. The Dual-Stack Lite Softwire Concentrator Address
Option . . . . . . . . . . . . . . . . . . . . . . . . . . 3 DHCPv6 Option . . . . . . . . . . . . . . . . . . . . . . . 3
3.2. The Dual-Stack Lite Softwire Concentrator Name Option . . . 4 3.2. The Dual-Stack Lite Softwire Concentrator Name DHCPv6
4. DHCPv6 Server behavior . . . . . . . . . . . . . . . . . . . . 6 Option . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5. DHCPv6 Client behavior . . . . . . . . . . . . . . . . . . . . 6 4. DHCPv6 Server Behavior . . . . . . . . . . . . . . . . . . . . 6
5. DHCPv6 Client Behavior . . . . . . . . . . . . . . . . . . . . 7
6. Security Considerations . . . . . . . . . . . . . . . . . . . . 7 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 7
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 7 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 8
9. Normative References . . . . . . . . . . . . . . . . . . . . . 8 9. Normative References . . . . . . . . . . . . . . . . . . . . . 8
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9
1. Requirements Language 1. Requirements Language
In this document, the key words "MAY", "MUST", "MUST NOT", In this document, the key words "MAY", "MUST", "MUST NOT",
"OPTIONAL", "RECOMMENDED", "SHOULD", and "SHOULD NOT", are to be "OPTIONAL", "RECOMMENDED", "SHOULD", and "SHOULD NOT", are to be
interpreted as described in BCP 14, RFC 2119 [RFC2119]. interpreted as described in BCP 14, RFC 2119 [RFC2119].
2. Introduction 2. Introduction
Dual-Stack Lite [draft-ietf-softwire-dual-stack-lite-02] is a method Dual-Stack Lite [draft-ietf-softwire-dual-stack-lite-02] is a
to extend IPv4 access to an IPv6-only addressed host. One of its key solution to offer both IPv4 and IPv6 connectivity to customers which
components is an IPv4-over-IPv6 tunnel, commonly referred to as a are addressed only with an IPv6 prefix (no IPv4 address is assigned
Softwire, but a Software Initiator will not know if the network it is to the attachment device). One of its key components is an IPv4-
over-IPv6 tunnel, commonly referred to as a Softwire, but a DS-Lite
Basic Bridging BroadBand (B4) will not know if the network it is
attached to offers Dual-Stack Lite support, and if it did would not attached to offers Dual-Stack Lite support, and if it did would not
know the remote end of the tunnel to establish a connection. know the remote end of the tunnel to establish a connection.
To inform the Softwire Initiator of the Softwire Concentrator's To inform the B4 of the Address Family Transition Router's (AFTR)
location, either an IPv6 address or Fully Qualified Domain Name location, either an IPv6 address or Fully Qualified Domain Name
(FQDN) may be used. Once this information is conveyed, the presence (FQDN) may be used. Once this information is conveyed, the presence
of the configuration indicating the Softwire Concentrator's location of the configuration indicating the AFTR's location also informs a
also informs a host to initiate Dual-Stack Lite service and become a host to initiate Dual-Stack Lite (DS-Lite) service and become a
Softwire Initiator. Softwire Initiator.
To provide the conveyance of the configuration information, two To provide the conveyance of the configuration information, two
DHCPv6 [RFC3315] options are used; one in the case where the host DHCPv6 [RFC3315] Options are used; one in the case where the host
receives an IPv6 address, and one in the case where the host receives receives an IPv6 address, and one in the case where the host receives
an FQDN in order to derive an IPv6 address. an FQDN in order to derive an IPv6 address.
This document assumes that the SI is provided with appropriate
instructions for the activation of an IPv4-in-IPv6 scheme which is
supposed to be supported in both B4 and AFTR. Consequently, this
memo does not precise the IPv4-in-IPv6 encapsulation scheme to be
used by B4.
3. DHCPv6 Options 3. DHCPv6 Options
Following sections define two new DHCPv6 options, conformant with Following sub-sections define two new DHCPv6 Options, conformant with
requirements specified in DHCPv6 [RFC3315] Section 22.1. requirements specified in DHCPv6 [RFC3315] Section 22.1.
3.1. The Dual-Stack Lite Softwire Concentrator Address Option 3.1. The Dual-Stack Lite Softwire Concentrator Address DHCPv6 Option
The Dual-Stack Lite Softwire Concentrator Address Option consists of The Dual-Stack Lite Softwire Concentrator Address Option consists of
option-code and option-len fields (common for all DHCPv6 options), option-code and option-len fields (common for all DHCPv6 Options),
and a 128 bit tunnel-endpoint-addr field, containing one IPv6 and a 128 bit tunnel-endpoint-addr field, containing one IPv6
address. The tunnel-endpoint-addr specifies the location of the address. The tunnel-endpoint-addr specifies the location of the
remote tunnel endpoint, expected to be located at an AFTR (DS-Lite remote tunnel endpoint, expected to be located at an AFTR (DS-Lite
Address Family Transition Router element). Address Family Transition Router element).
The DS Lite Address option MAY appear in the root scope of a DHCPv6 The DS-Lite Address DHCPv6 Option MAY appear in the root scope of a
packet. It MUST NOT appear inside any IA_NA, IA_TA, IA_PD, IAADDR, DHCPv6 packet. It MUST NOT appear inside any IA_NA, IA_TA, IA_PD,
or similar. IAADDR, or similar.
The DS Lite Address option MUST NOT appear more than once in a The DS-Lite Address DHCPv6 Option MUST NOT appear more than once in a
message. message.
The format of the Dual-Stack Lite Softwire Concentrator Addr DHCPv6
Option is shown in the following figure:
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_DS_LITE_ADDR (TBD) | option-len: 16 | | OPTION_DS_LITE_ADDR (TBD) | option-len: 16 |
+-------------------------------+-------------------------------+ +-------------------------------+-------------------------------+
| | | |
| tunnel-endpoint-addr (IPv6 Address) | | tunnel-endpoint-addr (IPv6 Address) |
| | | |
| | | |
+---------------------------------------------------------------+ +---------------------------------------------------------------+
DS Lite IPv6 Address option format. DS Lite IPv6 Address DHCPv6 Option format.
Figure 1 Figure 1
Below is provided the description of the enclosed fields:
option-code: OPTION_DS_LITE_ADDR (TBD) option-code: OPTION_DS_LITE_ADDR (TBD)
option-len: Length of the tunnel-endpoint-addr field, which is option-len: Length of the tunnel-endpoint-addr field, which is
currently defined to be precisely 16 octets. currently defined to be precisely 16 octets.
tunnel-endpoint-addr: This field contains a single IPv6 address in tunnel-endpoint-addr: This field contains a single IPv6 address in
binary representation of the remote tunnel endpoint, located at binary representation of the remote tunnel endpoint, located at
the DS-Lite AFTR. It is precisely 16 octets in length. the DS-Lite AFTR. It is precisely 16 octets in length.
The client validates the DS-Lite Address option by confirming the The client validates the DS-Lite Address DHCPv6 Option by confirming
option is of 16 octets in length or greater. The client MUST ignore the option is of 16 octets in length or greater. The client MUST
tunnel-endpoint-addr shorter than 16 octets. In the event the option ignore tunnel-endpoint-addr shorter than 16 octets. In the event the
is greater than 16 octets in length, only the first 16 octets are option is greater than 16 octets in length, only the first 16 octets
intrepreted. are interpreted.
Because this option conveys the tunnel-endpoint-addr value, no Because this option conveys the tunnel-endpoint-addr value, no
further processing is required of the client. further processing is required of the client.
3.2. The Dual-Stack Lite Softwire Concentrator Name Option The definition of this option is simple and encloses only a single
IPv6 address. It is temping to define a flexible option which may
convey several IPv6 addresses (for robustness and service
availability reasons), but for the sake of simplicity and consistency
it is recommended to use a FQDN Option instead of conveying several
IPv6 addresses.
3.2. The Dual-Stack Lite Softwire Concentrator Name DHCPv6 Option
The Dual-Stack Lite Softwire Concentrator Name Option consists of The Dual-Stack Lite Softwire Concentrator Name Option consists of
option-code and option-len fields (common for all DHCPv6 options), option-code and option-len fields (common for all DHCPv6 Options),
and a variable length tunnel-endpoint-name field, containing a Fully and a variable length tunnel-endpoint-name field, containing a Fully
Qualified Domain Name that refers to the AFTR (DS-Lite Address Family Qualified Domain Name that refers to the AFTR the client is requested
Transition Router element) the client is requested to establish a to establish a connection with.
connection with.
The DS Lite Name option MAY appear in the root scope of a DHCPv6 The DS-Lite Name option MAY appear in the root scope of a DHCPv6
packet. It MUST NOT appear inside any IA_NA, IA_TA, IA_PD, IAADDR, packet. It MUST NOT appear inside any IA_NA, IA_TA, IA_PD, IAADDR,
or similar. or similar.
The DS Lite Name option MUST NOT appear more than once in a message. The DS-Lite Name DHCPv6 Option MUST NOT appear more than once in a
message.
The format of the Dual-Stack Lite Softwire Concentrator Name DHCPv6
Option is shown in th following figure:
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_DS_LITE_NAME (TBD) | option-len | | OPTION_DS_LITE_NAME (TBD) | option-len |
+-------------------------------+-------------------------------+ +-------------------------------+-------------------------------+
| tunnel-endpoint-name (FQDN) | | tunnel-endpoint-name (FQDN) |
+---------------------------------------------------------------+ +---------------------------------------------------------------+
DS Lite FQDN option format. DS-Lite FQDN DHCPv6 Option format.
Figure 2 Figure 2
Below is provided the description of the enclosed fields:
option-code: OPTION_DS_LITE_NAME (TBD) option-code: OPTION_DS_LITE_NAME (TBD)
option-len: Length in octets of the tunnel-endpoint-name field. option-len: Length in octets of the tunnel-endpoint-name field.
tunnel-endpoint-name: This field contains a single Fully Qualified tunnel-endpoint-name: This field contains a single Fully Qualified
Domain Name of the remote tunnel endpoint, located at the DS-Lite Domain Name of the remote tunnel endpoint, located at the DS-Lite
AFTR. AFTR.
The tunnel-endpoint-name field is formatted as required in DHCPv6 The tunnel-endpoint-name field is formatted as required in DHCPv6
[RFC3315] Section 8 ("Representation and Use of Domain Names"). [RFC3315] Section 8 ("Representation and Use of Domain Names").
Briefly, the format described is using a single octet noting the Briefly, the format described is using a single octet noting the
length of one DNS label (limited to at most 64 octets), followed by length of one DNS label (limited to at most 64 octets), followed by
the label. This repeats until all labels in the FQDN are exhausted. the label. This repeats until all labels in the FQDN are exhausted.
The root label (or the end of the FQDN) is denoted as a zero length The root label (or the end of the FQDN) is denoted as a zero length
label. An example FQDN format for this option is shown in Figure 3. label. An example FQDN format for this option is shown in Figure 3.
+------+------+------+------+------+------+------+------+------+ +------+------+------+------+------+------+------+------+------+
| 0x07 | e | x | a | m | p | l | e | 0x03 | | 0x07 | e | x | a | m | p | l | e | 0x03 |
+------+------+------+------+------+------+------+------+------+ +------+------+------+------+------+------+------+------+------+
skipping to change at page 5, line 49 skipping to change at page 6, line 26
+------+------+------+------+------+------+------+------+ +------+------+------+------+------+------+------+------+
Example tunnel-endpoint-name. Example tunnel-endpoint-name.
Figure 3 Figure 3
Note that in the specific case of the example tunnel-endpoint-name, Note that in the specific case of the example tunnel-endpoint-name,
(Figure 3) the length of the option is 17 octets, and so an option- (Figure 3) the length of the option is 17 octets, and so an option-
len field value of 17 would be used. len field value of 17 would be used.
The client validates the option in this format by first confirming The client (B4) validates the option in this format by first
that the option length is greater than 3, that the option data can be confirming that the option length is greater than 3, that the option
contained by the option length (that the option length does not run data can be contained by the option length (that the option length
off the end of the packet), and that the tunnel-endpoint-name is of does not run off the end of the packet), and that the tunnel-
valid format as described in DHCPv6 Section 8 [RFC3315]; there are no endpoint-name is of valid format as described in DHCPv6 Section 8
compression tags, there is at least one label of nonzero length. [RFC3315]; there are no compression tags, there is at least one label
of nonzero length.
The client determines a value for the tunnel-endpoint-addr from the The client (B4) determines a value for the tunnel-endpoint-addr from
tunnel-endpoint-name using standard DNS resolution, as defined in the tunnel-endpoint-name using standard DNS resolution, as defined in
[RFC3596]. If the DNS response contains more than one IPv6 address, [RFC3596]. If the DNS response contains more than one IPv6 address,
the client picks only one IPv6 address and uses it as a remote tunnel the client picks only one IPv6 address and uses it as a remote tunnel
endpoint. The client MUST NOT establish more than one DS Lite tunnel endpoint. The client MUST NOT establish more than one DS Lite tunnel
at the same time. For a redundancy and high availability discussion, at the same time. For a redundancy and high availability discussion,
see Section 7.2 "High availability" of see Section 7.2 "High availability" of
[draft-ietf-softwire-dual-stack-lite-02]. [draft-ietf-softwire-dual-stack-lite-02].
4. DHCPv6 Server behavior 4. DHCPv6 Server Behavior
DHCP servers must translate user input from their own specific and DHCP servers must translate user input from their own specific and
unique operator's interfaces into configuration state for the client. unique operator's interfaces into configuration state for the client.
The server MUST provide a way to configure the OPTION_DS_LITE_ADDR, The server MUST provide a way to configure the OPTION_DS_LITE_ADDR,
and SHOULD allow the operator to enter a Fully Qualified Domain Name, and SHOULD allow the operator to enter a Fully Qualified Domain Name,
upon which the server performs DNS Resolution to assemble its upon which the server performs DNS Resolution to assemble its
OPTION_DS_LITE_ADDR contents. The server MAY either provide the same OPTION_DS_LITE_ADDR contents. The server MAY either provide the same
Fully Qualified Domain Name as OPTION_DS_LITE_NAME contents, or Fully Qualified Domain Name as OPTION_DS_LITE_NAME contents, or
simply provide a distinct method of configuring it. simply provide a distinct method of configuring it.
If configured with values, DHCPv6 servers will include the DS Lite If configured with values, DHCPv6 servers will include the DS Lite
Address and/or Name options if either or both appear on the client's Address and/or Name Options if either or both appear on the client's
Option Request Option (OPTION_ORO). RFC 3315 Section 17.2.2 Option Request Option (OPTION_ORO). RFC 3315 Section 17.2.2
[RFC3315] describes how a DHCPv6 client and server negotiate [RFC3315] describes how a DHCPv6 client and server negotiate
configuration values using the ORO. configuration values using the ORO.
A DHCPv6 server MAY NOT send either option if it has not been A DHCPv6 server MAY NOT send either Option if it has not been
explicitly requested by the client. explicitly requested by the client.
If the server is configured with an FQDN as the tunnel endpoint If the server is configured with an FQDN as the tunnel endpoint
locator, the configured FDQN value must contain a resolvable Fully locator, the configured FDQN value MUST contain a resolvable Fully
Qualified Domain Name, having appropriate delegations from the root, Qualified Domain Name, having appropriate delegations from the root,
and having a AAAA record locating the Softwire Concentrator. and having a AAAA record locating the Softwire Concentrator.
If OPTION_DS_LITE_NAME is being configured, it is RECOMMENDED that If OPTION_DS_LITE_NAME is being configured, the server MUST be
the server also be configured to provide OPTION_DNS_SERVERS defined configured to provide OPTION_DNS_SERVERS defined in [RFC3646]
in [RFC3646] together with the DS Lite option, so that clients will together with the DS Lite option, so that clients will be able to ask
be able to ask for DNS servers locations to resolve the domain name for DNS servers locations to resolve the domain name provided in the
provided in the DS Lite option. DS-Lite Name DHCPv6 option.
5. DHCPv6 Client behavior
A client that supports B4 functionality of the DS Lite (defined in 5. DHCPv6 Client Behavior
A client that supports B4 functionality of the DS-Lite (defined in
[draft-ietf-softwire-dual-stack-lite-02]) MUST include [draft-ietf-softwire-dual-stack-lite-02]) MUST include
OPTION_DS_LITE_ADDR on its OPTION_ORO, and MAY include OPTION_DS_LITE_ADDR on its OPTION_ORO, and MAY include
OPTION_DS_LITE_NAME at its option and ability. OPTION_DS_LITE_NAME at its option and ability.
If requesting the OPTION_DS_LITE_NAME option, the client also SHOULD If requesting the OPTION_DS_LITE_NAME DHCPv6 Option, the client also
request OPTION_DNS_SERVERS defined in [RFC3646] to be able to resolve SHOULD request OPTION_DNS_SERVERS defined in [RFC3646] to be able to
any received domain name. resolve any received domain name.
If the client receives either DS Lite Option, it MUST verify the If the client receives either DS-Lite Option, it MUST verify the
option contents as described in Section 3.1 and Section 3.2. The option contents as described in Section 3.1 and Section 3.2. The
client SHOULD establish a softwire tunnel to the tunnel-endpoint-addr client (B4) SHOULD establish a softwire tunnel to the tunnel-
IPv6 address it determines from either of these options. endpoint-addr IPv6 address it determines from either of these
options.
If the client requests and receives both the OPTION_DS_LITE_ADDR and If the client requests and receives both the OPTION_DS_LITE_ADDR and
the OPTION_DS_LITE_NAME, it MUST proceed with resolving the the OPTION_DS_LITE_NAME, it MUST proceed with resolving the
OPTION_DS_LITE_NAME. OPTION_DS_LITE_NAME.
6. Security Considerations 6. Security Considerations
This document does not present any new security issues, but as with This document does not present any new security issues, but as with
all DHCPv6-derived configuration state, it is completely possible all DHCPv6-derived configuration state, it is completely possible
that the configuration is being delivered by a third party (Man In that the configuration is being delivered by a third party (Man In
The Middle). As such, there is no basis to trust that the access the The Middle). As such, there is no basis to trust that the access the
DS-Lite softwire connection represents can be trusted, and it should DS-Lite Softwire connection represents can be trusted, and it should
not therefore bypass any security mechanisms such as IP firewalls. not therefore bypass any security mechanisms such as IP firewalls.
RFC 3315 [RFC3315] discusses DHCPv6 related security issues. RFC 3315 [RFC3315] discusses DHCPv6-related security issues.
[draft-ietf-softwire-dual-stack-lite-02] discusses DS Lite related [draft-ietf-softwire-dual-stack-lite-02] discusses DS Lite related
security issues. security issues.
7. IANA Considerations 7. IANA Considerations
IANA is requested to allocate two DHCPv6 Option codes referencing IANA is requested to allocate two DHCPv6 Option codes referencing
this document. One delineating OPTION_DS_LITE_ADDR, and one this document. One delineating OPTION_DS_LITE_ADDR, and one
delineating OPTION_DS_LITE_NAME. delineating OPTION_DS_LITE_NAME.
 End of changes. 44 change blocks. 
79 lines changed or deleted 112 lines changed or added

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