idnits 2.17.1 draft-ietf-v6ops-6204bis-02.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 : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) -- The draft header indicates that this document updates RFC6204, but the abstract doesn't seem to mention this, which it should. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 31, 2011) is 4553 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Unused Reference: 'RFC1102' is defined on line 768, but no explicit reference was found in the text == Unused Reference: 'RFC1104' is defined on line 771, but no explicit reference was found in the text == Unused Reference: 'RFC1918' is defined on line 777, but no explicit reference was found in the text == Unused Reference: 'RFC3484' is defined on line 795, but no explicit reference was found in the text == Unused Reference: 'RFC6204' is defined on line 876, but no explicit reference was found in the text ** Obsolete normative reference: RFC 3315 (Obsoleted by RFC 8415) ** Obsolete normative reference: RFC 3484 (Obsoleted by RFC 6724) ** Obsolete normative reference: RFC 3633 (Obsoleted by RFC 8415) ** Obsolete normative reference: RFC 3736 (Obsoleted by RFC 8415) ** Obsolete normative reference: RFC 4242 (Obsoleted by RFC 8415) ** Obsolete normative reference: RFC 4294 (Obsoleted by RFC 6434) ** Obsolete normative reference: RFC 5735 (Obsoleted by RFC 6890) ** Obsolete normative reference: RFC 6106 (Obsoleted by RFC 8106) ** Obsolete normative reference: RFC 6204 (Obsoleted by RFC 7084) Summary: 10 errors (**), 0 flaws (~~), 6 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group H. Singh 3 Internet-Draft W. Beebee 4 Updates: 6204 (if approved) Cisco Systems, Inc. 5 Intended status: Informational C. Donley 6 Expires: May 3, 2012 CableLabs 7 B. Stark 8 AT&T 9 O. Troan, Ed. 10 Cisco Systems, Inc. 11 October 31, 2011 13 Basic Requirements for IPv6 Customer Edge Routers 14 draft-ietf-v6ops-6204bis-02 16 Abstract 18 This document specifies requirements for an IPv6 Customer Edge (CE) 19 router. Specifically, the current version of this document focuses 20 on the basic provisioning of an IPv6 CE router and the provisioning 21 of IPv6 hosts attached to it. The document also covers IP transition 22 technologies and transition technologies coexistence. Two transition 23 technologies in RFC 5969's 6rd and RFC 6333's DS-Lite. are covered in 24 the document. 26 Status of this Memo 28 This Internet-Draft is submitted in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Internet-Drafts are working documents of the Internet Engineering 32 Task Force (IETF). Note that other groups may also distribute 33 working documents as Internet-Drafts. The list of current Internet- 34 Drafts is at http://datatracker.ietf.org/drafts/current/. 36 Internet-Drafts are draft documents valid for a maximum of six months 37 and may be updated, replaced, or obsoleted by other documents at any 38 time. It is inappropriate to use Internet-Drafts as reference 39 material or to cite them other than as "work in progress." 41 This Internet-Draft will expire on May 3, 2012. 43 Copyright Notice 45 Copyright (c) 2011 IETF Trust and the persons identified as the 46 document authors. All rights reserved. 48 This document is subject to BCP 78 and the IETF Trust's Legal 49 Provisions Relating to IETF Documents 50 (http://trustee.ietf.org/license-info) in effect on the date of 51 publication of this document. Please review these documents 52 carefully, as they describe your rights and restrictions with respect 53 to this document. Code Components extracted from this document must 54 include Simplified BSD License text as described in Section 4.e of 55 the Trust Legal Provisions and are provided without warranty as 56 described in the Simplified BSD License. 58 Table of Contents 60 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 61 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 62 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 63 3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . . 4 64 3.1. Current IPv4 End-User Network Architecture . . . . . . . . 4 65 3.2. IPv6 End-User Network Architecture . . . . . . . . . . . . 5 66 3.2.1. Local Communication . . . . . . . . . . . . . . . . . 6 67 4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 7 68 4.1. General Requirements . . . . . . . . . . . . . . . . . . . 7 69 4.2. WAN-Side Configuration . . . . . . . . . . . . . . . . . . 8 70 4.3. LAN-Side Configuration . . . . . . . . . . . . . . . . . . 11 71 4.4. Transition Technologies Support . . . . . . . . . . . . . 13 72 4.4.1. 6rd . . . . . . . . . . . . . . . . . . . . . . . . . 13 73 4.4.2. Dual-Stack Lite(DS-Lite) . . . . . . . . . . . . . . . 14 74 4.4.3. Transition Technologies Coexistence . . . . . . . . . 15 75 4.5. Security Considerations . . . . . . . . . . . . . . . . . 16 76 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 16 77 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 17 78 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 17 79 7.1. Normative References . . . . . . . . . . . . . . . . . . . 17 80 7.2. Informative References . . . . . . . . . . . . . . . . . . 20 81 Appendix A. Changes from RFC 6204 . . . . . . . . . . . . . . . . 20 82 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 21 84 1. Introduction 86 This document defines basic IPv6 features for a residential or small- 87 office router, referred to as an IPv6 CE router. Typically, these 88 routers also support IPv4. 90 Mixed environments of dual-stack hosts and IPv6-only hosts (behind 91 the CE router) can be more complex if the IPv6-only devices are using 92 a translator to access IPv4 servers [RFC6144]. Support for such 93 mixed environments is not in scope of this document. 95 This document specifies how an IPv6 CE router automatically 96 provisions its WAN interface, acquires address space for provisioning 97 of its LAN interfaces, and fetches other configuration information 98 from the service provider network. Automatic provisioning of more 99 complex topology than a single router with multiple LAN interfaces is 100 out of scope for this document. 102 See [RFC4779] for a discussion of options available for deploying 103 IPv6 in service provider access networks. 105 The document also covers IP transition technologies and transition 106 technologies coexistence. Two transition technologies in 6rd 107 [RFC5969] and DS-Lite [RFC6333] are covered in the document. At the 108 time of writing this document these were the only two transition 109 technologies available in RFC form to be included in this document. 111 1.1. Requirements Language 113 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 114 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 115 document are to be interpreted as described in RFC 2119 [RFC2119]. 117 2. Terminology 119 End-User Network one or more links attached to the IPv6 CE 120 router that connect IPv6 hosts. 122 IPv6 Customer Edge Router a node intended for home or small-office 123 use that forwards IPv6 packets not 124 explicitly addressed to itself. The IPv6 125 CE router connects the end-user network to 126 a service provider network. 128 IPv6 Host any device implementing an IPv6 stack 129 receiving IPv6 connectivity through the 130 IPv6 CE router. 132 LAN Interface an IPv6 CE router's attachment to a link in 133 the end-user network. Examples are 134 Ethernets (simple or bridged), 802.11 135 wireless, or other LAN technologies. An 136 IPv6 CE router may have one or more 137 network-layer LAN interfaces. 139 Service Provider an entity that provides access to the 140 Internet. In this document, a service 141 provider specifically offers Internet 142 access using IPv6, and may also offer IPv4 143 Internet access. The service provider can 144 provide such access over a variety of 145 different transport methods such as DSL, 146 cable, wireless, and others. 148 WAN Interface an IPv6 CE router's attachment to a link 149 used to provide connectivity to the service 150 provider network; example link technologies 151 include Ethernets (simple or bridged), PPP 152 links, Frame Relay, or ATM networks, as 153 well as Internet-layer (or higher-layer) 154 "tunnels", such as tunnels over IPv4 or 155 IPv6 itself. 157 3. Architecture 159 3.1. Current IPv4 End-User Network Architecture 161 An end-user network will likely support both IPv4 and IPv6. It is 162 not expected that an end-user will change their existing network 163 topology with the introduction of IPv6. There are some differences 164 in how IPv6 works and is provisioned; these differences have 165 implications for the network architecture. A typical IPv4 end-user 166 network consists of a "plug and play" router with NAT functionality 167 and a single link behind it, connected to the service provider 168 network. 170 A typical IPv4 NAT deployment by default blocks all incoming 171 connections. Opening of ports is typically allowed using a Universal 172 Plug and Play Internet Gateway Device (UPnP IGD) [UPnP-IGD] or some 173 other firewall control protocol. 175 Another consequence of using private address space in the end-user 176 network is that it provides stable addressing; i.e., it never changes 177 even when you change service providers, and the addresses are always 178 there even when the WAN interface is down or the customer edge router 179 has not yet been provisioned. 181 Rewriting addresses on the edge of the network also allows for some 182 rudimentary multihoming, even though using NATs for multihoming does 183 not preserve connections during a fail-over event [RFC4864]. 185 Many existing routers support dynamic routing, and advanced end-users 186 can build arbitrary, complex networks using manual configuration of 187 address prefixes combined with a dynamic routing protocol. 189 3.2. IPv6 End-User Network Architecture 191 The end-user network architecture for IPv6 should provide equivalent 192 or better capabilities and functionality than the current IPv4 193 architecture. 195 The end-user network is a stub network. Figure 1 illustrates the 196 model topology for the end-user network. 198 +-------+-------+ \ 199 | Service | \ 200 | Provider | | Service 201 | Router | | Provider 202 +-------+-------+ | network 203 | / 204 | Customer / 205 | Internet connection / 206 | 207 +------+--------+ \ 208 | IPv6 | \ 209 | Customer Edge | \ 210 | Router | / 211 +---+-------+-+-+ / 212 Network A | | Network B | End-User 213 ---+-------------+----+- --+--+-------------+--- | network(s) 214 | | | | \ 215 +----+-----+ +-----+----+ +----+-----+ +-----+----+ \ 216 |IPv6 Host | |IPv6 Host | | IPv6 Host| |IPv6 Host | / 217 | | | | | | | | / 218 +----------+ +-----+----+ +----------+ +----------+ / 220 Figure 1: An Example of a Typical End-User Network 222 This architecture describes the: 224 o Basic capabilities of an IPv6 CE router 226 o Provisioning of the WAN interface connecting to the service 227 provider 229 o Provisioning of the LAN interfaces 231 For IPv6 multicast traffic, the IPv6 CE router may act as a Multicast 232 Listener Discovery (MLD) proxy [RFC4605] and may support a dynamic 233 multicast routing protocol. 235 The IPv6 CE router may be manually configured in an arbitrary 236 topology with a dynamic routing protocol. Automatic provisioning and 237 configuration are described for a single IPv6 CE router only. 239 3.2.1. Local Communication 241 Link-local IPv6 addresses are used by hosts communicating on a single 242 link. Unique Local IPv6 Unicast Addresses (ULAs) [RFC4193] are used 243 by hosts communicating within the end-user network across multiple 244 links, but without requiring the application to use a globally 245 routable address. The IPv6 CE router defaults to acting as the 246 demarcation point between two networks by providing a ULA boundary, a 247 multicast zone boundary, and ingress and egress traffic filters. 249 A dual-stack host is multihomed to IPv4 and IPv6 networks. The IPv4 250 and IPv6 topologies may not be congruent, and different addresses may 251 have different reachability, e.g., ULAs. A host stack has to be able 252 to quickly fail over and try a different source address and 253 destination address pair if communication fails, as outlined in 254 [HAPPY-EYEBALLS]. 256 At the time of this writing, several host implementations do not 257 handle the case where they have an IPv6 address configured and no 258 IPv6 connectivity, either because the address itself has a limited 259 topological reachability (e.g., ULA) or because the IPv6 CE router is 260 not connected to the IPv6 network on its WAN interface. To support 261 host implementations that do not handle multihoming in a multi-prefix 262 environment [MULTIHOMING-WITHOUT-NAT], the IPv6 CE router should not, 263 as detailed in the requirements below, advertise itself as a default 264 router on the LAN interface(s) when it does not have IPv6 265 connectivity on the WAN interface or when it is not provisioned with 266 IPv6 addresses. For local IPv6 communication, the mechanisms 267 specified in [RFC4191] are used. 269 ULA addressing is useful where the IPv6 CE router has multiple LAN 270 interfaces with hosts that need to communicate with each other. If 271 the IPv6 CE router has only a single LAN interface (IPv6 link), then 272 link-local addressing can be used instead. 274 In the event that more than one IPv6 CE router is present on the LAN, 275 then coexistence with IPv4 requires all of them to conform to these 276 recommendations, especially requirements ULA-5 and L-4 below. 278 4. Requirements 280 4.1. General Requirements 282 The IPv6 CE router is responsible for implementing IPv6 routing; that 283 is, the IPv6 CE router must look up the IPv6 destination address in 284 its routing table to decide to which interface it should send the 285 packet. 287 In this role, the IPv6 CE router is responsible for ensuring that 288 traffic using its ULA addressing does not go out the WAN interface, 289 and does not originate from the WAN interface. 291 G-1: An IPv6 CE router is an IPv6 node according to the IPv6 Node 292 Requirements [RFC4294] specification. 294 G-2: The IPv6 CE router MUST implement ICMPv6 according to 295 [RFC4443]. In particular, point-to-point links MUST be handled 296 as described in Section 3.1 of [RFC4443]. 298 G-3: The IPv6 CE router MUST NOT forward any IPv6 traffic between 299 its LAN interface(s) and its WAN interface until the router has 300 successfully completed the IPv6 address acquisition process. 302 G-4: By default, an IPv6 CE router that has no default router(s) on 303 its WAN interface MUST NOT advertise itself as an IPv6 default 304 router on its LAN interfaces. That is, the "Router Lifetime" 305 field is set to zero in all Router Advertisement messages it 306 originates [RFC4861]. 308 G-5: By default, if the IPv6 CE router is an advertising router and 309 loses its IPv6 default router(s) and/or detects loss of 310 connectivity on the WAN interface, it MUST explicitly 311 invalidate itself as an IPv6 default router on each of its 312 advertising interfaces by immediately transmitting one or more 313 Router Advertisement messages with the "Router Lifetime" field 314 set to zero [RFC4861]. 316 4.2. WAN-Side Configuration 318 The IPv6 CE router will need to support connectivity to one or more 319 access network architectures. This document describes an IPv6 CE 320 router that is not specific to any particular architecture or service 321 provider and that supports all commonly used architectures. 323 IPv6 Neighbor Discovery and DHCPv6 protocols operate over any type of 324 IPv6-supported link layer, and there is no need for a link-layer- 325 specific configuration protocol for IPv6 network-layer configuration 326 options as in, e.g., PPP IP Control Protocol (IPCP) for IPv4. This 327 section makes the assumption that the same mechanism will work for 328 any link layer, be it Ethernet, the Data Over Cable Service Interface 329 Specification (DOCSIS), PPP, or others. 331 WAN-side requirements: 333 W-1: When the router is attached to the WAN interface link, it MUST 334 act as an IPv6 host for the purposes of stateless [RFC4862] or 335 stateful [RFC3315] interface address assignment. 337 W-2: The IPv6 CE router MUST generate a link-local address and 338 finish Duplicate Address Detection according to [RFC4862] prior 339 to sending any Router Solicitations on the interface. The 340 source address used in the subsequent Router Solicitation MUST 341 be the link-local address on the WAN interface. 343 W-3: Absent other routing information, the IPv6 CE router MUST use 344 Router Discovery as specified in [RFC4861] to discover a 345 default router(s) and install default route(s) in its routing 346 table with the discovered router's address as the next hop. 348 W-4: The router MUST act as a requesting router for the purposes of 349 DHCPv6 prefix delegation ([RFC3633]). 351 W-5: DHCPv6 address assignment (IA_NA) and DHCPv6 prefix delegation 352 (IA_PD) SHOULD be done as a single DHCPv6 session. 354 W-6: The IPv6 CE router MUST use a persistent DHCP Unique Identifier 355 (DUID) for DHCPv6 messages. The DUID MUST NOT change between 356 network interface resets or IPv6 CE router reboots. 358 Link-layer requirements: 360 WLL-1: If the WAN interface supports Ethernet encapsulation, then 361 the IPv6 CE router MUST support IPv6 over Ethernet [RFC2464]. 363 WLL-2: If the WAN interface supports PPP encapsulation, the IPv6 CE 364 router MUST support IPv6 over PPP [RFC5072]. 366 WLL-3: If the WAN interface supports PPP encapsulation, in a dual- 367 stack environment with IPCP and IPV6CP running over one PPP 368 logical channel, the Network Control Protocols (NCPs) MUST be 369 treated as independent of each other and start and terminate 370 independently. 372 Address assignment requirements: 374 WAA-1: The IPv6 CE router MUST support Stateless Address 375 Autoconfiguration (SLAAC) [RFC4862]. 377 WAA-2: The IPv6 CE router MUST follow the recommendations in Section 378 4 of [RFC5942], and in particular the handling of the L flag 379 in the Router Advertisement Prefix Information option. 381 WAA-3: The IPv6 CE router MUST support DHCPv6 [RFC3315] client 382 behavior. 384 WAA-4: The IPv6 CE router MUST be able to support the following 385 DHCPv6 options: IA_NA, Reconfigure Accept [RFC3315], and 386 DNS_SERVERS [RFC3646]. 388 WAA-5: The IPv6 CE router SHOULD support the DHCPv6 Simple Network 389 Time Protocol (SNTP) option [RFC4075] and the Information 390 Refresh Time option [RFC4242]. 392 WAA-6: If the IPv6 CE router receives a Router Advertisement message 393 (described in [RFC4861]) with the M flag set to 1, the IPv6 394 CE router MUST do DHCPv6 address assignment (request an IA_NA 395 option). 397 WAA-7: If the IPv6 CE router does not acquire global IPv6 398 address(es) from either SLAAC or DHCPv6, then it MUST create 399 global IPv6 address(es) from its delegated prefix(es) and 400 configure those on one of its internal virtual network 401 interfaces unless configured to require a global IPv6 address 402 on the WAN interface. 404 WAA-8: The IPv6 CE router MUST set SOL_MAX_RT (specified by 405 [RFC3315]) to 7200 seconds. 407 WAA-9: As a router, the IPv6 CE router MUST follow the weak host 408 (Weak ES) model [RFC1122]. When originating packets from an 409 interface, it will use a source address from another one of 410 its interfaces if the outgoing interface does not have an 411 address of suitable scope. 413 Prefix delegation requirements: 415 WPD-1: The IPv6 CE router MUST support DHCPv6 prefix delegation 416 requesting router behavior as specified in [RFC3633] (IA_PD 417 option). 419 WPD-2: The IPv6 CE router MAY indicate as a hint to the delegating 420 router the size of the prefix it requires. If so, it MUST 421 ask for a prefix large enough to assign one /64 for each of 422 its interfaces, rounded up to the nearest nibble, and SHOULD 423 be configurable to ask for more. 425 WPD-3: The IPv6 CE router MUST be prepared to accept a delegated 426 prefix size different from what is given in the hint. If the 427 delegated prefix is too small to address all of its 428 interfaces, the IPv6 CE router SHOULD log a system management 429 error. 431 WPD-4: By default, the IPv6 CE router MUST initiate DHCPv6 prefix 432 delegation when either the M or O flags are set to 1 in a 433 received Router Advertisement message. 435 WPD-5: If the IPv6 CE router is configured to initiate DHCPv6 before 436 receiving a Router Advertisement, it MUST also request an 437 IA_NA option in DHCPv6. 439 WPD-6: If the delegated prefix(es) are aggregate route(s) of 440 multiple, more-specific routes, the IPv6 CE router MUST 441 discard packets that match the aggregate route(s), but not 442 any of the more-specific routes. In other words, the next 443 hop for the aggregate route(s) should be the null 444 destination. This is necessary to prevent forwarding loops 445 when some addresses covered by the aggregate are not 446 reachable [RFC4632]. 448 (a) The IPv6 CE router SHOULD send an ICMPv6 Destination 449 Unreachable message in accordance with Section 3.1 of 450 [RFC4443] back to the source of the packet, if the 451 packet is to be dropped due to this rule. 453 WPD-7: If the IPv6 CE router requests both an IA_NA and an IA_PD 454 option in DHCPv6, it MUST accept an IA_PD option in DHCPv6 455 Advertise/Reply messages, even if the message does not 456 contain any addresses, unless configured to only obtain its 457 WAN IPv6 address via DHCPv6. 459 WPD-8: By default, an IPv6 CE router MUST NOT initiate any dynamic 460 routing protocol on its WAN interface. 462 4.3. LAN-Side Configuration 464 The IPv6 CE router distributes configuration information obtained 465 during WAN interface provisioning to IPv6 hosts and assists IPv6 466 hosts in obtaining IPv6 addresses. It also supports connectivity of 467 these devices in the absence of any working WAN interface. 469 An IPv6 CE router is expected to support an IPv6 end-user network and 470 IPv6 hosts that exhibit the following characteristics: 472 1. Link-local addresses may be insufficient for allowing IPv6 473 applications to communicate with each other in the end-user 474 network. The IPv6 CE router will need to enable this 475 communication by providing globally scoped unicast addresses or 476 ULAs [RFC4193], whether or not WAN connectivity exists. 478 2. IPv6 hosts should be capable of using SLAAC and may be capable of 479 using DHCPv6 for acquiring their addresses. 481 3. IPv6 hosts may use DHCPv6 for other configuration information, 482 such as the DNS_SERVERS option for acquiring DNS information. 484 Unless otherwise specified, the following requirements apply to the 485 IPv6 CE router's LAN interfaces only. 487 ULA requirements: 489 ULA-1: The IPv6 CE router SHOULD be capable of generating a ULA 490 prefix [RFC4193]. 492 ULA-2: An IPv6 CE router with a ULA prefix MUST maintain this prefix 493 consistently across reboots. 495 ULA-3: The value of the ULA prefix SHOULD be user-configurable. 497 ULA-4: By default, the IPv6 CE router MUST act as a site border 498 router according to Section 4.3 of [RFC4193] and filter 499 packets with local IPv6 source or destination addresses 500 accordingly. 502 ULA-5: An IPv6 CE router MUST NOT advertise itself as a default 503 router with a Router Lifetime greater than zero whenever all 504 of its configured and delegated prefixes are ULA prefixes. 506 LAN requirements: 508 L-1: The IPv6 CE router MUST support router behavior according to 509 Neighbor Discovery for IPv6 [RFC4861]. 511 L-2: The IPv6 CE router MUST assign a separate /64 from its 512 delegated prefix(es) (and ULA prefix if configured to provide 513 ULA addressing) for each of its LAN interfaces. 515 L-3: An IPv6 CE router MUST advertise itself as a router for the 516 delegated prefix(es) (and ULA prefix if configured to provide 517 ULA addressing) using the "Route Information Option" specified 518 in Section 2.3 of [RFC4191]. This advertisement is 519 independent of having or not having IPv6 connectivity on the 520 WAN interface. 522 L-4: An IPv6 CE router MUST NOT advertise itself as a default 523 router with a Router Lifetime [RFC4861] greater than zero if 524 it has no prefixes configured or delegated to it. 526 L-5: The IPv6 CE router MUST make each LAN interface an advertising 527 interface according to [RFC4861]. 529 L-6: In Router Advertisement messages, the Prefix Information 530 option's A and L flags MUST be set to 1 by default. 532 L-7: The A and L flags' settings SHOULD be user-configurable. 534 L-8: The IPv6 CE router MUST support a DHCPv6 server capable of 535 IPv6 address assignment according to [RFC3315] OR a stateless 536 DHCPv6 server according to [RFC3736] on its LAN interfaces. 538 L-9: Unless the IPv6 CE router is configured to support the DHCPv6 539 IA_NA option, it SHOULD set the M flag to 0 and the O flag to 540 1 in its Router Advertisement messages [RFC4861]. 542 L-10: The IPv6 CE router MUST support providing DNS information in 543 the DHCPv6 DNS_SERVERS and DOMAIN_LIST options [RFC3646]. 545 L-11: The IPv6 CE router MUST support providing DNS information in 546 the Router Advertisement Recursive DNS Server (RDNSS) and DNS 547 Search List (DNSSL) options as specified in [RFC6106]. 549 L-12: The IPv6 CE router SHOULD make available a subset of DHCPv6 550 options (as listed in Section 5.3 of [RFC3736]) received from 551 the DHCPv6 client on its WAN interface to its LAN-side DHCPv6 552 server. 554 L-13: If the delegated prefix changes, i.e., the current prefix is 555 replaced with a new prefix without any overlapping time 556 period, then the IPv6 CE router MUST immediately advertise the 557 old prefix with a Preferred Lifetime of zero and a Valid 558 Lifetime of the lower of the current Valid Lifetime and two 559 hours (which must be decremented in real time) in a Router 560 Advertisement message as described in Section 5.5.3, (e) of 561 [RFC4862]. 563 L-14: The IPv6 CE router MUST send an ICMPv6 Destination Unreachable 564 message, code 5 (Source address failed ingress/egress policy) 565 for packets forwarded to it that use an address from a prefix 566 that has been deprecated. 568 4.4. Transition Technologies Support 570 4.4.1. 6rd 572 The IPv6 CE Router can be used to offer IPv6 service to a LAN, even 573 when the WAN access network only supports IPv4. One technology that 574 supports IPv6 service over an IPv4 network is IPv6 Rapid Deployment 575 (6rd). 6rd encapsulates IPv6 traffic from the end user LAN inside 576 IPv4 at the IPv6 CE Router and sends it to a Service Provider Border 577 Relay (BR). The IPv6 CE Router calculates a 6rd delegated IPv6 578 prefix during 6rd configuration, and sub-delegates the 6rd delegated 579 prefix to devices in the LAN. 581 The IPv6 CE Router SHOULD implement 6rd functionality as specified in 582 [RFC5969]. 584 6rd requirements: 586 6RD-1: If the IPv6 CE Router implements 6rd functionality, the CE 587 Router WAN interface MUST support at least one 6rd Virtual 588 Interface. 590 6RD-2: If the IPv6 CE router implements 6rd functionality, it MUST 591 support 6rd configuration via the 6rd DHCPv4 Option (212) and 592 if the IPv6 CE router is capable of automated configuration 593 of IPv4 through IPCP (i.e., over a PPP connection), it MUST 594 support user-entered configuration of 6rd. The IPv6 CE 595 router MAY use other mechanisms to configure 6rd parameters. 596 Such mechanisms are outside the scope of this document. 598 6RD-3: If the CE router implements 6rd functionality, it MUST allow 599 the user to specify whether all IPv6 traffic goes to the 6rd 600 Border Relay, or whether IPv6 traffic to other destinations 601 within the same 6rd domain are routed directly to those 602 destinations. The CE router MAY use other mechanisms to 603 configure this. Such mechanisms are outside the scope of 604 this document. 606 6RD-4: If 6rd is operational on the IPv6 CE Router, multicast data 607 MUST NOT be sent on any 6rd tunnel. 609 6RD-5: The CE Router MUST NOT forward 6RD traffic over a DS-Lite 610 ([RFC6333]) tunnel. 612 4.4.2. Dual-Stack Lite(DS-Lite) 614 Even as users migrate from IPv4 to IPv6 addressing, a significant 615 percentage of Internet resources and content will remain accessible 616 only through IPv4. Also, many end-user devices will only support 617 IPv4. As a consequence, Service Providers require mechanisms to 618 allow customers to continue to access content and resources using 619 IPv4 even after the last IPv4 allocations have been fully depleted. 620 One technology that can be used for IPv4 address extension is DS- 621 Lite. 623 DS-Lite enables a Service Provider to share IPv4 addresses among 624 multiple customers by combining two well-known technologies: IP in IP 625 (IPv4-in-IPv6) tunneling and Carrier Grade NAT. More specifically, 626 Dual-Stack-Lite encapsulates IPv4 traffic inside an IPv6 tunnel at 627 the IPv6 CE Router and sends it to a Service Provider Address Family 628 Transition Router (AFTR). Configuration of the IPv6 CE Router to 629 support IPv4 LAN traffic is outside the scope of this document. 631 The IPv6 CE Router SHOULD implement DS-Lite functionality as 632 specified in [RFC6333]. 634 WAN requirements: 636 DLW-1: To facilitate IPv4 extension over an IPv6 network, if the CE 637 Router supports DS-Lite functionality, the CE Router WAN 638 interface MUST implement a B4 Interface as specified in 639 [RFC6333]. 641 DLW-2: If the IPv6 CE Router implements DS-Lite functionality, the 642 CE Router MUST support using a DS-Lite DHCPv6 option 643 [RFC6334] to configure the DS-Lite tunnel. The IPv6 CE 644 Router MAY use other mechanisms to configure DS-Lite 645 parameters. Such mechanisms are outside the scope of this 646 document. 648 DLW-3: IPv6 CE Router MUST NOT perform IPv4 Network Address 649 Translation (NAT) on IPv4 traffic encapsulated using DS-Lite. 651 DLW-4: If the IPv6 CE Router is configured with a public IPv4 652 address on its WAN interface, where public IPv4 address is 653 defined as any address which is not in the private IP address 654 space specified in [RFC5735] and also not in the reserved IP 655 address space specified in [RFC6333], then the IPv6 CE Router 656 MUST disable the DS-Lite B4 element. 658 DLW-5: If DS-Lite is operational on the IPv6 CE Router, multicast 659 data MUST NOT be sent on any DS-Lite tunnel. 661 DLW-6: The CE Router MUST NOT forward DS-Lite traffic over a 6RD 662 tunnel. 664 4.4.3. Transition Technologies Coexistence 666 Supporting transition technologies that may coexist with native 667 service requires control over provisioning and sunsetting. Some 668 guidelines follow: 670 1. Initiate native IPv4/IPv6 provisioning (e.g. via DHCP) 671 simultaneously. 673 2. After IPv4 provisioning completes, if 6rd parameters are obtained 674 from the DHCPv4 transaction or configured on the device, initiate 675 6rd. 677 3. After IPv6 provisioning completes, if DS-Lite parameters are 678 obtained from the DHCPv6 transaction or configured on the device, 679 initiate DS-Lite. 681 4. Routes over the DS-Lite tunnel always have a higher 682 administrative distance than native IPv4 routes. 684 5. Selection of 6rd tunnel or native IPv6 output interface on the CE 685 router is determined by the source IPv6 address of the packet 686 from a host. 688 6. The CE router messages to the host the use of native IPv6 in 689 preference to 6rd. 691 During a sunsetting activity such as deprecating 6rd and moving to 692 native IPv6, the IPv6 CE router MUST immediately advertise the 6rd 693 prefix with a Preferred Lifetime of zero and a Valid Lifetime of the 694 lower of the current Valid Lifetime and two hours (which must be 695 decremented in real time) in a Router Advertisement message as 696 described in Section 5.5.3, (e) of [RFC4862]. Due to the two hours 697 rule specified in [RFC4862], the 6rd and the native IPv6 prefix will 698 coexist in the home network. The two hours rule specified in section 699 5.5.3 of [RFC4862] causes any deprecated prefix to linger on the node 700 even when an RA has sent a Preferred Lifetime of zero to expire the 701 prefix to the node. During such coexistence of multiple prefixes, 702 the CE router sends an ICMPv6 error for packets sourced or destined 703 related to the deprecated prefix. Note this document already 704 includes text in bullet L-14 in section 4.3 for such a provision. 706 4.5. Security Considerations 708 It is considered a best practice to filter obviously malicious 709 traffic (e.g., spoofed packets, "Martian" addresses, etc.). Thus, 710 the IPv6 CE router ought to support basic stateless egress and 711 ingress filters. The CE router is also expected to offer mechanisms 712 to filter traffic entering the customer network; however, the method 713 by which vendors implement configurable packet filtering is beyond 714 the scope of this document. 716 Security requirements: 718 S-1: The IPv6 CE router SHOULD support [RFC6092]. In particular, 719 the IPv6 CE router SHOULD support functionality sufficient for 720 implementing the set of recommendations in [RFC6092], 721 Section 4. This document takes no position on whether such 722 functionality is enabled by default or mechanisms by which 723 users would configure it. 725 S-2: The IPv6 CE router MUST support ingress filtering in accordance 726 with BCP 38 [RFC2827]. 728 S-3: If the IPv6 CE router firewall is configured to filter incoming 729 tunneled data, the firewall SHOULD provide the capability to 730 filter decapsulated packets from a tunnel. 732 5. Acknowledgements 734 Thanks to the following people (in alphabetical order) for their 735 guidance and feedback: 737 Mikael Abrahamsson, Tore Anderson, Merete Asak, Scott Beuker, Mohamed 738 Boucadair, Rex Bullinger, Brian Carpenter, Tassos Chatzithomaoglou, 739 Lorenzo Colitti, Remi Denis-Courmont, Gert Doering, Alain Durand, 740 Katsunori Fukuoka, Tony Hain, Thomas Herbst, Kevin Johns, Erik Kline, 741 Stephen Kramer, Victor Kuarsingh, Francois-Xavier Le Bail, Arifumi 742 Matsumoto, David Miles, Shin Miyakawa, Jean-Francois Mule, Michael 743 Newbery, Carlos Pignataro, John Pomeroy, Antonio Querubin, Hiroki 744 Sato, Teemu Savolainen, Matt Schmitt, David Thaler, Mark Townsley, 745 Bernie Volz, Dan Wing, James Woodyatt, and Cor Zwart. 747 This document is based in part on CableLabs' eRouter specification. 748 The authors wish to acknowledge the additional contributors from the 749 eRouter team: 751 Ben Bekele, Amol Bhagwat, Ralph Brown, Eduardo Cardona, Margo Dolas, 752 Toerless Eckert, Doc Evans, Roger Fish, Michelle Kuska, Diego 753 Mazzola, John McQueen, Harsh Parandekar, Michael Patrick, Saifur 754 Rahman, Lakshmi Raman, Ryan Ross, Ron da Silva, Madhu Sudan, Dan 755 Torbet, and Greg White. 757 6. Contributors 759 The following people have participated as co-authors or provided 760 substantial contributions to this document: Ralph Droms, Kirk 761 Erichsen, Fred Baker, Jason Weil, Lee Howard, Jean-Francois Tremblay, 762 Yiu Lee, John Jason Brzozowski, and Heather Kirksey. 764 7. References 766 7.1. Normative References 768 [RFC1102] Clark, D., "Policy routing in Internet protocols", 769 RFC 1102, May 1989. 771 [RFC1104] Braun, H., "Models of policy based routing", RFC 1104, 772 June 1989. 774 [RFC1122] Braden, R., "Requirements for Internet Hosts - 775 Communication Layers", STD 3, RFC 1122, October 1989. 777 [RFC1918] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and 778 E. Lear, "Address Allocation for Private Internets", 779 BCP 5, RFC 1918, February 1996. 781 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 782 Requirement Levels", BCP 14, RFC 2119, March 1997. 784 [RFC2464] Crawford, M., "Transmission of IPv6 Packets over Ethernet 785 Networks", RFC 2464, December 1998. 787 [RFC2827] Ferguson, P. and D. Senie, "Network Ingress Filtering: 788 Defeating Denial of Service Attacks which employ IP Source 789 Address Spoofing", BCP 38, RFC 2827, May 2000. 791 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 792 and M. Carney, "Dynamic Host Configuration Protocol for 793 IPv6 (DHCPv6)", RFC 3315, July 2003. 795 [RFC3484] Draves, R., "Default Address Selection for Internet 796 Protocol version 6 (IPv6)", RFC 3484, February 2003. 798 [RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic 799 Host Configuration Protocol (DHCP) version 6", RFC 3633, 800 December 2003. 802 [RFC3646] Droms, R., "DNS Configuration options for Dynamic Host 803 Configuration Protocol for IPv6 (DHCPv6)", RFC 3646, 804 December 2003. 806 [RFC3736] Droms, R., "Stateless Dynamic Host Configuration Protocol 807 (DHCP) Service for IPv6", RFC 3736, April 2004. 809 [RFC4075] Kalusivalingam, V., "Simple Network Time Protocol (SNTP) 810 Configuration Option for DHCPv6", RFC 4075, May 2005. 812 [RFC4191] Draves, R. and D. Thaler, "Default Router Preferences and 813 More-Specific Routes", RFC 4191, November 2005. 815 [RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast 816 Addresses", RFC 4193, October 2005. 818 [RFC4242] Venaas, S., Chown, T., and B. Volz, "Information Refresh 819 Time Option for Dynamic Host Configuration Protocol for 820 IPv6 (DHCPv6)", RFC 4242, November 2005. 822 [RFC4294] Loughney, J., "IPv6 Node Requirements", RFC 4294, 823 April 2006. 825 [RFC4443] Conta, A., Deering, S., and M. Gupta, "Internet Control 826 Message Protocol (ICMPv6) for the Internet Protocol 827 Version 6 (IPv6) Specification", RFC 4443, March 2006. 829 [RFC4605] Fenner, B., He, H., Haberman, B., and H. Sandick, 830 "Internet Group Management Protocol (IGMP) / Multicast 831 Listener Discovery (MLD)-Based Multicast Forwarding 832 ("IGMP/MLD Proxying")", RFC 4605, August 2006. 834 [RFC4632] Fuller, V. and T. Li, "Classless Inter-domain Routing 835 (CIDR): The Internet Address Assignment and Aggregation 836 Plan", BCP 122, RFC 4632, August 2006. 838 [RFC4779] Asadullah, S., Ahmed, A., Popoviciu, C., Savola, P., and 839 J. Palet, "ISP IPv6 Deployment Scenarios in Broadband 840 Access Networks", RFC 4779, January 2007. 842 [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, 843 "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, 844 September 2007. 846 [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless 847 Address Autoconfiguration", RFC 4862, September 2007. 849 [RFC4864] Van de Velde, G., Hain, T., Droms, R., Carpenter, B., and 850 E. Klein, "Local Network Protection for IPv6", RFC 4864, 851 May 2007. 853 [RFC5072] S.Varada, Haskins, D., and E. Allen, "IP Version 6 over 854 PPP", RFC 5072, September 2007. 856 [RFC5735] Cotton, M. and L. Vegoda, "Special Use IPv4 Addresses", 857 BCP 153, RFC 5735, January 2010. 859 [RFC5942] Singh, H., Beebee, W., and E. Nordmark, "IPv6 Subnet 860 Model: The Relationship between Links and Subnet 861 Prefixes", RFC 5942, July 2010. 863 [RFC5969] Townsley, W. and O. Troan, "IPv6 Rapid Deployment on IPv4 864 Infrastructures (6rd) -- Protocol Specification", 865 RFC 5969, August 2010. 867 [RFC6092] Woodyatt, J., "Recommended Simple Security Capabilities in 868 Customer Premises Equipment (CPE) for Providing 869 Residential IPv6 Internet Service", RFC 6092, 870 January 2011. 872 [RFC6106] Jeong, J., Park, S., Beloeil, L., and S. Madanapalli, 873 "IPv6 Router Advertisement Options for DNS Configuration", 874 RFC 6106, November 2010. 876 [RFC6204] Singh, H., Beebee, W., Donley, C., Stark, B., and O. 877 Troan, "Basic Requirements for IPv6 Customer Edge 878 Routers", RFC 6204, April 2011. 880 [RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual- 881 Stack Lite Broadband Deployments Following IPv4 882 Exhaustion", RFC 6333, August 2011. 884 [RFC6334] Hankins, D. and T. Mrugalski, "Dynamic Host Configuration 885 Protocol for IPv6 (DHCPv6) Option for Dual-Stack Lite", 886 RFC 6334, August 2011. 888 7.2. Informative References 890 [HAPPY-EYEBALLS] 891 Wing, D. and A. Yourtchenko, "Happy Eyeballs: Trending 892 Towards Success with Dual-Stack Hosts", Work in Progress, 893 March 2011. 895 [MULTIHOMING-WITHOUT-NAT] 896 Troan, O., Ed., Miles, D., Matsushima, S., Okimoto, T., 897 and D. Wing, "IPv6 Multihoming without Network Address 898 Translation", Work in Progress, December 2010. 900 [RFC6144] Baker, F., Li, X., Bao, C., and K. Yin, "Framework for 901 IPv4/IPv6 Translation", RFC 6144, March 2011. 903 [UPnP-IGD] 904 UPnP Forum, "Universal Plug and Play (UPnP) Internet 905 Gateway Device (IGD)", November 2001, 906 . 908 Appendix A. Changes from RFC 6204 910 1. Added IP transition technologies available in RFC form. 912 2. Added IP transition technologies coexistence. 914 3. Changed bullet G-5 to augment the condition of losing IPv6 915 default router(s) with loss of connectivity. 917 4. Removed bullet WAA-7 due to not reaching consensus by various 918 service provider standards bodies. The removal of text does not 919 remove any critical functionality from the CE specification. 921 5. Changed bullet WAA-8 to qualify WAN behavior only if not 922 configured to perform DHCPv6. This way a deployment specific 923 profile can mandate DHCPv6 numbered WAN wihout conflicting with 924 this document. 926 6. Changed the WPD-2 bullet from MUST be configurable to SHOULD be 927 configurable. 929 7. Changed bullet WPD-4 for a default behavior without compromising 930 any prior specification of the CE device. The change was needed 931 by a specific layer 1 deployment which wanted to specify a MUST 932 for DHCPv6 in their layer 1 profile and not conflict with this 933 document. 935 8. Changed bullet WPD-7 to qualify text for DHCPv6. 937 9. Added a new WAN DHCPv6 requirement for SOL_MAX_RT of DHCPv6 so 938 that if an service provider does not have DHCPv6 service enabled 939 CE routers do not send too frequent DHCPv6 requests to the 940 service provider DHCPv6 server. 942 10. Changed bullet L-11 from SHOULD provide DNS options in the RA to 943 MUST provide DNS option in the RA. 945 11. New bullet added to the Security Considerations section due to 946 addition of transition technology. The CE router filters 947 decapsulated 6rd data. 949 12. Minor change involved changing ICMP to ICMPv6. 951 Authors' Addresses 953 Hemant Singh 954 Cisco Systems, Inc. 955 1414 Massachusetts Ave. 956 Boxborough, MA 01719 957 USA 959 Phone: +1 978 936 1622 960 EMail: shemant@cisco.com 961 URI: http://www.cisco.com/ 963 Wes Beebee 964 Cisco Systems, Inc. 965 1414 Massachusetts Ave. 966 Boxborough, MA 01719 967 USA 969 Phone: +1 978 936 2030 970 EMail: wbeebee@cisco.com 971 URI: http://www.cisco.com/ 973 Chris Donley 974 CableLabs 975 858 Coal Creek Circle 976 Louisville, CO 80027 977 USA 979 EMail: c.donley@cablelabs.com 980 Barbara Stark 981 AT&T 982 725 W Peachtree St. 983 Atlanta, GA 30308 984 USA 986 EMail: barbara.stark@att.com 988 Ole Troan (editor) 989 Cisco Systems, Inc. 990 Telemarksvingen 20 991 N-0655 OSLO, 992 Norway 994 EMail: ot@cisco.com