RFC 9837: The IPv6 VPN Service Destination Option
- R. Bonica,
- X. Li,
- A. Farrel,
- Y. Kamite,
- L. Jalil
Abstract
This document describes an experiment in which VPN service information is encoded in an experimental IPv6 Destination Option. The experimental IPv6 Destination Option is called the VPN Service Option.¶
One purpose of this experiment is to demonstrate that the VPN Service Option can be deployed in a production network. Another purpose is to demonstrate that the security measures described in this document are sufficient to protect a VPN. Finally, this document encourages replication of the experiment.¶
Status of This Memo
This document is not an Internet Standards Track specification; it is published for examination, experimental implementation, and evaluation.¶
This document defines an Experimental Protocol for the Internet community. 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). Not all documents approved by the IESG are candidates for any level of Internet Standard; see 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) 2025 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
Generic Packet Tunneling [RFC2473] allows a router in one network to encapsulate a packet in an IP header and send it to a router in another network. The receiving router removes the outer IP header and forwards the original packet into its own network. This facilitates connectivity between networks that share a private addressing [RFC1918] [RFC4193] plan but are not connected by a direct link.¶
The IETF refined this concept in the Framework for VPN [RFC2764]. The IETF also standardized the following VPN technologies:¶
IPsec VPNs cryptographical
This document describes an experiment in which VPN service information is encoded in an experimental IPv6 Destination Option [RFC8200]. The experimental IPv6 Destination Option is called the VPN Service Option.¶
The solution described in this document offers the following benefits:¶
One purpose of this experiment is to demonstrate that the VPN Service Option can be deployed in a production network. Another purpose is to demonstrate that the security measures described in Section 7 of this document are sufficient to protect a VPN. Finally, this document encourages replication of the experiment, so that operational issues can be discovered.¶
2. Conventions and Definitions
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. The VPN Service Option
The VPN Service Option is an IPv6 Destination Option encoded according to rules defined in [RFC8200].¶
As described in Section 4.2 of [RFC8200], an IPv6 Destination Option contains three fields: Option Type, Opt Data Len, and Option Data. In the VPN Service Option, these fields are used as follows:¶
A single VPN Service Option MAY appear in a Destination Options header that immediately precedes an upper-layer header. It MUST NOT appear in any other extension header. If a receiver finds the VPN Service Option in any other extension header, it MUST NOT recognize the option. The packet MUST be processed according to the setting of the two highest-order bits of the Option Type (see NOTE below).¶
NOTE: For this experiment, the Option Type is set to '01011110', i.e.,
0x5E. The highest-order two bits are set to 01, indicating that the
required action by a destination node that does not recognize the option
is to discard the packet. The third highest-order bit is set to 0,
indicating that Option Data cannot be modified along the path between
the packet's source and its destination. The remaining low-order bits
are set to '11110' to indicate the single IPv6 Destination Option Type
code point available in the "Destination Options and Hop-by-Hop Options" registry [V6MSG] for experimentation
4. Forwarding Plane Considerations
The ingress PE encapsulates the customer data in a tunnel header. The tunnel header MUST contain an IPv6 header and a Destination Options header that immediately precedes the customer data. It MAY also include any legal combination of IPv6 extension headers.¶
The IPv6 Header contains the following (all defined in [RFC8200]):¶
The IPv6 Destination Options Extension Header contains the following (all defined in [RFC8200]):¶
5. Control Plane Considerations
The FIB can be populated by:¶
Routing protocol extensions that support the VPN Service Option are beyond the scope of this document.¶
6. IANA Considerations
This document has no IANA actions.¶
7. Security Considerations
A VPN is characterized by the following security policy:¶
A set of PE routers cooperate to enforce this security policy. If a device outside of that set could impersonate a device inside of the set, it would be possible for that device to subvert security policy. Therefore, impersonation must not be possible. The following paragraphs describe procedures that prevent impersonation.¶
The VPN Service Option can be deployed:¶
When the VPN Service Option is deployed on the global Internet, the tunnel that connects the ingress PE to the egress PE MUST be cryptographical
When the VPN Service Option is deployed in a limited domain, all nodes at the edge of limited domain MUST maintain Access Control Lists (ACLs). These ACLs MUST discard packets that satisfy the following criteria:¶
The mitigation techniques mentioned above operate in fail-open mode. That is, they require explicit configuration in order to ensure that packets using the approach described in this document do not leak out of a domain. See [SAFE-LIM-DOMAINS] for a discussion of fail-open and fail-closed modes.¶
For further information on the security concerns related to IP tunnels and the recommended mitigation techniques, please see [RFC6169].¶
8. Deployment Considerations
The VPN Service Option is imposed by an ingress PE and processed by an egress PE. It is not processed by any other nodes along the delivery path between the ingress PE and egress PE.¶
However, some networks discard packets that include IPv6 Destination Options. This is an impediment to deployment.¶
Because the VPN Service Option uses an experimental code point, there is a risk of collisions with other experiments. Specifically, the egress PE may process packets from another experiment that uses the same code point.¶
As with all experiments with IETF protocols, it is expected that care is taken by the operator to ensure that all nodes participating in an experiment are carefully configured.¶
Because the VPN Service Destination Option uses an experimental code point, processing of this option MUST be disabled by default. Explicit configuration is required to enable processing of the option.¶
9. Experimental Results
Parties participating in this experiment should publish experimental results within one year of the publication of this document. Experimental results should address the following:¶
10. References
10.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 - [RFC6169]
-
Krishnan, S., Thaler, D., and J. Hoagland, "Security Concerns with IP Tunneling", RFC 6169, DOI 10
.17487 , , <https:///RFC6169 www >..rfc -editor .org /info /rfc6169 - [RFC6724]
-
Thaler, D., Ed., Draves, R., Matsumoto, A., and T. Chown, "Default Address Selection for Internet Protocol Version 6 (IPv6)", RFC 6724, DOI 10
.17487 , , <https:///RFC6724 www >..rfc -editor .org /info /rfc6724 - [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 - [RFC8200]
-
Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", STD 86, RFC 8200, DOI 10
.17487 , , <https:///RFC8200 www >..rfc -editor .org /info /rfc8200
10.2. Informative References
- [RFC1918]
-
Rekhter, Y., Moskowitz, B., Karrenberg, D., de Groot, G. J., and E. Lear, "Address Allocation for Private Internets", BCP 5, RFC 1918, DOI 10
.17487 , , <https:///RFC1918 www >..rfc -editor .org /info /rfc1918 - [RFC2473]
-
Conta, A. and S. Deering, "Generic Packet Tunneling in IPv6 Specification", RFC 2473, DOI 10
.17487 , , <https:///RFC2473 www >..rfc -editor .org /info /rfc2473 - [RFC2764]
-
Gleeson, B., Lin, A., Heinanen, J., Armitage, G., and A. Malis, "A Framework for IP Based Virtual Private Networks", RFC 2764, DOI 10
.17487 , , <https:///RFC2764 www >..rfc -editor .org /info /rfc2764 - [RFC3884]
-
Touch, J., Eggert, L., and Y. Wang, "Use of IPsec Transport Mode for Dynamic Routing", RFC 3884, DOI 10
.17487 , , <https:///RFC3884 www >..rfc -editor .org /info /rfc3884 - [RFC4193]
-
Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast Addresses", RFC 4193, DOI 10
.17487 , , <https:///RFC4193 www >..rfc -editor .org /info /rfc4193 - [RFC4302]
-
Kent, S., "IP Authentication Header", RFC 4302, DOI 10
.17487 , , <https:///RFC4302 www >..rfc -editor .org /info /rfc4302 - [RFC4303]
-
Kent, S., "IP Encapsulating Security Payload (ESP)", RFC 4303, DOI 10
.17487 , , <https:///RFC4303 www >..rfc -editor .org /info /rfc4303 - [RFC4364]
-
Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private Networks (VPNs)", RFC 4364, DOI 10
.17487 , , <https:///RFC4364 www >..rfc -editor .org /info /rfc4364 - [RFC4761]
-
Kompella, K., Ed. and Y. Rekhter, Ed., "Virtual Private LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling", RFC 4761, DOI 10
.17487 , , <https:///RFC4761 www >..rfc -editor .org /info /rfc4761 - [RFC4762]
-
Lasserre, M., Ed. and V. Kompella, Ed., "Virtual Private LAN Service (VPLS) Using Label Distribution Protocol (LDP) Signaling", RFC 4762, DOI 10
.17487 , , <https:///RFC4762 www >..rfc -editor .org /info /rfc4762 - [RFC5440]
-
Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10
.17487 , , <https:///RFC5440 www >..rfc -editor .org /info /rfc5440 - [RFC6241]
-
Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., and A. Bierman, Ed., "Network Configuration Protocol (NETCONF)", RFC 6241, DOI 10
.17487 , , <https:///RFC6241 www >..rfc -editor .org /info /rfc6241 - [RFC6624]
-
Kompella, K., Kothari, B., and R. Cherukuri, "Layer 2 Virtual Private Networks Using BGP for Auto-Discovery and Signaling", RFC 6624, DOI 10
.17487 , , <https:///RFC6624 www >..rfc -editor .org /info /rfc6624 - [RFC7432]
-
Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based Ethernet VPN", RFC 7432, DOI 10
.17487 , , <https:///RFC7432 www >..rfc -editor .org /info /rfc7432 - [RFC8077]
-
Martini, L., Ed. and G. Heron, Ed., "Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)", STD 84, RFC 8077, DOI 10
.17487 , , <https:///RFC8077 www >..rfc -editor .org /info /rfc8077 - [RFC8986]
-
Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer, D., Matsushima, S., and Z. Li, "Segment Routing over IPv6 (SRv6) Network Programming", RFC 8986, DOI 10
.17487 , , <https:///RFC8986 www >..rfc -editor .org /info /rfc8986 - [RFC9469]
-
Rabadan, J., Ed., Bocci, M., Boutros, S., and A. Sajassi, "Applicability of Ethernet Virtual Private Network (EVPN) to Network Virtualization over Layer 3 (NVO3) Networks", RFC 9469, DOI 10
.17487 , , <https:///RFC9469 www >..rfc -editor .org /info /rfc9469 - [SAFE
-LIM -DOMAINS] -
Kumari, W., Alston, A., Vyncke, É., Krishnan, S., and D. Eastlake, "Safe(r) Limited Domains", Work in Progress, Internet-Draft, draft
-wkumari , , <https://-intarea -safe -limited -domains -04 datatracker >..ietf .org /doc /html /draft -wkumari -intarea -safe -limited -domains -04 - [V6MSG]
-
IANA, "Destination Options and Hop-by-Hop Options", <https://
www >..iana .org /assignments /ipv6 -parameters
Acknowledgements
Thanks to Gorry Fairhurst, Antoine Fressancourt, Eliot Lear, and Mark Smith for their reviews and contributions to this document.¶