draft-ietf-softwire-ds-lite-tunnel-option-05.txt   draft-ietf-softwire-ds-lite-tunnel-option-06.txt 
Softwires D. Hankins Softwires D. Hankins
Internet-Draft ISC Internet-Draft Google
Intended status: Standards Track T. Mrugalski Intended status: Standards Track T. Mrugalski
Expires: March 31, 2011 Gdansk University of Technology Expires: June 2, 2011 Gdansk University of Technology
September 27, 2010 November 29, 2010
Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Option for Dual- Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Option for Dual-
Stack Lite Stack Lite
draft-ietf-softwire-ds-lite-tunnel-option-05 draft-ietf-softwire-ds-lite-tunnel-option-06
Abstract Abstract
This document specifies single DHCPv6 option which is meant to be This document specifies a DHCPv6 option which is meant to be used by
used by a Dual-Stack Lite client (Basic Bridging BroadBand element, a Dual-Stack Lite client (Basic Bridging BroadBand element, B4) to
B4) to discover its Address Family Transition Router (AFTR) address. discover its Address Family Transition Router (AFTR) address.
Status of this Memo Status of this Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted 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). 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 March 31, 2011. This Internet-Draft will expire on June 2, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 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 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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Requirements Language . . . . . . . . . . . . . . . . . . . . . 3 1. Requirements Language . . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. The Dual-Stack Lite Address DHCPv6 Option . . . . . . . . . . . 3 3. The AFTR-Name DHCPv6 Option . . . . . . . . . . . . . . . . . . 3
4. DHCPv6 Server Behavior . . . . . . . . . . . . . . . . . . . . 4 4. DHCPv6 Server Behavior . . . . . . . . . . . . . . . . . . . . 5
5. DHCPv6 Client Behavior . . . . . . . . . . . . . . . . . . . . 5 5. DHCPv6 Client Behavior . . . . . . . . . . . . . . . . . . . . 5
6. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
9. Normative References . . . . . . . . . . . . . . . . . . . . . 6 9. Normative References . . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Requirements Language 1. Requirements Language
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 RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
2. Introduction 2. Introduction
Dual-Stack Lite [I-D.softwire-ds-lite] is a solution to offer both Dual-Stack Lite [I-D.softwire-ds-lite] is a solution to offer both
IPv4 and IPv6 connectivity to customers which are addressed only with IPv4 and IPv6 connectivity to customers which are addressed only with
an IPv6 prefix (no IPv4 address is assigned to the attachment an IPv6 prefix (no IPv4 address is assigned to the attachment
device). One of its key components is an IPv4-over-IPv6 tunnel, device). One of its key components is an IPv4-over-IPv6 tunnel,
commonly referred to as a Softwire. DS-Lite Basic Bridging BroadBand commonly referred to as a Softwire. A DS-Lite "Basic Bridging
(B4) will not know if the network it is attached to offers Dual-Stack BroadBand" (B4) device will not know if the network it is attached to
Lite support, and if it did would not know the remote end of the offers Dual-Stack Lite support, and if it did would not know the
tunnel to establish a connection. remote end of the tunnel to establish a connection.
To inform the B4 of the Address Family Transition Router's (AFTR) To inform the B4 of the Address Family Transition Router's (AFTR)
location, an option containing a single IPv6 address may be used. location, a DNS [RFC1035] hostname may be used. Once this
Once this information is conveyed, the presence of the configuration information is conveyed, the presence of the configuration indicating
indicating the AFTR's location also informs a host to initiate Dual- the AFTR's location also informs a host to initiate Dual-Stack Lite
Stack Lite (DS-Lite) service and become a Softwire Initiator. (DS-Lite) service and become a Softwire Initiator.
To provide the conveyance of the configuration information, a single To provide the conveyance of the configuration information, a single
DHCPv6 [RFC3315] option is used. DHCPv6 [RFC3315] option is used, expressing the AFTR's Fully
Qualified Domain Name to the B4 element.
The details of how the B4 establishes an IPv4-in-IPv6 tunnel to the The details of how the B4 establishes an IPv4-in-IPv6 tunnel to the
AFTR are out of scope for this document. AFTR are out of scope for this document.
3. The Dual-Stack Lite Address DHCPv6 Option 3. The AFTR-Name DHCPv6 Option
The Dual-Stack Lite Address option consists of option-code and The AFTR-Name option consists of option-code and option-len fields
option-len fields (common for all DHCPv6 options), and a 128 bit (as all DHCPv6 options have), and a variable length tunnel-endpoint-
tunnel-endpoint-addr field, containing one IPv6 address. The tunnel- name field containing a fully qualified domain name that refers to
endpoint-addr specifies the location of the remote tunnel endpoint, the AFTR which the client is asked to connect to.
expected to be located at an AFTR.
The DS-Lite Address option MAY appear in the root scope of a DHCPv6 The OPTION_AFTR_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. Any DS-Lite Address option received inside any other or similar. Any OPTION_AFTR_NAME option received inside any other
option MUST be ignored. option MUST be ignored.
The DS-Lite Address option MUST NOT appear more than once in a The OPTION_AFTR_NAME option MUST NOT appear more than once in a
message. message. Clients that receive more than one OPTION_AFTR_NAME options
MUST discard all instances of that option, acting as if none were
sent.
The format of the Dual-Stack Lite Address option is shown in the The format of the AFTR-Name option is shown in the following figure:
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_AFTR_NAME: (TBD) | option-len |
+-------------------------------+-------------------------------+ +-------------------------------+-------------------------------+
| | | |
| tunnel-endpoint-addr (IPv6 Address) | | tunnel-endpoint-name (FQDN) |
| |
| | | |
+---------------------------------------------------------------+ +---------------------------------------------------------------+
option-code: OPTION_DS_LITE_ADDR (TBD) OPTION_AFTR_NAME: (TBD)
option-len: Length of the tunnel-endpoint-addr field, option-len: Length of the tunnel-endpoint-name field.
which is precisely 16 octets.
tunnel-endpoint-addr: A single IPv6 address in binary tunnel-endpoint-name: A fully qualified domain name identifying
representation of the remote tunnel the tunnel endpoint, located at the DS-Lite
endpoint, located at the DS-Lite AFTR. AFTR.
Figure 1: DS-Lite IPv6 Address DHCPv6 Option Format Figure 1: AFTR-Name DHCPv6 Option Format
The client validates the DS-Lite Address option by confirming the The tunnel-endpoint-name field is formatted as required in DHCPv6
option length is exactly 16 octets. The client MUST ignore any DS- [RFC3315] Section 8 ("Representation and Use of Domain Names").
Lite Address option that has length other than 16 octets. Briefly, the format described is using a single octet noting the
length of one DNS label (limited to at most 63 octets), followed by
the label contents. This repeats until all labels in the FQDN are
exhausted, including a terminating zero-length label. Any updates to
Section 8 of DHCPv6 [RFC3315] also apply to encoding of this field.
An example format for this option is shown in Figure 2, which conveys
the FQDN "aftr.example.com.".
Because this option conveys the tunnel-endpoint-addr value, no +------+------+------+------+------+------+------+------+------+
further processing is required of the client. | 0x04 | a | f | t | r | 0x07 | e | x | a |
+------+------+------+------+------+------+------+------+------+
| m | p | l | e | 0x03 | c | o | m | 0x00 |
+------+------+------+------+------+------+------+------+------+
This option conveys a single IPv6 address, as the Dual-Stack Lite Figure 2: Example tunnel-endpoint-name.
specification [I-D.softwire-ds-lite] defines only one Softwire
connection between a B4 and any AFTR. Multiple connections or
endpoints are undefined. It is expected that Service Provider (SP)
will deal with load balancing and high availability, not the client.
For more information, see Section 12.3 "High Availability" of
[I-D.softwire-ds-lite].
4. DHCPv6 Server Behavior Note that in the specific case of the example tunnel-endpoint-name,
(Figure 2) the length of the tunnel-endpoint-name is 18 octets, and
so an option-len field value of 18 would be used.
Following requirements are result of applying behaviors defined in The option is validated by confirming that the option-len is greater
RFC 3315 Section 17.2.2 [RFC3315] to the DS-Lite Address option. than 3, that the option data can be contained by the option length
They do not change default DHCPv6 operation, but rather are (that the option length does not run off the end of the packet), that
enumerated here as a convenience for the reader. individual label lengths do not exceed the option length, and that
the tunnel-endpoint-name is of valid format as described in DHCPv6
Section 8 [RFC3315]; there are no compression tags, there is at least
one label of nonzero length.
If configured to offer DS-Lite Address information, DHCPv6 server 4. DHCPv6 Server Behavior
will include the DS-Lite Address option if such option appears on the
client's Option Request Option (OPTION_ORO). RFC 3315 Section 17.2.2
[RFC3315] describes how a DHCPv6 client and server negotiate
configuration values using the ORO.
A DHCPv6 server MUST NOT send DS-Lite Address option if it has not A DHCPv6 server MUST NOT send more than one OPTION_AFTR_NAME option.
been explicitly requested by the client.
A DHCPv6 server MUST NOT send more than one DS-Lite Address option. A DHCPv6 server MUST NOT send the OPTION_AFTR_NAME option as a
suboption in other options; it MUST appear only in the root scope of
any DHCPv6 messages made in response to clients (Reply, Advertise, et
al).
A DHCPv6 server MUST NOT send DS-Lite Address as suboption in other RFC 3315 Section 17.2.2 [RFC3315] describes how a DHCPv6 client and
options. server negotiate configuration values using the Option Request Option
(OPTION_ORO). As a convenience to the reader, we mention here that a
server will not reply with a value for the OPTION_AFTR_NAME if the
client has not explicitly enumerated it on its OPTION_ORO.
5. DHCPv6 Client Behavior 5. DHCPv6 Client Behavior
A client that supports B4 functionality of DS-Lite (defined in A client that supports the B4 functionality of DS-Lite (defined in
[I-D.softwire-ds-lite]) and conforms to this specification MUST [I-D.softwire-ds-lite]) and conforms to this specification MUST
include OPTION_DS_LITE_ADDR on its OPTION_ORO. include OPTION_AFTR_NAME on its OPTION_ORO.
If the client receives DS-Lite Address option, it MUST verify the Because it requires DNS name to address resolution, a client MAY also
option contents as described in Section 3. The client (B4) is wish to include the OPTION_DNS_SERVERS option on its OPTION_ORO.
expected to establish a softwire tunnel to the tunnel-endpoint-addr
IPv6 address it determines from DS-Lite Address option.
Client that receives more than one DS-Lite Address option MUST If the client receives the OPTION_AFTR_NAME option, it MUST verify
the option contents as described in Section 3.
If the client receives more than one OPTION_AFTR_NAME option, it MUST
discard all instances of that option. discard all instances of that option.
The client performs standard DNS resolution using the provided FQDN
to resolve a AAAA record, as defined in [RFC3596] and STD 13
[RFC1034] [RFC1035].
If any DNS response contains more than one IPv6 address, 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 at the
same time. For a redundancy and high availability discussion, see
Section 7.2 "High availability" of [I-D.softwire-ds-lite].
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.
[I-D.softwire-ds-lite] discusses DS-Lite related security issues. [I-D.softwire-ds-lite] discusses DS-Lite related security issues.
7. IANA Considerations 7. IANA Considerations
IANA is requested to allocate single DHCPv6 option code referencing IANA is requested to allocate single DHCPv6 option code referencing
this document, delineating OPTION_DS_LITE_ADDR name. this document, delineating OPTION_AFTR_NAME.
8. Acknowledgements 8. Acknowledgements
Authors would like to thank Alain Durand, Rob Austein, Dave Thaler, Authors would like to thank Alain Durand, Rob Austein, Dave Thaler,
Paul Selkirk and Ralph Droms for their valuable feedback and Paul Selkirk, Ralph Droms, Mohamed Boucadair and Maglione Roberta for
suggestions. their valuable feedback and suggestions.
This work has been partially supported by the Polish Ministry of This work has been partially supported by the Polish Ministry of
Science and Higher Education under the European Regional Development Science and Higher Education under the European Regional Development
Fund, Grant No. POIG.01.01.02-00-045/09-00 (Future Internet Fund, Grant No. POIG.01.01.02-00-045/09-00 (Future Internet
Engineering Project). Engineering Project).
9. Normative References 9. Normative References
[I-D.softwire-ds-lite] [I-D.softwire-ds-lite]
Durand, A., Ed., "Dual-stack lite broadband deployments Durand, A., Ed., "Dual-stack lite broadband deployments
post IPv4 exhaustion", draft-ietf-softwire-dual-stack-lite post IPv4 exhaustion", draft-ietf-softwire-dual-stack-lite
(work in progress). (work in progress).
[RFC1034] Mockapetris, P., "Domain names - concepts and facilities",
STD 13, RFC 1034, November 1987.
[RFC1035] Mockapetris, P., "Domain names - implementation and
specification", STD 13, RFC 1035, November 1987.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
and M. Carney, "Dynamic Host Configuration Protocol for and M. Carney, "Dynamic Host Configuration Protocol for
IPv6 (DHCPv6)", RFC 3315, July 2003. IPv6 (DHCPv6)", RFC 3315, July 2003.
[RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi,
"DNS Extensions to Support IP Version 6", RFC 3596,
October 2003.
Authors' Addresses Authors' Addresses
David W. Hankins David W. Hankins
Internet Systems Consortium, Inc. Google, Inc.
950 Charter Street 1600 Amphitheatre Parkway
Redwood City, CA 94063 Mountain View, CA 94043
US USA
Phone: +1 650 423 1307 Email: dhankins@google.com
Email: David_Hankins@isc.org
Tomasz Mrugalski Tomasz Mrugalski
Gdansk University of Technology Gdansk University of Technology
Storczykowa 22B/12 Storczykowa 22B/12
Gdansk 80-177 Gdansk 80-177
Poland Poland
Phone: +48 698 088 272 Phone: +48 698 088 272
Email: tomasz.mrugalski@eti.pg.gda.pl Email: tomasz.mrugalski@eti.pg.gda.pl
 End of changes. 43 change blocks. 
87 lines changed or deleted 115 lines changed or added

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