Internet-Draft IPv6 Loopback Prefix April 2026
Huston & Kumari Expires 29 October 2026 [Page]
Workgroup:
WG Working Group
Internet-Draft:
draft-kumari-ipv6-loopback-02
Published:
Intended Status:
Standards Track
Expires:
Authors:
G. Huston
APNIC
W. Kumari
Google, Inc.

The IPv6 Loopback Address Prefix

Abstract

{ Editor's note: This document requests the allocation of a new IPv6 address prefix to be used for loopback instead of expanding into the existing ::/96. The specific prefix to be allocated is TBD/96, and the document updates the relevant RFCs and IANA registries to reflect this change. }

This document updates the IP Version 6 Address Architecture to expand the size of the IPv6 loopback space from a single address to a /96 prefix.

This change allows for a much larger number of loopback addresses in IPv6, which can be used for inter-process communication within a host and for network diagnostics.

The document also updates the IANA IPv6 Address registry and the IPv6 Special Purpose Address registry to reflect this change.

It updates RFC4291 to reflect the new loopback prefix and its functional semantics.

About This Document

This note is to be removed before publishing as an RFC.

The latest revision of this draft can be found at https://wkumari.github.io/draft-kumari-ipv6-loopback/draft-kumari-ipv6-loopback.html. Status information for this document may be found at https://datatracker.ietf.org/doc/draft-kumari-ipv6-loopback/.

Source for this draft and an issue tracker can be found at https://github.com/wkumari/draft-kumari-ipv6-loopback.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

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."

This Internet-Draft will expire on 29 October 2026.

Table of Contents

1. Introduction

In the IPv4 addressing architecture, the entire 127.0.0.0/8 block is reserved for loopback routing purposes. This generous allocation allows developers and system administrators to utilize over 16 million distinct host-internal addresses. While historically viewed as a byproduct of classful network design, this large local address space has become fundamental to modern network operations, enabling complex local testing, containerization, and inter-process communication without port exhaustion.

By contrast, the IPv6 Addressing Architecture allocates only a single address, ::1/128, for local loopback. While sufficient for basic localhost identification, this strict limitation creates significant operational friction in modern IPv6-only and dual-stack environments.

1.1. The Need for Expanded Host-Internal Space

As application architectures have evolved, the restriction of a single IPv6 loopback address has become a tangible bottleneck. Below are some examples of use cases which would benefit from an expanded loopback space:

  • Application Testing and Containerization: Developers frequently run multiple instances of a service locally. In IPv4, these instances can bind to the same port on different 127.x.x.x addresses. In IPv6, developers are forced to modify application port numbers, which breaks environment parity and complicates test scaffolding.

  • Local Proxying and Service Meshes: Complex local routing paradigms (such as sidecar proxies) often require distinct IP assignments to securely isolate and route traffic locally without exposing services to the external network.

  • Controlled Interruption and Name Collisions: Global infrastructure services occasionally rely on localized sinkholes to safely manage deprecation or name collisions. For example, ICANN has historically utilized 127.0.53.53 for name collision controlled interruption. Replicating this fail-safe behavior in IPv6 requires a dedicated, local-only prefix.

1.2. Terminology and Functional Semantics

While historically referred to as "loopback" space, the functional requirement described in this document is a dedicated address block for host-internal virtual interfaces.

The core semantic of this proposed space is strict isolation. Implementations MUST ensure that:

  • Addresses from this block can be assigned to multiple internal virtual interfaces simultaneously.

  • Packets with a source or destination address drawn from this block MUST NOT be forwarded to any physical network interface.

  • These packets MUST never be routed off the local host. If a router or switch receives a packet on a physical interface bearing one of these addresses, the packet MUST be dropped.

To support these operational realities, this document requests the allocation of a new, dedicated IPv6 prefix (e.g., a /96 drawn from the IANA IPv6 Special-Purpose Address Registry) to serve as expanded host-internal virtual interface space. This block will operate with the same fundamental constraints as the primary ::1/128 loopback address, without overlapping with the Unspecified Address (::/128).

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. Loopback address background

The IPv4 network 127.0.0.0/8 was reserved by the IANA in [RFC791] where the class-based address architecture was described. It is understood that it was the IANA's policy at the time to reserve the first and last network of each class, and the address prefixes 0.0.0.0/8 and 127.0.0.0/8 from the Class A space were reserved in accordance with this practice. [RFC990] listed the 127.0.0.0/8 address prefix as being used by the loopback function, and this function was listed as a requirement for all Internet hosts in [RFC1122].

The "loopback" function is defined such that an outbound packet whose destination address triggers this loopback function should loop the packet back to the packet ingress queue for processing by the same host. No packet that is addressed to a loopback address should ever be passed to any physical network.

[RFC1884], the original IPv6 Addressing Architecture document, allocates a single local loopback address, ::1. This single address allocation has been preserved in all subsequent revisions to the IPv6 addressing specification ([RFC2373], [RFC3513], [RFC4291])

Loopback addresses enable localhost communication, network diagnostics, and inter-process connections, making them essential for various local functions.

Multiple loopback addresses can increase the number of distinct sockets that can be used for inter-process communication within a host. A larger local loopback prefix in IPv6 can permit large numbers of distinct concurrent loopback TCP connections within a single host, which is comparable to the functionality supported by the IPv4 loopback address prefix.

4. The IPv6 Loopback Prefix

The IANA IPv6 Address registry denotes the address prefix ::/8 as being reserved by the IETF in [RFC3513] [RFC4291]. This range of addresses has been partially allocated with the prefix ::FFFF:0:0/96 being used in the context of an IPv6 transition technology to map IPv4 addresses into IPv6 addresses.

The document expands the set of IPv6 loopback addresses by adding an additional prefix: TBD/96.

This RFC replaces section 2.5.3 of [RFC4291] as follows:

5. Security Considerations

IPv6 addressing documents do not have any direct impact on Internet infrastructure security.

((heas: ::1/32 remains the primary loopback address and MUST (SHOULD?) be assigned to a loopback interface.))

6. IANA Considerations

The IANA is requested to assign a new IPv6 address prefix, TBD/96, to be used for the loopback function as described in this document. This prefix should be allocated from the IANA IPv6 Special-Purpose Address registry.

The IANA is requested to amend the IPv6 Address registry and the IPv6 Special Purpose Address registry to record the designation of this address prefix.

The IANA is also requested to add an entry to the IPv6 Locally-Served DNS Zone Registry for the new loopback prefix, TBD/96, to ensure that reverse DNS lookups for addresses within this prefix are properly handled.

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/RFC2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
[RFC4291]
Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture", RFC 4291, DOI 10.17487/RFC4291, , <https://www.rfc-editor.org/rfc/rfc4291>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/rfc/rfc8174>.

7.2. Informative References

[RFC1122]
Braden, R., Ed., "Requirements for Internet Hosts - Communication Layers", STD 3, RFC 1122, DOI 10.17487/RFC1122, , <https://www.rfc-editor.org/rfc/rfc1122>.
[RFC1884]
Hinden, R., Ed. and S. Deering, Ed., "IP Version 6 Addressing Architecture", RFC 1884, DOI 10.17487/RFC1884, , <https://www.rfc-editor.org/rfc/rfc1884>.
[RFC2373]
Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture", RFC 2373, DOI 10.17487/RFC2373, , <https://www.rfc-editor.org/rfc/rfc2373>.
[RFC3513]
Hinden, R. and S. Deering, "Internet Protocol Version 6 (IPv6) Addressing Architecture", RFC 3513, DOI 10.17487/RFC3513, , <https://www.rfc-editor.org/rfc/rfc3513>.
[RFC791]
Postel, J., "Internet Protocol", STD 5, RFC 791, DOI 10.17487/RFC0791, , <https://www.rfc-editor.org/rfc/rfc791>.
[RFC990]
Reynolds, J. and J. Postel, "Assigned numbers", RFC 990, DOI 10.17487/RFC0990, , <https://www.rfc-editor.org/rfc/rfc990>.

Acknowledgments

The authors would like to thank Alejandro Acosta, Brian Carpenter, Antonis Chariton, Owen DeLong, Gert Doering, Jeremy Duncan, Lorenzo Colitti, David Farmer, Steinar Haug, Gábor Lencse, Terry Sweetser, Ole Trøan, and Maciej Żenczykowski for their comments, discussions, and suggestions on this topic.

Additional thanks to John Heasley for submitting Pull Requests. In addition we would like to thank Jen Linkova for presenting the proposal at IETF 125, as the authors were participating in other sessions at the time.

We would also like to specifically thank Mark Smith for an earlier (2013) effort: draft-smith-v6ops-larger-ipv6-loopback-prefix-04, which proposed a /32 designation.

The need for a loopback address prefix has long been a topic of discussion in various forums, and we would like to acknowledge the contributions of many individuals who have participated in these discussions over the years. Unfortunately, at least one of the authors has a terrible memory, and has lost track of all those who have contributed to this topic over the years, and will be more than happy to acknowledge their input if reminded of this :-)

Authors' Addresses

Geoff Huston
APNIC
W. Kumari
Google, Inc.