idnits 2.17.1 draft-ietf-softwire-map-dhcp-10.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 (November 11, 2014) is 3452 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) == Outdated reference: A later version (-21) exists of draft-ietf-dhc-sedhcpv6-03 == Outdated reference: A later version (-13) exists of draft-ietf-softwire-lw4over6-03 == Outdated reference: A later version (-08) exists of draft-ietf-softwire-map-t-04 == Outdated reference: A later version (-13) exists of draft-ietf-softwire-map-08 == Outdated reference: A later version (-08) exists of draft-ietf-softwire-unified-cpe-01 -- Obsolete informational reference (is this intentional?): RFC 6145 (Obsoleted by RFC 7915) Summary: 1 error (**), 0 flaws (~~), 6 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Softwire WG T. Mrugalski 3 Internet-Draft ISC 4 Intended status: Standards Track O. Troan 5 Expires: May 15, 2015 Cisco 6 I. Farrer 7 Deutsche Telekom AG 8 S. Perreault 9 Viagenie 10 W. Dec 11 Cisco 12 C. Bao 13 Tsinghua University 14 L. Yeh 15 CNNIC 16 X. Deng 17 Yingke Law Firm 18 November 11, 2014 20 DHCPv6 Options for configuration of Softwire Address and Port Mapped 21 Clients 22 draft-ietf-softwire-map-dhcp-10 24 Abstract 26 This document specifies DHCPv6 options, termed Softwire46 options, 27 for the provisioning of Softwire46 Customer Edge (CE) devices. 28 Softwire46 is a collective term used to refer to architectures based 29 on the notion of IPv4 Address+Port (A+P) for providing IPv4 30 connectivity across an IPv6 network. 32 Status of This Memo 34 This Internet-Draft is submitted in full conformance with the 35 provisions of BCP 78 and BCP 79. 37 Internet-Drafts are working documents of the Internet Engineering 38 Task Force (IETF). Note that other groups may also distribute 39 working documents as Internet-Drafts. The list of current Internet- 40 Drafts is at http://datatracker.ietf.org/drafts/current/. 42 Internet-Drafts are draft documents valid for a maximum of six months 43 and may be updated, replaced, or obsoleted by other documents at any 44 time. It is inappropriate to use Internet-Drafts as reference 45 material or to cite them other than as "work in progress." 47 This Internet-Draft will expire on May 15, 2015. 49 Copyright Notice 51 Copyright (c) 2014 IETF Trust and the persons identified as the 52 document authors. All rights reserved. 54 This document is subject to BCP 78 and the IETF Trust's Legal 55 Provisions Relating to IETF Documents 56 (http://trustee.ietf.org/license-info) in effect on the date of 57 publication of this document. Please review these documents 58 carefully, as they describe your rights and restrictions with respect 59 to this document. Code Components extracted from this document must 60 include Simplified BSD License text as described in Section 4.e of 61 the Trust Legal Provisions and are provided without warranty as 62 described in the Simplified BSD License. 64 Table of Contents 66 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 67 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3 68 3. Softwire46 Overview . . . . . . . . . . . . . . . . . . . . . 3 69 4. Common Softwire46 DHCPv6 Options . . . . . . . . . . . . . . 4 70 4.1. S46 Rule Option . . . . . . . . . . . . . . . . . . . . . 5 71 4.2. S46 BR Option . . . . . . . . . . . . . . . . . . . . . . 7 72 4.3. S46 DMR Option . . . . . . . . . . . . . . . . . . . . . 7 73 4.4. S46 IPv4/IPv6 Address Binding Option . . . . . . . . . . 8 74 4.5. S46 Port Parameters Option . . . . . . . . . . . . . . . 9 75 5. Softwire46 Containers . . . . . . . . . . . . . . . . . . . . 10 76 5.1. Softwire46 MAP-E Container Option . . . . . . . . . . . . 10 77 5.2. Softwire46 MAP-T Container Option . . . . . . . . . . . . 11 78 5.3. Softwire46 LightWeight 46 Container Option . . . . . . . 11 79 6. Softwire46 Options Formatting . . . . . . . . . . . . . . . . 12 80 7. DHCPv6 Server Behavior . . . . . . . . . . . . . . . . . . . 13 81 8. DHCPv6 Client Behavior . . . . . . . . . . . . . . . . . . . 13 82 9. Security Considerations . . . . . . . . . . . . . . . . . . . 14 83 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 84 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14 85 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 15 86 12.1. Normative References . . . . . . . . . . . . . . . . . . 15 87 12.2. Informative References . . . . . . . . . . . . . . . . . 15 88 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 90 1. Introduction 92 A number of architectural solution proposals discussed in the IETF 93 Softwire Working Group use Address and Port (A+P) as their technology 94 base for providing IPv4 connectivity to end users using CE devices 95 across a Service Provider's IPv6 network, while allowing for shared 96 or dedicated IPv4 addressing of CEs. 98 An example is Mapping of Address and Port (MAP) defined in 99 [I-D.ietf-softwire-map]. The MAP solution consists of one or more 100 MAP Border Relay (BR) routers, responsible for stateless forwarding 101 between a MAP IPv6 domain and an IPv4 network, and one or more MAP 102 Customer Edge (CE) routers, responsible for forwarding between a 103 user's IPv4 network and the MAP IPv6 network domain. Collectively, 104 the MAP CE and BR form a domain when configured with common service 105 parameters. This characteristic is common to all of the Softwire46 106 mechanisms. 108 To function in such a domain, a CE needs to be provisioned with the 109 appropriate A+P service parameters for that domain. These consist 110 primarily of the CE's IPv4 address and transport layer port-range(s). 111 Furthermore, the IPv6 transport mode (i.e. encapsulation or 112 translation) needs to be specified. Provisioning of other IPv4 113 configuration information not derived directly from the A+P service 114 parameters is not covered in this document. It is expected that 115 provisioning of other IPv4 configuration will continue to use DHCPv4 116 [RFC2131]. 118 This memo specifies a set of DHCPv6 [RFC3315] options to provision 119 Softwire46 information to CE routers. Although the focus is to 120 deliver IPv4 service to an end-user network (such as a residential 121 home network), it can equally be applied to an individual host acting 122 as a CE. Configuration of the BR is out of scope of this document. 124 2. Conventions 126 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 127 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 128 document are to be interpreted as described in RFC 2119 [RFC2119]. 130 3. Softwire46 Overview 132 This document describes a set of common DHCPv6 options for 133 configuring the MAP-E [I-D.ietf-softwire-map], MAP-T 134 [I-D.ietf-softwire-map-t] and Lightweight 4over6 135 [I-D.ietf-softwire-lw4over6] mechanisms. For definition of the 136 terminology used in this document please see the relevant terminology 137 sections in the above references. 139 MAP-E, MAP-T and Lightweight 4over6 are essentially providing the 140 same functionality: IPv4 service to a CE router over an IPv6 only 141 access network. MAP-E and MAP-T may embed parts of the IPv4 address 142 in IPv6 prefixes, thereby supporting many clients with a fixed set of 143 mapping rules and mesh mode (direct CE to CE communication). MAP-E 144 and MAP-T CEs may also be provisioned in hub and spoke mode, and in 145 1:1 mode (with no embedded address bits). The difference between 146 MAP-E and MAP-T is that they use different means to connect to the 147 IPv6 domain. MAP-E uses RFC2473 [RFC2473] IPv4 over IPv6 tunnelling, 148 while MAP-T uses NAT64 [RFC6145] based translation. Lightweight 149 4over6 is a hub and spoke IPv4 over IPv6 tunneling mechanism, with 150 complete independence of IPv4 and IPv6 addressing (zero embedded 151 address bits). 153 The DHCP options described here tie the provisioning parameters, and 154 hence the IPv4 service itself, to the End-user IPv6 prefix lifetime. 155 The validity of a Softwire46's IPv4 address, prefix or shared IPv4 156 address, port set and any authorization and accounting are tied to 157 the lifetime of its associated End-user IPv6 prefix. 159 To support more than one mechanism at a time and to allow for a 160 possibility of transition between them, the DHCPv6 Option Request 161 Option [RFC3315] is used. Each mechanism has a corresponding DHCPv6 162 container option. A DHCPv6 client can request a particular mechanism 163 by including the option code for a particular container option in its 164 ORO option. The provisioning parameters for that mechanism are 165 expressed by embedding the common format options within the 166 respective container option. 168 This approach implies that all of the provisioning options MUST 169 appear only within the container options. The client MUST NOT 170 request any of the provisioning options directly within an ORO. MAP- 171 DHCP clients that receive provisioning options that are not 172 encapsulated in container options MUST silently ignore these options. 173 DHCP server administrators are advised to ensure that DHCP servers 174 are configured to send these options in the proper encapsulation. 176 The document is organized with the common sub-options described 177 first, followed by the three container options. Some sub-options are 178 mandatory in some containers, some are optional and some are not 179 permitted at all. This is shown in Table 1. 181 4. Common Softwire46 DHCPv6 Options 183 The DHCPv6 protocol is used for Softwire46 CE provisioning following 184 regular DHCPv6 notions, with the CE assuming the role of a DHCPv6 185 client, and the DHCPv6 server providing options following DHCPv6 186 server side policies. The format and usage of the options are 187 defined in the following sub-sections. 189 Each CE needs to be provisioned with enough information to calculate 190 its IPv4 address, IPv4 prefix or shared IPv4 address. MAP-E and 191 MAP-T use the OPTION_S46_RULE, while Lightweight 4over6 uses the 192 OPTION_S46_V4V6BIND option. A CE that needs to communicate outside 193 of the A+P domain also needs the address or prefix of the BR. MAP-E 194 and Lightweight 4over6 use the OPTION_S46_BR option to communicate 195 the IPv6 address of the BR. MAP-T forms an IPv6 destination address 196 by embedding an IPv4 destination address into the BR's IPv6 prefix 197 conveyed via the OPTION_S46_DMR option. Optionally, all mechanisms 198 can include OPTION_S46_PORTPARAMS to specify parameters and port sets 199 for the port range algorithm. 201 4.1. S46 Rule Option 203 Figure 1 shows the format of the S46 Rule option (OPTION_S46_RULE) 204 used for conveying the Basic Mapping Rule (BMR) and Forwarding 205 Mapping Rule (FMR). 207 This option follows behavior described in Sections 17.1.1 and 18.1.1 208 of [RFC3315]. Clients can insert those options with specific values 209 as hints for the server. Depending on the server configuration and 210 policy, it may accept or ignore the hints. Client MUST be able to 211 process received values that are different than the hints it sent 212 earlier. 214 0 1 2 3 215 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 216 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 217 | OPTION_S46_RULE | option-length | 218 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 219 | flags | ea-len | prefix4-len | ipv4-prefix | 220 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 221 | (continued) | prefix6-len | 222 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 223 | ipv6-prefix | 224 | (variable length) | 225 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 226 | | 227 . S46_RULE-options . 228 . . 229 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 231 Figure 1: S46 Rule Option 233 o option-code: OPTION_S46_RULE (TBD1) 235 o option-length: length of the option, excluding option-code and 236 option-length fields, including length of all encapsulated 237 options, expressed in bytes. 239 o flags: 8 bits long field carrying flags applicable to the rule. 240 The meaning of specific bits are explained in Figure 2. 242 o ea-len: 8 bits long field that specifies the Embedded-Address (EA) 243 bit length. Allowed values range from 0 to 48. 245 o prefix4-len: 8 bits long field expressing the prefix length of the 246 IPv4 prefix specified in the rule-ipv4-prefix field. Valid values 247 0 to 32. 249 o ipv4-prefix: a fixed length 32 bit field that specifies the IPv4 250 prefix for the S46 rule. The bits in the prefix after prefix4-len 251 number of bits are reserved and MUST be initialized to zero by the 252 sender and ignored by the receiver. 254 o prefix6-len: 8 bits long field expressing the length of the IPv6 255 prefix specified in the rule-ipv6-prefix field. 257 o ipv6-prefix: a variable length field that specifies the IPv6 258 domain prefix for the S46 rule. The field is padded on the right 259 with zero bits up to the nearest octet boundary when prefix6-len 260 is not evenly divisible by 8. 262 o S46_RULE-options: a variable field that may contain zero or more 263 options that specify additional parameters for this S46 rule. 264 This document specifies one such option, OPTION_S46_PORTPARAMS. 266 The Format of the S46 Rule Flags field is: 268 0 1 2 3 4 5 6 7 269 +-+-+-+-+-+-+-+-+ 270 |Reserved |F| 271 +-+-+-+-+-+-+-+-+ 273 Figure 2: S46 Rule Flags 275 o Reserved: 7-bits reserved for future use as flags. 277 o F-Flag: 1 bit field that specifies whether the rule is to be used 278 for forwarding (FMR). If set, this rule is used as a FMR, if not 279 set this rule is a BMR only and MUST NOT be used for forwarding. 280 Note: A BMR can also be used as an FMR for forwarding if the 281 F-flag is set. The BMR rule is determined by a longest-prefix 282 match of the Rule-IPv6-prefix against the End-User IPv6 283 prefix(es). 285 It is expected that in a typical mesh deployment scenario, there will 286 be a single BMR, which could also be designated as an FMR using the 287 F-Flag. 289 4.2. S46 BR Option 291 The S46 BR Option (OPTION_S46_BR) is used to convey the IPv6 address 292 of the Border Relay. Figure 4 shows the format of the OPTION_S46_BR 293 option. 295 0 1 2 3 296 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 297 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 298 | OPTION_S46_BR | option-length | 299 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 300 | br-ipv6-address | 301 | | 302 | | 303 | | 304 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 306 Figure 3: S46 BR Option 308 o option-code: OPTION_S46_BR (TBD2) 310 o option-length: 16 312 o br-ipv6-address: a fixed length field of 16 octets that specifies 313 the IPv6 address for the S46 BR. 315 BR redundancy can be implemented by using an anycast address for the 316 BR IPv6 address. Multiple OPTION_S46_BR options MAY be included in 317 the container; this document does not further explore the use of 318 multiple BR IPv6 addresses. 320 4.3. S46 DMR Option 322 The S46 DMR Option (OPTION_S46_DMR) is used to convey values for the 323 Default Mapping Rule (DMR). Figure 4 shows the format of the 324 OPTION_S46_DMR option used for conveying a DMR. 326 0 1 2 3 327 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 328 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 329 | OPTION_S46_DMR | option-length | 330 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 331 |dmr-prefix6-len| dmr-ipv6-prefix | 332 +-+-+-+-+-+-+-+-+ (variable length) | 333 . . 334 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 336 Figure 4: S46 DMR Option 338 o option-code: OPTION_S46_DMR (TBD3) 340 o option-length: 1 + length of dmr-ipv6-prefix specified in bytes. 342 o dmr-prefix6-len: 8 bits long field expressing the bit mask length 343 of the IPv6 prefix specified in the dmr-ipv6-prefix field. 345 o dmr-ipv6-prefix: a variable length field specifying the IPv6 346 prefix or address for the BR. This field is right padded with 347 zeros to the nearest octet boundary when dmr-prefix6-len is not 348 divisible by 8. 350 4.4. S46 IPv4/IPv6 Address Binding Option 352 The IPv4 address Option (OPTION_S46_V4V6BIND) MAY be used to specify 353 the full or shared IPv4 address of the CE. The IPv6 prefix field is 354 used by the CE to identify the correct prefix to use for the tunnel 355 source. 357 0 1 2 3 358 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 359 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 360 | OPTION_S46_V4V6BIND | option-length | 361 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 362 | ipv4-address | 363 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 364 |bindprefix6-len| bind-ipv6-prefix | 365 +-+-+-+-+-+-+-+-+ (variable length) | 366 . . 367 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 368 | | 369 . S46_V4V6BIND-options . 370 . . 371 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 373 Figure 5: S46 IPv4/IPv6 Address Binding Option 375 o option-code: OPTION_S46_V4V6BIND (TBD4) 377 o option-length: 4 379 o ipv4-address: A fixed field of 4 octets specifying an IPv4 380 address. 382 o bindprefix6-len: 8 bits long field expressing the bit mask length 383 of the IPv6 prefix specified in the bind-ipv6-prefix field. 385 o bind-ipv6-prefix: a variable length field specifying the IPv6 386 prefix or address for the S46. This field is right padded with 387 zeros to the nearest octet boundary when bindprefix6-len is not 388 divisible by 8. 390 o S46_V4V6BIND-options: a variable field that may contain zero or 391 more options that specify additional parameters. This document 392 specifies one such option, OPTION_S46_PORTPARAMS. 394 4.5. S46 Port Parameters Option 396 The Port Parameters Option (OPTION_S46_PORTPARAMS) specifies optional 397 Port Set information that MAY be provided to CEs. 399 See [I-D.ietf-softwire-map], Section 5.1 for a description of MAP 400 algorithm, explaining all of the parameters in detail. 402 0 1 2 3 403 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 404 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 405 | OPTION_S46_PORTPARAMS | option-length | 406 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 407 | offset | PSID-len | PSID | 408 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 410 Figure 6: S46 Port Parameters Option 412 o option-code: OPTION_S46_PORTPARAMS (TBD5) 414 o option-length: 4 416 o offset: (PSID offset) 8 bits long field that specifies the numeric 417 value for the S46 algorithm's excluded port range/offset bits 418 (A-bits), as per section 5.1.1 of [I-D.ietf-softwire-map]. 419 Allowed values are between 0 and 15. Default values for this 420 field are specific to the softwire mechanism being implemented and 421 are defined in the relevant specification document. 423 o PSID-len: Bit length value of the number of significant bits in 424 the PSID field. (also known as 'k'). When set to 0, the PSID 425 field is to be ignored. After the first 'a' bits, there are k 426 bits in the port number representing the value of the Port Set 427 Identifier (PSID). Consequently, the address sharing ratio would 428 be 2^k. 430 o PSID: Explicit 16-bit (unsigned word) PSID value. The PSID value 431 algorithmically identifies a set of ports assigned to a CE. The 432 first k bits on the left of this field contain the PSID value. 433 The remaining (16-k) bits on the right are padding zeros. 435 When receiving the OPTION_S46_PORTPARAMS option with an explicit 436 PSID, the client MUST use this explicit PSID in configuring its 437 softwire interface. The OPTION_S46_PORTPARAMS option with an 438 explicit PSID MUST be discarded if the S46 CE isn't configured with a 439 full IPv4 address (e.g. IPv4 prefix). 441 The OPTION_S46_PORTPARAMS option with an explicit PSID MUST be 442 discarded if the S46 CE isn't configured with a full IPv4 address 443 (e.g. IPv4 prefix). 445 The OPTION_S46_PORTPARAMS option is contained within an 446 OPTION_S46_RULE option or an OPTION_S46_V4V6BIND option. 448 5. Softwire46 Containers 450 5.1. Softwire46 MAP-E Container Option 452 The MAP-E Container Option (OPTION_S46_CONT_MAPE) specifies the 453 container used to group all rules and optional port parameters for a 454 specified domain. 456 0 1 2 3 457 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 458 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 459 | OPTION_S46_CONT_MAPE | option-length | 460 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 461 | | 462 . encapsulated-options (variable length) . 463 . . 464 +---------------------------------------------------------------+ 466 Figure 7: MAP-E Container Option 468 o option-code: OPTION_S46_CONT_MAPE (TBD6) 470 o option-length: Length of encapsulated options 472 o encapsulated-options: options associated with this Softwire46 473 MAP-E domain. 475 The encapsulated options field conveys options specific to the 476 OPTION_S46_CONT_MAPE. Currently there are two sub-options specified, 477 OPTION_S46_RULE and OPTION_S46_BR. There MUST be at least one 478 OPTION_S46_RULE option and at least one OPTION_S46_BR option. 480 Other options applicable to a domain may be defined in the future. A 481 DHCP message MAY include multiple OPTION_S46_CONT_MAPE options 482 (representing multiple domains). 484 5.2. Softwire46 MAP-T Container Option 486 The MAP-T Container option (OPTION_S46_CONT_MAPT) specifies the 487 container used to group all rules and optional port parameters for a 488 specified domain. 490 0 1 2 3 491 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 492 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 493 | OPTION_S46_CONT_MAPT | option-length | 494 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 495 | | 496 . encapsulated-options (variable length) . 497 . . 498 +---------------------------------------------------------------+ 500 Figure 8: MAP-E Container Option 502 o option-code: OPTION_S46_CONT_MAPT (TBD7) 504 o option-length: Length of encapsulated options 506 o encapsulated-options: options associated with this Softwire46 507 MAP-T domain. 509 The encapsulated options field conveys options specific to the 510 OPTION_S46_CONT_MAPT option. Currently there are two options 511 specified, the OPTION_S46_RULE and OPTION_S46_DMR options. There 512 MUST be at least one OPTION_S46_RULE option and exactly one 513 OPTION_S46_DMR option. 515 5.3. Softwire46 LightWeight 46 Container Option 517 The LW46 Container option (OPTION_S46_CONT_LW) specifies the 518 container used to group all rules and optional port parameters for a 519 specified domain. 521 0 1 2 3 522 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 524 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 525 | OPTION_S46_CONT_LW | option-length | 526 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 527 | | 528 + encapsulated-options (variable length) . 529 . . 530 +---------------------------------------------------------------+ 532 Figure 9: LW46 Container Option 534 o option-code: OPTION_S46_CONT_LW (TBD8) 536 o option-length: Length of encapsulated options 538 o encapsulated-options: options associated with this Softwire46 539 domain. 541 The encapsulated options field conveys options specific to the 542 OPTION_S46_CONT_LW option. Currently there are two options 543 specified, OPTION_S46_V4V6BIND and OPTION_S46_BR. There MUST be at 544 most one OPTION_S46_V4V6BIND option and at least one OPTION_S46_BR 545 option. 547 6. Softwire46 Options Formatting 549 The below table shows which sub-options are mandatory, optional or 550 not permitted for each defined container option. 552 +-----------------------+-------+-------+--------------------+ 553 | Option | MAP-E | MAP-T | Lightweight 4over6 | 554 +-----------------------+-------+-------+--------------------+ 555 | OPTION_S46_RULE | M | M | N/A | 556 | | | | | 557 | OPTION_S46_BR | M | N/A | M | 558 | | | | | 559 | OPTION_S46_PORTPARAMS | O | O | O | 560 | | | | | 561 | OPTION_S46_DMR | N/A | M | N/A | 562 | | | | | 563 | OPTION_S46_V4V6BIND | N/A | N/A | O | 564 +-----------------------+-------+-------+--------------------+ 566 M - Mandatory, O - Optional, N/A - Not Applicable 568 Table 1: Option to Container Mappings 570 MAP-DHCP clients that receive container options that violate any of 571 the above rules MUST silently ignore such container options. 573 7. DHCPv6 Server Behavior 575 [RFC3315] Section 17.2.2 describes how a DHCPv6 client and server 576 negotiate configuration values using the ORO. As a convenience to 577 the reader, we mention here that by default, a server will not reply 578 with a Softwire46 Container Option if the client has not explicitly 579 enumerated one in its Option Request Option. 581 A CE router may support several (or all) of the mechanisms mentioned 582 here. In the case where a client requests multiple mechanisms in its 583 ORO option, the server will reply with the corresponding Softwire46 584 Container options for which it has configuration information. 586 8. DHCPv6 Client Behavior 588 An S46 CE acting as DHCPv6 client will request S46 configuration 589 parameters from the DHCPv6 server located in the IPv6 network. Such 590 a client MUST include the S46 Container option(s) that it is 591 configured for in its ORO in SOLICIT, REQUEST, RENEW, REBIND and 592 INFORMATION-REQUEST messages. 594 When processing received S46 container options the following 595 behaviour is expected: 597 o A client MUST support processing multiple received OPTION_S46_RULE 598 options in a container OPTION_S46_CONT_MAPE or 599 OPTION_S46_CONT_MAPT option 601 o A client receiving an unsupported S46 option, or an invalid 602 parameter value SHOULD discard that S46 Container option and log 603 the event. 605 The behavior of a client supporting multiple Softwire46 mechanisms, 606 is out of scope of this document. [I-D.ietf-softwire-unified-cpe] 607 describes client behaviour for the prioritization and handling of 608 multiple mechanisms simultaneously. 610 Note that system implementing CE functionality may have multiple 611 network interfaces, and these interfaces may be configured 612 differently; some may be connected to networks using a Softwire46 613 mechanism, and some may be connected to networks that are using 614 normal dual stack or other means. The CE should approach this 615 specification on an interface-by-interface basis. For example, if 616 the CE system is MAP-E capable and is attached to multiple networks 617 that provide the OPTION_S46_CONT_MAPE option, then the CE MUST 618 configure MAP-E for each interface separately. 620 9. Security Considerations 622 Section 23 of [RFC3315] discusses DHCPv6-related security issues. 624 As with all DHCPv6-derived configuration state, it is possible that 625 configuration is actually being delivered by a third party (Man In 626 The Middle). As such, there is no basis on which access over MAP or 627 lw4o6 can be trusted. Therefore, softwires should not bypass any 628 security mechanisms such as IP firewalls. 630 In IPv6-only networks that lack any IPv4 firewalls, a device 631 supporting MAP could be tricked into enabling its IPv4 stack and 632 direct IPv4 traffic to the attacker, thus exposing itself to 633 previously infeasible IPv4 attack vectors. 635 Section 11 of [I-D.ietf-softwire-map] discusses security issues of 636 the MAP mechanism. 638 Readers concerned with security of MAP provisioning over DHCPv6 are 639 encouraged to read [I-D.ietf-dhc-sedhcpv6]. 641 10. IANA Considerations 643 IANA is kindly requested to allocate the following DHCPv6 option 644 codes: 646 TBD1 for OPTION_S46_RULE 648 TBD2 for OPTION_S46_BR 650 TBD3 for OPTION_S46_DMR 652 TBD4 for OPTION_S46_V4V6BIND 654 TBD5 for OPTION_S46_PORTPARAMS 656 TBD6 for OPTION_S46_CONT_MAPE 658 TBD7 for OPTION_S46_CONT_MAPT 660 TBD8 for OPTION_S46_CONT_LW 662 All values should be added to the DHCPv6 option code space defined in 663 Section 24.3 of [RFC3315]. 665 11. Acknowledgements 666 This document was created as a product of a MAP design team. 667 Following people were members of that team: Congxiao Bao, Mohamed 668 Boucadair, Gang Chen, Maoke Chen, Wojciech Dec, Xiaohong Deng, Jouni 669 Korhonen, Xing Li, Satoru Matsushima, Tomasz Mrugalski, Tetsuya 670 Murakami, Jacni Qin, Necj Scoberne, Qiong Sun, Tina Tsou, Dan Wing, 671 Leaf Yeh and Jan Zorz. 673 The authors would like to thank Bernie Volz and Tom Taylor for their 674 insightful comments and suggestions. 676 12. References 678 12.1. Normative References 680 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 681 Requirement Levels", BCP 14, RFC 2119, March 1997. 683 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 684 and M. Carney, "Dynamic Host Configuration Protocol for 685 IPv6 (DHCPv6)", RFC 3315, July 2003. 687 12.2. Informative References 689 [I-D.ietf-dhc-sedhcpv6] 690 Jiang, S., Shen, S., Zhang, D., and T. Jinmei, "Secure 691 DHCPv6 with Public Key", draft-ietf-dhc-sedhcpv6-03 (work 692 in progress), June 2014. 694 [I-D.ietf-softwire-lw4over6] 695 Cui, Y., Qiong, Q., Boucadair, M., Tsou, T., Lee, Y., and 696 I. Farrer, "Lightweight 4over6: An Extension to the DS- 697 Lite Architecture", draft-ietf-softwire-lw4over6-03 (work 698 in progress), November 2013. 700 [I-D.ietf-softwire-map-t] 701 Li, X., Bao, C., Dec, W., Troan, O., Matsushima, S., and 702 T. Murakami, "Mapping of Address and Port using 703 Translation (MAP-T)", draft-ietf-softwire-map-t-04 (work 704 in progress), September 2013. 706 [I-D.ietf-softwire-map] 707 Troan, O., Dec, W., Li, X., Bao, C., Matsushima, S., 708 Murakami, T., and T. Taylor, "Mapping of Address and Port 709 with Encapsulation (MAP)", draft-ietf-softwire-map-08 710 (work in progress), August 2013. 712 [I-D.ietf-softwire-unified-cpe] 713 Boucadair, M., Farrer, I., Perreault, S., and S. 714 Sivakumar, "Unified IPv4-in-IPv6 Softwire CPE", draft- 715 ietf-softwire-unified-cpe-01 (work in progress), May 2013. 717 [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", RFC 718 2131, March 1997. 720 [RFC2473] Conta, A. and S. Deering, "Generic Packet Tunneling in 721 IPv6 Specification", RFC 2473, December 1998. 723 [RFC6145] Li, X., Bao, C., and F. Baker, "IP/ICMP Translation 724 Algorithm", RFC 6145, April 2011. 726 Authors' Addresses 728 Tomasz Mrugalski 729 Internet Systems Consortium, Inc. 730 950 Charter Street 731 Redwood City, CA 94063 732 USA 734 Phone: +1 650 423 1345 735 Email: tomasz.mrugalski@gmail.com 736 URI: http://www.isc.org/ 738 Ole Troan 739 Cisco Systems, Inc. 740 Philip Pedersens vei 1 741 Lysaker 1366 742 Norway 744 Email: ot@cisco.com 746 Ian Farrer 747 Deutsche Telekom AG 748 CTO-ATI, Landgrabenweg 151 749 Bonn, NRW 53227 750 Germany 752 Email: ian.farrer@telekom.de 753 Simon Perreault 754 Viagenie 755 246 Aberdeen 756 Quebec, QC G1R 2E1 757 Canada 759 Phone: +1 418 656 9254 760 Email: simon.perreault@viagenie.ca 762 Wojciech Dec 763 Cisco Systems, Inc. 764 The Netherlands 766 Email: wdec@cisco.com 767 URI: http://cisco.com 769 Congxiao Bao 770 CERNET Center/Tsinghua University 771 Room 225, Main Building, Tsinghua University 772 Beijing 100084 773 CN 775 Phone: +86 10-62785983 776 Email: congxiao@cernet.edu.cn 778 Leaf Y. Yeh 779 CNNIC 780 4, South 4th Street, Zhong_Guan_Cun 781 Beijing 100190 782 P. R. China 784 Email: leaf.yeh.sdo@gmail.com 786 Xiaohong Deng 787 Yingke Law Firm 788 6 Floor, C Block, DaCheng International Center Chaoyang District 789 Beijing 100124 790 China 792 Phone: +61 3858 3128 793 Email: dxhbupt@gmail.com