Internet Engineering Task Force H. Singh Internet-Draft W. Beebee Intended status: Informational Cisco Systems, Inc. Expires: June 21, 2010 C. Donley CableLabs B. Stark AT&T O. Troan, Ed. Cisco Systems, Inc. December 18, 2009 Basic Requirements for IPv6 Customer Edge Routers draft-ietf-v6ops-ipv6-cpe-router-03 Abstract This document specifies requirements for an IPv6 Customer Edge (CE) router. Specifically, the current version of this document focuses on the provisioning of an IPv6 CE router and the provisioning of IPv6 hosts attached to it. Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on June 21, 2010. Copyright Notice Copyright (c) 2009 IETF Trust and the persons identified as the Singh, et al. Expires June 21, 2010 [Page 1] Internet-Draft IPv6 CE router requirements December 2009 document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.1. Current IPv4 end-user network architecture . . . . . . . . 4 3.2. IPv6 end-user network architecture . . . . . . . . . . . . 5 4. Use Cases and Requirements . . . . . . . . . . . . . . . . . . 6 4.1. WAN side configuration . . . . . . . . . . . . . . . . . . 6 4.2. LAN side configuration . . . . . . . . . . . . . . . . . . 8 4.3. General requirements . . . . . . . . . . . . . . . . . . . 9 4.4. Security Considerations . . . . . . . . . . . . . . . . . 10 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 10 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 11 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 8. Normative References . . . . . . . . . . . . . . . . . . . . . 11 Appendix A. Changes in revision 3 . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 13 Singh, et al. Expires June 21, 2010 [Page 2] Internet-Draft IPv6 CE router requirements December 2009 1. Introduction This document defines IPv6 features for a residential or small office router referred to as an IPv6 CE router. Typically these routers also support IPv4. This document specifies how an IPv6 CE router automatically provisions its WAN interface, acquires an address block for provisioning of its LAN interfaces and fetches other configuration information from the service provider network. Automatic provisioning of more complex topology than a single router with multiple LAN interfaces is out of scope for this document. See [RFC4779] for a discussion of options available for deploying IPv6 in service provider access networks. 1.1. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2. Terminology End-user Network one or more links attached to the IPv6 CE router that connect IPv6 hosts. IPv6 Customer Edge router a node intended for home or small office use which forwards IPv6 packets not explicitly addressed to itself. The IPv6 CE router connects the end-user network to a service provider network. IPv6 host any device implementing an IPv6 stack receiving IPv6 Internet connectivity through the IPv6 CE router LAN interface an IPv6 CE router's attachment to a link in the end-user network. Examples are Ethernets (simple or bridged), 802.11 wireless or other LAN technologies. An IPv6 CE router may have one or more network layer LAN Interfaces. Service Provider a company that offers its customers access to the Internet. In this document, a Service Provider specifically offers Internet access using IPv6, and may also offer IPv4 Internet Singh, et al. Expires June 21, 2010 [Page 3] Internet-Draft IPv6 CE router requirements December 2009 access. The Service Provider can provide such access over a variety of different transport methods such as DSL, cable, wireless, and others. WAN interface an IPv6 CE router's attachment to a link used to provide connectivity to the Service Provider network; example link technologies include Ethernets (simple or bridged), PPP links, X.25, Frame Relay, or ATM networks as well as Internet-layer (or higher-layer) "tunnels", such as tunnels over IPv4 or IPv6 itself. 3. Architecture 3.1. Current IPv4 end-user network architecture An end-user network will likely have to support both IPv4 and IPv6. It is not expected that an end-user will change their existing network topology with the introduction of IPv6. There are some differences in how IPv6 works and is provisioned which has implications for the network architecture. A typical IPv4 end-user network consist of a "plug and play" NAT box connected to the ISP. The assumption is a single NAT device with a single link behind it. The NAT provides stable addressing allowing for manually configured addresses on the nodes in the end-user network. A typical IPv4 NAT deployment by default blocks all incoming connections. Opening of ports is typically allowed using UPnP or some other firewall control protocol. Another consequence of using private address space in the end-user network is that it provides stable addressing, i.e. it never changes even when you change ISPs, and the addresses are always there even when the WAN interface is down or the customer edge router has not yet been provisioned. Rewriting addresses on the edge of the network also allows for some rudimentary multi-homing; even though using NATs for multi-homing does not preserve connections during fail-overs [RFC4864]. Many existing routers support dynamic routing, and advanced end users can build arbitrary, complex networks using manual configuration of address prefixes combined with a dynamic routing protocol. Singh, et al. Expires June 21, 2010 [Page 4] Internet-Draft IPv6 CE router requirements December 2009 3.2. IPv6 end-user network architecture The end-user network architecture for IPv6 should provide equivalent or better capabilities and functionality than the equivalent IPv4 architecture. The end-user network is a stub network. Figure 1 illustrates the model topology for the end-user network. An example of a typical end-user network. +-------+-------+ \ | Service | \ | Provider | | ISP | Router | | network +-------+-------+ | | / | Customer / | Internet connection / | +------+--------+ \ | IPv6 | \ | Customer Edge | \ | Router | / +---+-------+-+-+ / Network A | | Network B | Customer ---+-------------+----+- --+--+-------------+--- |network(s) | | | | \ +----+-----+ +-----+----+ +----+-----+ +-----+----+ \ |IPv6 Host | |IPv6 Host | | IPv6 Host| |IPv6 Host | / | | | | | | | | / +----------+ +-----+----+ +----------+ +----------+/ Figure 1 This architecture describes the: o Basic capabilities of an IPv6 CE router o Provisioning of the WAN interface connecting to the ISP o Provisioning of the LAN interfaces The IPv6 CE router defaults to acting as the demarcation point between two networks by providing a ULA boundary, a multicast zone boundary and ingress and egress traffic filters. Singh, et al. Expires June 21, 2010 [Page 5] Internet-Draft IPv6 CE router requirements December 2009 For IPv6 multicast traffic the IPv6 CE router may act as an MLD proxy [RFC4605] and may support a dynamic multicast routing protocol. IPv6 CE router may be manually configured in an arbitrary topology with a dynamic routing protocol. Automatic provisioning and configuration is described for a single IPv6 CE router only. 4. Use Cases and Requirements 4.1. WAN side configuration The IPv6 CE router will need to support connectivity to one or more access network architectures. This document describes an IPv6 CE router that is not specific to any particular architecture or Service Provider, and supports all commonly used architectures. IPv6 Neighbor Discovery and DHCP protocols operate over any type of IPv6 supported link-layer and there is no need for a link-layer specific configuration protocol for IPv6 network layer configuration options as in PPP IPCP for IPv4. This section makes the assumption that the same mechanism will work for any link-layer, be it Ethernet, DOCSIS, PPP/PPPoE or others. When the router is attached to the WAN interface link it must act as an IPv6 host for the purposes of stateless or stateful interface address assignment ([RFC4862]/[RFC3315]). The router acts as a requesting router for the purposes of DHCP prefix delegation ([RFC3633]). DHCP address assignment (IA_NA) and DHCP prefix delegation (IA_PD) should be done as a single DHCP session. Link-layer requirements: WLL-1: The IPv6 CE router MUST support IPv6 over Ethernet [RFC2464]. WLL-2: The IPv6 CE router MUST support IPv6 over PPP [RFC5072] and PPPoE [RFC2516]. In a dual-stack environment with IPCP and IPV6CP running over one PPP logical channel, the NCPs MUST be treated as independent of each other and start and terminate independently. Address assignment requirements: Singh, et al. Expires June 21, 2010 [Page 6] Internet-Draft IPv6 CE router requirements December 2009 WAA-1: The IPv6 CE router MUST support SLAAC [RFC4862]. WAA-2: The IPv6 CE router MUST follow the recommendation in [I-D.ietf-6man-ipv6-subnet-model] and in particular the handling of the L-bit in the Router Advertisement Prefix Information Option. WAA-3: The IPv6 CE router MUST support DHCP [RFC3315] client behavior. It MUST be able to support the following DHCP options: IA_NA, Reconfigure Accept [RFC3315], DNS_SERVERS [RFC3646]. WAA-4: The IPv6 CE router SHOULD support the DHCP SNTP option [RFC4075] and the Information Refresh Time Option [RFC4242]. WAA-5: If the IPv6 CE router receives an RA message (described in [RFC4861]) with the M-bit set to 1, the IPv6 CE router MUST do DHCP address assignment (request an IA_NA option). If the IPv6 CE router is unable to assign an address through SLAAC it MAY do DHCP address assignment (request an IA_NA) even if the M-bit is set to 0. WAA-6: If the IPv6 CE router does not acquire a global IPv6 address from either SLAAC or DHCP, then it MUST create a global IPv6 address from its delegated prefix and configure that on one of its internal virtual network interfaces. As a router the IPv6 CE router follows the weak host model [RFC1122] and when originating packets out the WAN-interface will use a suitably scoped source address from one of its other interfaces. Prefix Delegation requirements: WPD-1: The IPv6 CE router MUST support DHCP prefix delegation requesting router behavior as specified in [RFC3633] (IA_PD option). The IPv6 CE router MUST ask for a prefix large enough to cover all of its LAN interfaces. WPD-2: The IPv6 CE router MUST always initiate DHCP prefix delegation, regardless of the M and O-bits in a received Router Advertisement. If the IPv6 CE Router initiates DHCP before receiving a Router Advertisement it MUST also request an IA_NA option in DHCP. WPD-3: Absent of other routing information the IPv6 CE router MUST use Router Discovery as specified in [RFC4861] to discover a default router and install a default route in its routing table with the discovered router's address as the next-hop. Singh, et al. Expires June 21, 2010 [Page 7] Internet-Draft IPv6 CE router requirements December 2009 WPD-4: If the delegated prefix is an aggregate route of multiple, more-specific routes the IPv6 CE router MUST discard packets that match the aggregate route, but not any of the more- specific routes. In other words, the "next-hop" for the aggregate route should be the null destination. This is necessary to prevent forwarding loops when some addresses covered by the aggregate are not reachable [RFC4632]. The IPv6 CE Router SHOULD send an ICMPv6 Destination Unreachable according to section 3.1 [RFC4443] back to the source of the packet if the packet is to be dropped due to this rule. WPD-5: If the IPv6 CE router requests both an IA_NA and an IA_PD in DHCP, it MUST accept an IA_PD in DHCP Advertise/Reply messages, even if the message does not contain any addresses (IA_NA options with status code NoAddrsAvail). WPD-6: An IPv6 CE router MUST not by default initiate any dynamic routing protocol on its WAN interface. 4.2. LAN side configuration The IPv6 CE router distributes configuration information obtained during WAN interface provisioning to IPv6 hosts and assists IPv6 hosts in obtaining IPv6 addresses. It also supports connectivity of these devices in the absence of any working WAN interface. An IPv6 CE router will be expected to support an IPv6 end-user network and IPv6 hosts that exhibit the following characteristics: 1. Link-local addresses are insufficient for allowing IPv6 applications to communicate with each other in the end-user network. The IPv6 CE router will need to enable this communication by providing globally-scoped unicast addresses or ULAs [RFC4193] whether or not WAN connectivity exists. 2. IPv6 hosts will be capable of using SLAAC and may be capable of using DHCP for acquiring their addresses. 3. IPv6 hosts will use DHCP for other configuration information, such as the DNS_SERVERS option for acquiring DNS information. Unless otherwise specified these requirements only apply to the IPv6 CE router's LAN interfaces. Requirements: Singh, et al. Expires June 21, 2010 [Page 8] Internet-Draft IPv6 CE router requirements December 2009 L-1: The IPv6 CE router MUST support ULA addressing [RFC4193]. L-2: The IPv6 CE router MUST have a ULA prefix that it maintains consistently across reboots. The value of the ULA prefix SHOULD be user configurable. L-3: The IPv6 CE router by default MUST act as a site border router according to section 4.3 of [RFC4193] and filter packets with Local IPv6 source or destination addresses accordingly. L-4: The IPv6 CE router MUST support router behavior of Neighbor Discovery for IPv6 [RFC4861]. L-5: The IPv6 CE router MUST assign a separate /64 from its delegated prefix (and ULA prefix if configured to provide ULA addressing) for each of its LAN interfaces. The IPV6 CE router MUST make the interface an advertising interface according to [RFC4861]. In router advertisements messages, the Prefix Information Option's A/L-bits MUST be set to 1 by default; the A/L bits setting SHOULD be user configurable. L-6: The IPv6 CE router MUST support a DHCP server [RFC3315] on its LAN interfaces. It MAY support Stateless Dynamic Host Configuration Protocol (DHCP) Service for IPv6 [RFC3736]. L-7: The IPv6 CE SHOULD support DHCP address assignment (IA_NA) [RFC3315]. L-8: Unless the IPv6 CE router is configured to support the DHCP IA_NA option, it SHOULD set M=0 and O=1 in its Router Advertisement messages [RFC4861]. L-9: The IPv6 CE router MUST support providing DNS information in the DHCP DNS_SERVERS option [RFC3646]. L-10: The IPv6 CE router SHOULD pass the additional set of DHCP options received from the DHCP client on its WAN interface from the Service Provider to IPv6 hosts. 4.3. General requirements The IPv6 CE router is responsible for implementing IPv6 routing; that is, the IPv6 CE router must look up the IPv6 Destination address in its routing table to decide to which interface it should send the packet. In this role, the IPv6 CE router is responsible for ensuring that traffic using its ULA addressing does not go out the WAN interface, Singh, et al. Expires June 21, 2010 [Page 9] Internet-Draft IPv6 CE router requirements December 2009 and does not originate from the WAN interface. An IPv6 CE router is an IPv6 node according to the IPv6 Node Requirements [RFC4294] specification. The IPv6 CE router MUST NOT forward any IPv6 traffic between its LAN Interface(s) and its WAN Interface until the router has successfully completed the IPv6 address acquisition process. 4.4. Security Considerations It is considered a best practice to filter obviously malicious traffic (e.g. spoofed packets, "martian" addresses, etc.). Thus, the IPv6 CE router should support basic stateless egress and ingress filters. The CE router should also offer mechanisms to filter traffic entering the customer network; however, the method by which vendors implement configurable packet filtering is beyond the scope of this document. Security requirements: S-1: The IPv6 CE router SHOULD support [I-D.ietf-v6ops-cpe-simple-security]. S-2: The IPv6 CE router MUST support ingress filtering in accordance with [RFC2827](BCP 38) 5. Acknowledgements Thanks to the following people (in alphabetical order) for their guidance and feedback: Mikael Abrahamsson, Merete Asak, Scott Beuker, Rex Bullinger, Brian Carpenter, Remi Denis-Courmont, Alain Durand, Katsunori Fukuoka, Tony Hain, Thomas Herbst, Kevin Johns, Stephen Kramer, Victor Kuarsingh, Francois-Xavier Le Bail, David Miles, Shin Miyakawa, Jean-Francois Mule, Michael Newbery, Carlos Pignataro, John Pomeroy, Antonio Querubin, Teemu Savolainen, Matt Schmitt, Hiroki Sato, Mark Townsley, Bernie Volz, James Woodyatt, Dan Wing and Cor Zwart This draft is based in part on CableLabs' eRouter specification. The authors wish to acknowledge the additional contributors from the eRouter team: Ben Bekele, Amol Bhagwat, Ralph Brown, Eduardo Cardona, Margo Dolas, Toerless Eckert, Doc Evans, Roger Fish, Michelle Kuska, Diego Mazzola, John McQueen, Harsh Parandekar, Michael Patrick, Saifur Singh, et al. Expires June 21, 2010 [Page 10] Internet-Draft IPv6 CE router requirements December 2009 Rahman, Lakshmi Raman, Ryan Ross, Ron da Silva, Madhu Sudan, Dan Torbet and Greg White 6. Contributors The following people have participated as co-authors or provided substantial contributions to this document: Ralph Droms, Kirk Erichsen, Fred Baker, Jason Weil, Lee Howard, Jean-Francois Tremblay, Yiu Lee, John Jason Brzozowski and Heather Kirksey. 7. IANA Considerations This memo includes no request to IANA. 8. Normative References [I-D.ietf-6man-ipv6-subnet-model] Singh, H., Beebee, W., and E. Nordmark, "IPv6 Subnet Model: the Relationship between Links and Subnet Prefixes", draft-ietf-6man-ipv6-subnet-model-06 (work in progress), November 2009. [I-D.ietf-v6ops-cpe-simple-security] Woodyatt, J., "Recommended Simple Security Capabilities in Customer Premises Equipment for Providing Residential IPv6 Internet Service", draft-ietf-v6ops-cpe-simple-security-08 (work in progress), October 2009. [RFC1122] Braden, R., "Requirements for Internet Hosts - Communication Layers", STD 3, RFC 1122, October 1989. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2464] Crawford, M., "Transmission of IPv6 Packets over Ethernet Networks", RFC 2464, December 1998. [RFC2516] Mamakos, L., Lidl, K., Evarts, J., Carrel, D., Simone, D., and R. Wheeler, "A Method for Transmitting PPP Over Ethernet (PPPoE)", RFC 2516, February 1999. [RFC2827] Ferguson, P. and D. Senie, "Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing", BCP 38, RFC 2827, May 2000. Singh, et al. Expires June 21, 2010 [Page 11] Internet-Draft IPv6 CE router requirements December 2009 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M. Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3315, July 2003. [RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6", RFC 3633, December 2003. [RFC3646] Droms, R., "DNS Configuration options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3646, December 2003. [RFC3736] Droms, R., "Stateless Dynamic Host Configuration Protocol (DHCP) Service for IPv6", RFC 3736, April 2004. [RFC4075] Kalusivalingam, V., "Simple Network Time Protocol (SNTP) Configuration Option for DHCPv6", RFC 4075, May 2005. [RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast Addresses", RFC 4193, October 2005. [RFC4242] Venaas, S., Chown, T., and B. Volz, "Information Refresh Time Option for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 4242, November 2005. [RFC4294] Loughney, J., "IPv6 Node Requirements", RFC 4294, April 2006. [RFC4443] Conta, A., Deering, S., and M. Gupta, "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification", RFC 4443, March 2006. [RFC4605] Fenner, B., He, H., Haberman, B., and H. Sandick, "Internet Group Management Protocol (IGMP) / Multicast Listener Discovery (MLD)-Based Multicast Forwarding ("IGMP/MLD Proxying")", RFC 4605, August 2006. [RFC4632] Fuller, V. and T. Li, "Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan", BCP 122, RFC 4632, August 2006. [RFC4779] Asadullah, S., Ahmed, A., Popoviciu, C., Savola, P., and J. Palet, "ISP IPv6 Deployment Scenarios in Broadband Access Networks", RFC 4779, January 2007. [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, September 2007. Singh, et al. Expires June 21, 2010 [Page 12] Internet-Draft IPv6 CE router requirements December 2009 [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless Address Autoconfiguration", RFC 4862, September 2007. [RFC4864] Van de Velde, G., Hain, T., Droms, R., Carpenter, B., and E. Klein, "Local Network Protection for IPv6", RFC 4864, May 2007. [RFC5072] S.Varada, Haskins, D., and E. Allen, "IP Version 6 over PPP", RFC 5072, September 2007. Appendix A. Changes in revision 3 o Added "the CPE Router SHOULD send an ICMPv6 Destination Unreachable ([RFC4443] section 3.1) back to the source of the packet if the packet is to be dropped due to aggregate null route." o Clarified that if IPV6CP and IPCP run over the same PPP session they should be treated independently. o Removed RFC2460 in the section of RFCs that SHOULD be supported. o Clarified that the router acts as a host for the purposes of address assignment. Not for any other ND function e.g Redirects. o Improved default router selection / default route RIB insertion text. o Added text describing that the weak host model has to be supported in the unnumbered WAN case. Authors' Addresses Hemant Singh Cisco Systems, Inc. 1414 Massachusetts Ave. Boxborough, MA 01719 USA Phone: +1 978 936 1622 Email: shemant@cisco.com URI: http://www.cisco.com/ Singh, et al. Expires June 21, 2010 [Page 13] Internet-Draft IPv6 CE router requirements December 2009 Wes Beebee Cisco Systems, Inc. 1414 Massachusetts Ave. Boxborough, MA 01719 USA Phone: +1 978 936 2030 Email: wbeebee@cisco.com URI: http://www.cisco.com/ Chris Donley CableLabs 858 Coal Creek Circle Louisville, CO 80027 USA Email: c.donley@cablelabs.com Barbara Stark AT&T 725 W Peachtree St Atlanta, GA 30308 USA Email: barbara.stark@att.com Ole Troan (editor) Cisco Systems, Inc. Veversmauet 8 N-5017 BERGEN, Norway Phone: Email: ot@cisco.com Singh, et al. Expires June 21, 2010 [Page 14]