<?xmlversion="1.0" encoding="US-ASCII"?>version='1.0' encoding='UTF-8'?> <!DOCTYPE rfc [ <!ENTITY nbsp " "> <!ENTITY zwsp "​"> <!ENTITY nbhy "‑"> <!ENTITY wj "⁠"> ]><?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> <?rfc toc="yes"?> <?rfc sortrefs="no"?> <?rfc symrefs="yes"?> <?rfc compact="yes"?> <?rfc comments="yes"?> <?rfc inline="yes"?><rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info" ipr="trust200902" updates="7084" obsoletes="" docName="draft-ietf-v6ops-cpe-lan-pd-09"submissionType="IETF">number="9818" consensus="true" xml:lang="en" submissionType="IETF" tocInclude="true" sortRefs="false" symRefs="true" version="3"> <front><title>IPv6<title abbrev="IPv6 CE Router LAN DHCPv6 Prefix">IPv6 Customer Edge (CE) Routers LAN DHCPv6 Prefix Delegation</title> <seriesInfo name="RFC" value="9818"/> <author fullname="Timothy Winters" initials="T." surname="Winters"> <organization abbrev="QA Cafe">QA Cafe</organization> <address> <postal> <street>100 Main Street, Suite #212</street> <city>Dover</city> <region>NH</region> <code>03820</code> <country>United States of America</country> </postal> <email>tim@qacafe.com</email> </address> </author> <dateyear="2025" /> <area> Internet </area> <workgroup>Internet Engineering Task Force</workgroup>month="July" year="2025"/> <area>OPS</area> <workgroup>v6ops</workgroup> <keyword>IPv6</keyword> <keyword>Internet Protocol Version 6</keyword> <keyword>DHCPv6</keyword> <!-- [rfced] How may this title be rephrased for clarity? Also, is "LAN" needed in this title? (Neither "LAN" nor "local" is mentioned in the abstract.) Do either of these options convey the intended meaning? Please feel free to suggest otherwise. Original: IPv6 CE Routers LAN DHCPv6 Prefix Delegation Current: IPv6 Customer Edge (CE) Routers LAN DHCPv6 Prefix Delegation Option A: DHCPv6 Prefix Delegation on IPv6 Customer Edge (CE) Routers in LANs Option B: DHCPv6 Prefix Delegation in LANs for IPv6 Customer Edge (CE) Routers --> <abstract> <t>This document defines requirements for IPv6 Customer Edge (CE) routers to support DHCPv6 Prefix Delegation for distributing available prefixes that were delegated to a IPv6 CE router. This document updates RFC 7084.</t> </abstract> </front> <middle><section title="Introduction"><section> <name>Introduction</name> <t>This document describes guidelines for DHCPv6 Prefix Delegation in IPv6 Customer Edge (CE) routers(<xref target="RFC7084" />)<xref target="RFC7084"/> in order to properly utilize the IPv6 prefixes delegated by service providers. Many service providers assign larger address blocks than /64 to CE routers, as recommended in <xreftarget="RFC6177" />.target="RFC6177"/>. If an IPv6 CE router does not support the Identity Association for Prefix Delegation (IA_PD) Prefix Option(Section 21.21 of <xref(<xref target="RFC8415"/>)section="21.21"/>) on the LAN, it will not be able to assign any prefixes beyond its local interfaces, limiting the usefulness of assigning prefixes larger than /64 by the operator. Supporting IA_PD on the LAN interfaces of a CERouterrouter will allow those unused prefixes to be distributed into a network. Note that efforts such as those of the Stub Networking Auto Configuration (SNAC) Working Group depend on IPv6 prefixes being properly distributed in the LAN.</t> <t>Two models, hierarchical prefix and flat, were proposed in the past for prefix sub-delegation beyond an IPv6 CE router. Hierarchical prefix delegation requires an IPv6 CE router tosub delegatesub-delegate IPv6 prefixes based on a set of rules. If more than one router uses hierarchical prefix delegation, an IPv6 prefix tree is created. When no routing protocol is enabled to discover the network topology, it is possible to have an unbalanced prefix delegationtreetree, which leads to running out of prefixes. More information on hierarchical prefix delegation can be found, e.g., in Section 8.5 of CableLabs IPv6 eRouterSpecifictionspecification <xreftarget="eRouter"></xref>.target="eRouter"/>. A flat prefix delegation requires the router to be provisioned with the initial prefix and to assign /64 prefixes to all other prefix requests from routers in the LAN-facing interface. <!--[rfced] For clarity, how may this be rephrased? In particular, the phrase "CE Router supporting prefix delegation" is unclear. Original: The default configuration of CE Router supporting prefix delegation is designed to be a flat model to support zero configuration networking. Perhaps: For prefix delegation that supports CE routers, the default configuration is designed to be a flat model to support zero-configuration networking. Or simply: For prefix delegation that supports CE routers, the default configuration is a flat model to support zero-configuration networking. --> <!--[rfced] Please clarify "multi-provisioned networks". Is there another term that is more common? The term "multi-provisioned" does not appear in past RFCs or current Internet-Drafts. Original: This document does not cover dealing with multi-provisioned networks with more than one provider. --> The default configuration of CE router supporting prefix delegation is designed to be a flat model to support zero-configuration networking.</t> <t>This document does not cover dealing with multi-provisioned networks with more than one provider. Due to the complexity of a solution that would require routing,provisioningprovisioning, and policy, this is out of scope of this document.</t> </section> <sectionanchor="Requirements Language" title="Requirements Language"> <t>Theanchor="Requirements_Language"> <name>Requirements Language</name> <t> The key words"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY","<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", "<bcp14>MAY</bcp14>", and"OPTIONAL""<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.This</t> <t>This document uses these keywords not strictly for the purpose of interoperability, but rather for the purpose of establishing industry-common baseline functionality. As such, the document points to several other specifications(preferable in RFC or stable form)to provide additional guidance to implementers regarding any protocol implementation required to produce a successful CE router that interoperates successfully with a particular subset of currentlydeployingdeployed and planned common IPv6 access networks.</t> </section> <sectionanchor="Terminology" title="Terminology">anchor="Terminology"> <name>Terminology</name> <t>The document makes use of the followingtermsterms, some of which are fromSection 2<xreftarget='RFC8200'/> <list style="symbols"> <t>IPv6target="RFC8200" section="2"/> </t> <!--[rfced] Which update do you prefer, as this definition is missing 'the', but perhaps you prefer to match the cited document? Original: IPv6 node: A device that implements IPv6protocol.</t> <t>IPv6 router: Anprotocol. Option A: IPv6 node: A device that implements IPv6. (to match RFC 8200, which is cited in the lead-in text) Option B: IPv6 node: A device that implements the IPv6 protocol. --> <!-- [rfced] FYI, for expanding GUA, "Unique" has been changed to "Unicast" in order to match RFC 4291. Please review. Original: * GUA:Global Unique Addresses, as defined in [RFC4291]. Current: GUA: Global Unicast Address, as defined in [RFC4291]. --> <dl spacing="normal" newline="false"> <dt>IPv6 node:</dt><dd>A device that implements IPv6 protocol.</dd> <dt>IPv6 router:</dt><dd>An IPv6 node that forwards IPv6 packets not explicitly addressed toitself.</t> <t>IPv6 host: Anitself.</dd> <dt>IPv6 host:</dt><dd>An IPv6 node that is not arouter.</t> <t>ULA:Uniquerouter.</dd> <dt>ULA:</dt><dd>Unique Local Address, as defined in <xreftarget='RFC4193'/>.</t> <t>GUA:Global Unique Addresses,target="RFC4193"/>.</dd> <dt>GUA:</dt><dd>Global Unicast Address, as defined in <xreftarget='RFC4291'/>.</t> </list> </t>target="RFC4291"/>.</dd> </dl> </section><section title="IPv6<section> <name>IPv6 End-User NetworkArchitecture">Architecture</name> <!--[rfced] Please clarify; how should this fragment be updated to be a sentence? Original: The end-user network for IPv6 that is a stub network. --> <t>The end-user network for IPv6 that is a stub network.Figure 1<xref target="fig-1"/> illustrates the model topology.</t> <figurealign="center" title="Exampleanchor="fig-1"> <name>Example IPv6End User Topology"> <artwork>End-User Topology</name> <artwork align="center"><![CDATA[ +-----------+ | Service | | Provider | | Router | +-----+-----+ | | | Customer | Internet Connection | +-----v-----+ | IPv6 | | CE | | Router | +-----+-----+ | +------+-------+ | | | | +---+----+ +-----+-----+ | IPv6 | | | | Host | | Router | | | | | +--------+ +-----+-----+ | | +---+----+ | IPv6 | | Host | | |+--------+ </artwork>+--------+]]></artwork> </figure> </section> <sectionanchor="Requirements" title="Requirements">anchor="Requirements"> <name>Requirements</name> <t> IPv6 CE routers distribute configuration information obtained during WAN interface provisioning to LAN-facing IPv6 hosts and routers.An <xref target="RFC7084"/> compliantA CE router that is compliant with <xref target="RFC7084"/> would only provide IPv6 hosts with configuration information. This document allows for addressing and routing of IPv6 prefixes to both hosts and routers. These requirements are in addition to the ones inSection 4.3 of<xreftarget="RFC7084"/>.</t> <section title="LANtarget="RFC7084" section="4.3"/>.</t> <section> <name>LAN Prefix Delegation Requirements(LPD)"> <t><list style="format LPD-%d:"> <t>IPv6(LPD)</name> <ol spacing="normal" type="LPD-%d:" indent="9"><li> <!--[rfced] Please review this update for accuracy; due to "its", the subject ("IPv6 CE routers") has been changed to singular. It currently reads that a single router could have more than one LAN interface. Original: LPD-1: IPv6 CE routers MUST support IPv6 prefix assignment according to Section 13.3 of [RFC8415] (Identity Association for Prefix Delegation (IA_PD) option) on its LAN interface(s). Current: LPD-1: Each IPv6 CE router MUST support IPv6 prefix assignment according to Section 13.3 of [RFC8415] (Identity Association for Prefix Delegation (IA_PD) option) on its LAN interface(s). Alternatively (both plural): LPD-1: IPv6 CE routers MUST support IPv6 prefix assignment according to Section 13.3 of [RFC8415] (Identity Association for Prefix Delegation (IA_PD) option) on their LAN interfaces. --> <t>Each IPv6 CE router <bcp14>MUST</bcp14> support IPv6 prefix assignment according to <xreftarget="RFC8415"/>target="RFC8415" section="13.3"/> (Identity Association for Prefix Delegation (IA_PD) option) on its LAN interface(s).</t><t>IPv6</li> <!--[rfced] Because the second sentence is singular, should the first sentence be parallel? Original: LPD-2: IPv6 CE routers MUST assign a prefix from the delegated prefix as specified by L-2 in Section 4.3 of<xref target="RFC7084"/>.[RFC7084]. If insufficient prefixes are available the IPv6 CE Router MUST log a system management error. Perhaps: LPD-2: Each IPv6 CE router MUST assign a prefix from the delegated prefix as specified by L-2 in Section 4.3 of [RFC7084]. If insufficient prefixes are available, the IPv6 CE router MUST log a system management error. --> <li> <t>IPv6 CE routers <bcp14>MUST</bcp14> assign a prefix from the delegated prefix as specified by L-2 in <xref target="RFC7084" section="4.3"/>. If insufficient prefixes are available, the IPv6 CE router <bcp14>MUST</bcp14> log a system management error.</t> </li> <li> <t>The prefix assigned to a linkMUST NOT<bcp14>MUST NOT</bcp14> change in the absence of a local policy or a topology change.</t> </li> <li> <t>After LAN link prefix assignments, the IPv6 CE routerMUST<bcp14>MUST</bcp14> keep the remaining IPv6 prefixes available to other routers via Prefix Delegation.</t> </li> <li> <t>IPv6 CE routersMUST<bcp14>MUST</bcp14> maintain a local routing table that is dynamically updated with leases and the associated next hops as they are delegated to clients. When a delegated prefix is released or expires, the associated routeMUST<bcp14>MUST</bcp14> be removed from the IPv6 CE router's routing table. A delegated prefix expires when the valid lifetime assigned in the IA_PD expires without being renewed. When a prefix is released orexpiresexpires, itMUST<bcp14>MUST</bcp14> be returned the pool of available prefixes.</t> </li> <!--[rfced] Re: LPD-6, what does "that is not assigned" refer to? As far as verb agreement, it does not match "packets". Original: IPv6 CE routers MUST continue to drop packets including destination address that is not assigned to the LAN or delegated. Perhaps: IPv6 CE routers MUST continue to drop packets, including destination address, that are not assigned to the LAN or delegated. --> <li> <t>By default, the IPv6 CE router filtering rulesMUST<bcp14>MUST</bcp14> allow forwarding of packets with an outer IPv6 header containing a source address belonging to Delegated Prefixes, along with reciprocal packets from the same flow, following the recommendations of <xref target="RFC6092"/>. This updates WPD-5 of <xref target="RFC7084"/> to not drop packets from prefixes that have been delegated. IPv6 CE routersMUST<bcp14>MUST</bcp14> continue to drop packets including destination address that is not assigned to the LAN or delegated.</t> </li> <li> <t>The IPv6 CE routersMUST<bcp14>MUST</bcp14> provision IA_PD prefixes with a prefix-length of 64 on the LAN-facing interface unless configured to use a different prefix-length by the CERouterrouter administrator. The prefix length of 64 is used as that is the current prefix length supported by SLAAC <xref target="RFC4862"/>. For hierarchical prefixdelegationdelegation, a prefix-length shorter than 64 may be configured.</t> </li> <li> <t>IPv6 CE routers configured to generate a ULA prefix as defined in ULA-1 ofSection 4.3 of<xreftarget="RFC7084"/> MUSTtarget="RFC7084" section="4.3"/> <bcp14>MUST</bcp14> continue to provision available GUA IPv6 prefixes.</t><t>If</li> <li> <!--[rfced] Should "both ULA and GUA" be both "ULAs and GUAs"? If so, please review whether "the GUA" is accurate in the second phrase. Original: LPD-9: If an IPv6 CE router is provisioning both ULA and GUA via prefix delegation, the GUA SHOULD appear first in the DHCPv6 packets. Perhaps: LPD-9: If an IPv6 CE router is provisioning both ULAs and GUAs via prefix delegation, the GUA SHOULD appear first in the DHCPv6 packets. Or (singular): LPD-9: If an IPv6 CE router is provisioning both the ULA and the GUA via prefix delegation, the GUA SHOULD appear first in the DHCPv6 packets. --> <t>If an IPv6 CE router is provisioning both ULA and GUA via prefix delegation, the GUA <bcp14>SHOULD</bcp14> appear first in the DHCPv6 packets.</t> </li> <li> <t>IPv6 CE routersMUST NOT<bcp14>MUST NOT</bcp14> delegate prefixes via DHCPv6 on the LAN using lifetimes that exceed the remaining lifetimes of the corresponding prefixes learned on the WAN.</t></list></t></li> </ol> </section> </section> <sectionanchor="Security" title="Security Considerations">anchor="Security"> <name>Security Considerations</name> <t>This document does not add any new security considerations beyond those mentioned inSection 4 of<xreftarget="RFC8213"/>, Section 22 oftarget="RFC8213" section="4"/>, <xreftarget="RFC8415"/>target="RFC8415" section="22"/>, and <xreftarget="RFC6092"/>.</t>target="RFC6092" section="6"/>.</t> </section> <sectionanchor="IANA" title="IANA Considerations">anchor="IANA"> <name>IANA Considerations</name> <t> This documentmakeshas norequest of IANA.</t>IANA actions.</t> </section><section anchor="Acknowledgements" title="Acknowledgements"> <t> Thanks</middle> <!--[rfced] Terminology a) This term appeared inconsistently and has been updated to thefollowing people for their guidance and feedback: Marion Dillon, Erik Auerswald, Esko Dijk, Tim Carlin, Richard Patterson, Ted Lemon, Michael Richardson, Martin Huneki, Gabor Lencse, Ole Troan, Brian Carpenter, David Farmer, Kyle Rose, Mohamed Boucadair, Tim Chown, Ron Bonica,latter. Please let us know if you prefer otherwise. CE Router vs. CE router [based on usage in RFC 7084] b) Capitalization of these terms is not consistent. Please let us know your preference. Prefix Delegation vs. prefix delegation Delegated Prefix (in LPD-6) vs. delegated prefix (in LPD-2, LPD-5) c) Please review usage of this term andErica Johnson. </t> </section> </middle>let us know if any updates are needed. We note RFC 8415 uses the hyphen for the "prefix-length" field. prefix-length (3 instances) vs. prefix length (2 instances) --> <back><references title="Normative References"> <?rfc include='reference.RFC.2119.xml'?> <?rfc include='reference.RFC.4193.xml'?> <?rfc include='reference.RFC.4291.xml'?> <?rfc include='reference.RFC.7084.xml'?> <?rfc include='reference.RFC.8174.xml'?> <?rfc include='reference.RFC.8200.xml'?> <?rfc include='reference.RFC.8213.xml'?> <?rfc include='reference.RFC.8415.xml'?><references> <name>References</name> <references> <name>Normative References</name> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4193.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4291.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7084.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8200.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8213.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8415.xml"/> </references><references title="Informative References"> <?rfc include='reference.RFC.4862.xml'?> <?rfc include='reference.RFC.6092.xml'?> <?rfc include='reference.RFC.6177.xml'?><references> <name>Informative References</name> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4862.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6092.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6177.xml"/> <!-- [rfced] FYI, the original URL provided for [eRouter] is to the most recent version of this CableLabs specification, Version I22, which was published in May 2024, so we updated the reference as follows. Original: [eRouter] CableLabs, "IPv4 and IPv6 eRouter Specification Version I21", February 2022, <https://www.cablelabs.com/specifications/CM-SP-eRouter>. Current: [eRouter] CableLabs, "IPv4 and IPv6 eRouter Specification", Data- Over-Cable Service Interface Specifications, Version I22, May 2024, <https://www.cablelabs.com/specifications/CM-SP-eRouter>. Re: "in Section 8.5 of CableLabs IPv6 eRouter specification [eRouter]", we note that Section 8.5 has the same title in I21 and I122. However, if you prefer to reference Version I21, please let us know (and in that case, we recommend this URL: https://www.cablelabs.com/specifications/CM-SP-eRouter?v=I21). --> <reference anchor="eRouter" target="https://www.cablelabs.com/specifications/CM-SP-eRouter"> <front> <title>IPv4 and IPv6 eRouterSpecification Version I21</title>Specification</title> <author fullname="CableLabs" surname="CableLabs"><organization></organization><organization/> </author> <datemonth="February" year="2022" />month="May" year="2024"/> </front> <refcontent>Data-Over-Cable Service Interface Specifications, Version I22</refcontent> </reference> </references> </references> <section anchor="Acknowledgements" numbered="false"> <name>Acknowledgements</name> <t> Thanks to the following people for their guidance and feedback: <contact fullname="Marion Dillon"/>, <contact fullname="Erik Auerswald"/>, <contact fullname="Esko Dijk"/>, <contact fullname="Tim Carlin"/>, <contact fullname="Richard Patterson"/>, <contact fullname="Ted Lemon"/>, <contact fullname="Michael Richardson"/>, <contact fullname="Martin Huneki"/>, <contact fullname="Gabor Lencse"/>, <contact fullname="Ole Troan"/>, <contact fullname="Brian Carpenter"/>, <contact fullname="David Farmer"/>, <contact fullname="Kyle Rose"/>, <contact fullname="Mohamed Boucadair"/>, <contact fullname="Tim Chown"/>, <contact fullname="Ron Bonica"/>, and <contact fullname="Erica Johnson"/>.</t> </section> </back> </rfc>