RFC 9096: BCP 234: Improving the Reaction of Customer Edge Routers to IPv6 Renumbering Events
- F. Gont,
- J. Žorž,
- R. Patterson,
- B. Volz
Abstract
This document specifies improvements to Customer Edge routers that help mitigate the problems that may arise when network configuration information becomes invalid without any explicit signaling of that condition to the local nodes. This document updates RFC 7084.¶
Status of This Memo
This memo documents an Internet Best Current Practice.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on BCPs is available in Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://
1. Introduction
In scenarios where network configuration information becomes invalid without any explicit signaling of that condition (such as when a Customer Edge (CE) router crashes and reboots without knowledge of the previously employed configuration information), hosts on the local network will continue using stale information for an unacceptably long period of time, thus resulting in connectivity problems. This problem is documented in detail in [RFC8978].¶
This document specifies improvements to CE routers that help mitigate the aforementioned problem for residential and small office scenarios. It specifies recommendations for the default behavior of CE routers but does not preclude the availability of configuration knobs that might allow an operator or user to manually configure the CE router to deviate from these recommendations
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
3. Improved Customer Edge Router Behavior
This section specifies and clarifies requirements for CE routers that can help mitigate the problem discussed in Section 1, particularly when they employ prefixes learned via DHCPv6 Prefix Delegation (DHCPv6-PD) [RFC8415] on the WAN side with Stateless Address Autoconfigurati
This document specifies additional WAN-side prefix
- WPD-9:
- CE routers SHOULD NOT automatically send DHCPv6-PD RELEASE messages upon restart events. See Section 3.1 for further details.¶
- WPD-10:
- CE routers MUST by default use a WAN-side Identity Association IDentifier (IAID) value that is stable between CE router restarts, DHCPv6 client restarts, or interface state changes (e.g., transient PPP interfaces), unless the CE router employs the IAID techniques discussed in Section 4.5 of [RFC7844]. See Section 3.2 for further details.¶
This document also replaces LAN-side requirement L-13 from [RFC7084] with:¶
- L-13:
- CE routers MUST signal stale configuration information as specified in Section 3.5.¶
Finally, this document specifies the following additional LAN-side requirements to those from [RFC7084]:¶
- L-15:
- CE routers MUST NOT advertise prefixes via SLAAC or assign addresses or delegate prefixes via DHCPv6 on the LAN side using lifetimes that exceed the remaining lifetimes of the corresponding prefixes learned on the WAN side via DHCPv6-PD. For more details, see Section 3.3.¶
- L-16:
- CE routers SHOULD advertise capped SLAAC option lifetimes, capped DHCPv6 IA Address option lifetimes, and capped IA Prefix option lifetimes, as specified in Section 3.4.¶
3.1. Automatic DHCPv6 RELEASEs
Some CE routers are known to automatically send DHCPv6-PD RELEASE
messages upon restart events. However, this may inadvertently
trigger a flash
As a result, requirement WPD-9 from Section 3 specifies that CE routers SHOULD NOT automatically send DHCPv6-PD RELEASE messages upon restart events.¶
3.2. Stability of IAIDs
[RFC8415] requires that the IAID for an IA
MUST be consistent across restarts of the DHCP
client. However, some popular CE routers are known to select new random
IAIDs, e.g., every time the underlying PPP session is established or when
the device is rebooted. This could be the result of extrapolating the
behavior described in [RFC7844] or simply a
consequence of not storing IAIDs on stable storage along with failure to
employ an algorithm that consistently generates the same IAID upon
reboots. Thus, requirement WPD-10 from Section 3 prevents CE routers from inadvertently triggering
flash
3.3. Interface between the WAN Side and LAN Side
The "Preferred Lifetime" and "Valid Lifetime" of Prefix Information Options (PIOs) [RFC4861] corresponding to prefixes learned via DHCPv6-PD on the WAN side MUST NOT span past the remaining preferred and valid lifetimes of the corresponding DHCPv6-PD prefixes. This means that the "Preferred Lifetime" and the "Valid Lifetime" advertised in PIOs by the CE router MUST be dynamically adjusted such that they never span past the remaining preferred and valid lifetimes of the corresponding prefixes delegated via DHCPv6-PD on the WAN side.¶
Similarly, the "preferred
RATIONALE:¶
In particular, if the delegated prefix or a prefix derived from it is advertised for stateless address autoconfiguration [RFC4862], the advertised preferred and valid lifetimes MUST NOT exceed the corresponding remaining lifetimes of the delegated prefix.¶
3.4. LAN-Side Option Lifetimes
CE routers SHOULD override the default lifetime values of Neighbor Discovery options that depend in any way on changes in the prefix employed for address configuration on the LAN side, and employ shorter lifetime values to improve the robustness to renumbering events, while complying with the requirements from Section 3.3 of this document and the recommendations in [RFC7772].¶
CE routers SHOULD set the "Router Lifetime" of
Router Advertisement (RA) messages to ND
CE routers SHOULD also set the PIO "Preferred
Lifetime" to the lesser of the remaining preferred lifetime of the
corresponding prefix (see Section 3.3) and ND
NOTE: In scenarios where the valid lifetime and the preferred lifetime of
prefixes learned via DHCPv6 on the WAN side are always larger than
ND_VALID_LIMIT and ND
The above text refers to the Neighbor Discovery options that are typically employed by CE routers. A CE router may need to apply the same policy for setting the lifetime of other Neighbor Discovery options it employs, if and where applicable.¶
CE routers providing stateful address configuration via DHCPv6
SHOULD set the "preferred
CE routers providing DHCPv6-PD on the LAN side SHOULD set the
"preferred
RATIONALE:¶
3.5. Signaling Stale Configuration Information
When a CE router provides LAN-side address
When a CE router provides LAN-side DHCPv6 (address assignment or prefix delegation), then:¶
RATIONALE:¶
5. IANA Considerations
This document has no IANA actions.¶
6. Security Considerations
This document discusses a problem that may arise, e.g., in scenarios where dynamic IPv6 prefixes are employed, and it proposes improvements to CE routers [RFC7084] to mitigate the problem for residential or small office scenarios. It does not introduce new security issues; thus, the same security considerations as for [RFC4861], [RFC4862], [RFC7084], and [RFC8415] apply.¶
7. References
7.1. Normative References
- [RFC2119]
-
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10
.17487 , , <https:///RFC2119 www >..rfc -editor .org /info /rfc2119 - [RFC4191]
-
Draves, R. and D. Thaler, "Default Router Preferences and More-Specific Routes", RFC 4191, DOI 10
.17487 , , <https:///RFC4191 www >..rfc -editor .org /info /rfc4191 - [RFC4861]
-
Narten, T., Nordmark, E., Simpson, W., and H. Soliman, "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, DOI 10
.17487 , , <https:///RFC4861 www >..rfc -editor .org /info /rfc4861 - [RFC4862]
-
Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless Address Autoconfigurati
on" , RFC 4862, DOI 10.17487 , , <https:///RFC4862 www >..rfc -editor .org /info /rfc4862 - [RFC7772]
-
Yourtchenko, A. and L. Colitti, "Reducing Energy Consumption of Router Advertisements", BCP 202, RFC 7772, DOI 10
.17487 , , <https:///RFC7772 www >..rfc -editor .org /info /rfc7772 - [RFC7844]
-
Huitema, C., Mrugalski, T., and S. Krishnan, "Anonymity Profiles for DHCP Clients", RFC 7844, DOI 10
.17487 , , <https:///RFC7844 www >..rfc -editor .org /info /rfc7844 - [RFC8106]
-
Jeong, J., Park, S., Beloeil, L., and S. Madanapalli, "IPv6 Router Advertisement Options for DNS Configuration", RFC 8106, DOI 10
.17487 , , <https:///RFC8106 www >..rfc -editor .org /info /rfc8106 - [RFC8174]
-
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10
.17487 , , <https:///RFC8174 www >..rfc -editor .org /info /rfc8174 - [RFC8415]
-
Mrugalski, T., Siodelski, M., Volz, B., Yourtchenko, A., Richardson, M., Jiang, S., Lemon, T., and T. Winters, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 8415, DOI 10
.17487 , , <https:///RFC8415 www >..rfc -editor .org /info /rfc8415
7.2. Informative References
- [6MAN
-SLAAC -RENUM] -
Gont, F., Zorz, J., and R. Patterson, "Improving the Robustness of Stateless Address Autoconfigurati
on (SLAAC) to Flash Renumbering Events" , Work in Progress, Internet-Draft, draft-ietf , , <https://-6man -slaac -renum -02 datatracker >..ietf .org /doc /html /draft -ietf -6man -slaac -renum -02 - [RFC7084]
-
Singh, H., Beebee, W., Donley, C., and B. Stark, "Basic Requirements for IPv6 Customer Edge Routers", RFC 7084, DOI 10
.17487 , , <https:///RFC7084 www >..rfc -editor .org /info /rfc7084 - [RFC8978]
-
Gont, F., Žorž, J., and R. Patterson, "Reaction of IPv6 Stateless Address Autoconfigurati
on (SLAAC) to Flash , RFC 8978, DOI 10-Renumbering Events" .17487 , , <https:///RFC8978 www >..rfc -editor .org /info /rfc8978
Acknowledgments
The authors would like to thank Owen DeLong, Philip Homburg, Erik Kline, and Ted Lemon for their valuable help in improving this document via successive detailed reviews.¶
The authors would like to thank Mikael Abrahamsson, Luis Balbinot, Brian Carpenter, Tim Chown, Lorenzo Colitti, Alejandro D'Egidio, Gert Doering, Fernando Frediani, Guillermo Gont, Steinar Haug, Nick Hilliard, Lee Howard, Christian Huitema, Sheng Jiang, Benjamin Kaduk, Suresh Krishnan, Warren Kumari, Albert Manfredi, Olorunloba Olopade, Jordi Palet Martinez, Pete Resnick, Michael Richardson, Mark Smith, Job Snijders, Sander Steffann, Tarko Tikan, Ole Trøan, Loganaden Velvindron, Éric Vyncke, Robert Wilton, Timothy Winters, Christopher Wood, and Chongfeng Xie for providing valuable comments on earlier draft versions of this document.¶
Fernando would also like to thank Brian Carpenter who, over the years, has answered many questions and
provided valuable comments that have benefited his protocol