idnits 2.17.1 draft-ietf-softwire-ds-lite-tunnel-option-07.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (December 10, 2010) is 4887 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 3315 (Obsoleted by RFC 8415) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Softwire D. Hankins 3 Internet-Draft Google 4 Intended status: Standards Track T. Mrugalski 5 Expires: June 13, 2011 Gdansk University of Technology 6 December 10, 2010 8 Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Option for Dual- 9 Stack Lite 10 draft-ietf-softwire-ds-lite-tunnel-option-07 12 Abstract 14 This document specifies a DHCPv6 option which is meant to be used by 15 a Dual-Stack Lite Basic Bridging Broadband (B4) element to discover 16 the IPv6 address of its corresponding Address Family Transition 17 Router (AFTR). 19 Status of this Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at http://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on June 13, 2011. 36 Copyright Notice 38 Copyright (c) 2010 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (http://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 Table of Contents 53 1. Requirements Language . . . . . . . . . . . . . . . . . . . . . 3 54 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 55 3. The AFTR-Name DHCPv6 Option . . . . . . . . . . . . . . . . . . 3 56 4. DHCPv6 Server Behavior . . . . . . . . . . . . . . . . . . . . 5 57 5. DHCPv6 Client Behavior . . . . . . . . . . . . . . . . . . . . 5 58 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 59 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 60 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 61 9. Normative References . . . . . . . . . . . . . . . . . . . . . 6 62 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 64 1. Requirements Language 66 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 67 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 68 document are to be interpreted as described in RFC 2119 [RFC2119]. 70 2. Introduction 72 Dual-Stack Lite [I-D.softwire-ds-lite] is a solution to offer both 73 IPv4 and IPv6 connectivity to customers which are addressed only with 74 an IPv6 prefix (no IPv4 address is assigned to the attachment 75 device). One of its key components is an IPv4-over-IPv6 tunnel, 76 commonly referred to as a Softwire. A DS-Lite "Basic Bridging 77 BroadBand" (B4) device will not know if the network it is attached to 78 offers Dual-Stack Lite service, and if it did would not know the 79 remote endpoint of the tunnel to establish a softwire. 81 To inform the B4 of the Address Family Transition Router's (AFTR) 82 location, a DNS [RFC1035] hostname may be used. Once this 83 information is conveyed, the presence of the configuration indicating 84 the AFTR's location also informs a host to initiate Dual-Stack Lite 85 (DS-Lite) service and become a Softwire Initiator. 87 To provide the conveyance of the configuration information, a single 88 DHCPv6 [RFC3315] option is used, expressing the AFTR's Fully 89 Qualified Domain Name (FQDN) to the B4 element. 91 The details of how the B4 establishes an IPv4-in-IPv6 softwire to the 92 AFTR are out of scope for this document. 94 3. The AFTR-Name DHCPv6 Option 96 The AFTR-Name option consists of option-code and option-len fields 97 (as all DHCPv6 options have), and a variable length tunnel-endpoint- 98 name field containing a fully qualified domain name that refers to 99 the AFTR which the client MAY connect to. 101 The AFTR-Name option MUST NOT appear in any other than the following 102 DHCPv6 messages: Solicit, Advertise, Request, Renew, Rebind, 103 Information-Request and Reply. 105 The format of the AFTR-Name option is shown in the following figure: 107 0 1 2 3 108 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 109 +-------------------------------+-------------------------------+ 110 | OPTION_AFTR_NAME: (TBD) | option-len | 111 +-------------------------------+-------------------------------+ 112 | | 113 | tunnel-endpoint-name (FQDN) | 114 | | 115 +---------------------------------------------------------------+ 117 OPTION_AFTR_NAME: (TBD) 119 option-len: Length of the tunnel-endpoint-name field in 120 octets. 122 tunnel-endpoint-name: A fully qualified domain name of the AFTR 123 tunnel endpoint. 125 Figure 1: AFTR-Name DHCPv6 Option Format 127 The tunnel-endpoint-name field is formatted as required in DHCPv6 128 [RFC3315] Section 8 ("Representation and Use of Domain Names"). 129 Briefly, the format described is using a single octet noting the 130 length of one DNS label (limited to at most 63 octets), followed by 131 the label contents. This repeats until all labels in the FQDN are 132 exhausted, including a terminating zero-length label. Any updates to 133 Section 8 of DHCPv6 [RFC3315] also apply to encoding of this field. 134 An example format for this option is shown in Figure 2, which conveys 135 the FQDN "aftr.example.com.". 137 +------+------+------+------+------+------+------+------+------+ 138 | 0x04 | a | f | t | r | 0x07 | e | x | a | 139 +------+------+------+------+------+------+------+------+------+ 140 | m | p | l | e | 0x03 | c | o | m | 0x00 | 141 +------+------+------+------+------+------+------+------+------+ 143 Figure 2: Example tunnel-endpoint-name. 145 Note that in the specific case of the example tunnel-endpoint-name 146 (Figure 2), the length of the tunnel-endpoint-name is 18 octets, and 147 so an option-len field value of 18 would be used. 149 The option is validated by confirming that the option-len is greater 150 than 3, that the option data can be contained by the option length 151 (that the option length does not run off the end of the packet), that 152 individual label lengths do not exceed the option length, and that 153 the tunnel-endpoint-name is of valid format as described in DHCPv6 154 Section 8 [RFC3315]; there are no compression tags, there is at least 155 one label of nonzero length. 157 4. DHCPv6 Server Behavior 159 A DHCPv6 server MUST NOT send more than one AFTR-Name option. It 160 SHOULD NOT permit the configuration of multiple names within one 161 AFTR-Name option. 163 RFC 3315 Section 17.2.2 [RFC3315] describes how a DHCPv6 client and 164 server negotiate configuration values using the Option Request Option 165 (OPTION_ORO). As a convenience to the reader, we mention here that a 166 server will not reply with a AFTR-Name option if the client has not 167 explicitly enumerated it on its Option Request Option. 169 5. DHCPv6 Client Behavior 171 A client that supports the B4 functionality of DS-Lite (defined in 172 [I-D.softwire-ds-lite]) and conforms to this specification MUST 173 include OPTION_AFTR_NAME on its OPTION_ORO. 175 Because it requires DNS name to address resolution, the client MAY 176 also wish to include the OPTION_DNS_SERVERS [RFC3646] option on its 177 OPTION_ORO. 179 If the client receives the AFTR-Name option, it MUST verify the 180 option contents as described in Section 3. 182 If the client receives more than one AFTR-Name option, it MUST use 183 only the first instance of that option. 185 If the AFTR-Name option contains more than one FQDN, as distinguished 186 by the presence of multiple root labels, the client MUST use only the 187 first FQDN listed in configuration. 189 The client performs standard DNS resolution using the provided FQDN 190 to resolve a AAAA Resource Record, as defined in [RFC3596] and STD 13 191 [RFC1034] [RFC1035]. 193 If any DNS response contains more than one IPv6 address, the client 194 picks only one IPv6 address and uses it as a remote tunnel endpoint 195 for the interface being configured in the current message exchange. 196 The client MUST NOT establish more than one DS-Lite tunnel at the 197 same time per interface. For a redundancy and high availability 198 discussion, see Section 7.2 "High availability" of 199 [I-D.softwire-ds-lite]. 201 Note that a client may have multiple network interfaces, and these 202 interfaces may be configured differently; some may be connected to 203 networks that call for DS-Lite, and some may be connected to networks 204 that are using normal dual stack or other means. The client should 205 consider the above on an interface-by-interface basis. For example, 206 if the client is attached to multiple networks that provide the AFTR 207 Name option, then the client MUST configure a tunnel for each 208 interface separately as each DS-Lite tunnel provides IPv4 209 connectivity for each distinct interface. 211 6. Security Considerations 213 This document does not present any new security issues, but as with 214 all DHCPv6-derived configuration state, it is completely possible 215 that the configuration is being delivered by a third party (Man In 216 The Middle). As such, there is no basis to trust that the access the 217 DS-Lite Softwire connection represents can be trusted, and it should 218 not therefore bypass any security mechanisms such as IP firewalls. 220 RFC 3315 [RFC3315] discusses DHCPv6-related security issues. 222 [I-D.softwire-ds-lite] discusses DS-Lite related security issues. 224 7. IANA Considerations 226 IANA is requested to allocate single DHCPv6 option code referencing 227 this document, delineating OPTION_AFTR_NAME. 229 8. Acknowledgements 231 Authors would like to thank Alain Durand, Rob Austein, Dave Thaler, 232 Paul Selkirk, Ralph Droms, Mohamed Boucadair and Roberta Maglione for 233 their valuable feedback and suggestions. 235 This work has been partially supported by the Polish Ministry of 236 Science and Higher Education under the European Regional Development 237 Fund, Grant No. POIG.01.01.02-00-045/09-00 (Future Internet 238 Engineering Project). 240 9. Normative References 242 [I-D.softwire-ds-lite] 243 Durand, A., Ed., "Dual-stack lite broadband deployments 244 post IPv4 exhaustion", draft-ietf-softwire-dual-stack-lite 245 (work in progress). 247 [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", 248 STD 13, RFC 1034, November 1987. 250 [RFC1035] Mockapetris, P., "Domain names - implementation and 251 specification", STD 13, RFC 1035, November 1987. 253 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 254 Requirement Levels", BCP 14, RFC 2119, March 1997. 256 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 257 and M. Carney, "Dynamic Host Configuration Protocol for 258 IPv6 (DHCPv6)", RFC 3315, July 2003. 260 [RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi, 261 "DNS Extensions to Support IP Version 6", RFC 3596, 262 October 2003. 264 [RFC3646] Droms, R., "DNS Configuration options for Dynamic Host 265 Configuration Protocol for IPv6 (DHCPv6)", RFC 3646, 266 December 2003. 268 Authors' Addresses 270 David W. Hankins 271 Google, Inc. 272 1600 Amphitheatre Parkway 273 Mountain View, CA 94043 274 USA 276 Email: dhankins@google.com 278 Tomasz Mrugalski 279 Gdansk University of Technology 280 Storczykowa 22B/12 281 Gdansk 80-177 282 Poland 284 Phone: +48 698 088 272 285 Email: tomasz.mrugalski@eti.pg.gda.pl