Unique local address

Last updated

A unique local address (ULA) is an Internet Protocol version 6 (IPv6) address in the address range fc00::/7. [1] These addresses are non-globally reachable [2] (routable only within the scope of private networks, but not the global IPv6 Internet). For this reason, ULAs are somewhat analogous to IPv4 private network addressing, but with significant differences. Unique local addresses may be used freely, without centralized registration, inside a single site or organization or spanning a limited number of sites or organizations.

Contents

History

In December 1995, the IPv6 address block fec0::/10 was reserved for site-local addresses, [3] that could be used within a "site" for private IPv6 networks. However, insufficient definition of the term site led to confusion over the governing routing rules.

In September 2004, the Internet Engineering Task Force (IETF) deprecated the definition of this address range, [4] and postulated solutions to its problems. The special behaviour for this type of addresses as required at that time [5] was lifted in 2006 and the block returned to regular global unicast. [6]

In October 2005, the IETF reserved the address block fc00::/7 for use in private IPv6 networks and defined the associated term unique local addresses. [1]

Definition

Unique local addresses use prefix fc00::/7. The first bit following the prefix indicates, if set, that the address is locally assigned. This splits the address block in two equally sized halves, fc00::/8 and fd00::/8.

The block with L = 0, fc00::/8, is currently not defined. [1] It has been proposed that an allocation authority manage it, but this has not gained acceptance in the IETF. [7] [8] [9]

The block with L = 1, fd00::/8 follows the following format.

RFC 4193 blockPrefix/LGlobal ID (random)Subnet IDNumber of addresses in subnet
48 bits16 bits64 bits
fd00::/8fdxx:xxxx:xxxxyyyy18446744073709551616

It is divided into /48 prefixes, formed by setting the forty bits following the prefix fd00/8 to a randomly generated bit string. This results in the format fdxx:xxxx:xxxx::/48 for a prefix in this range. RFC 4193 offers a suggestion for generating the random identifier to obtain a minimum-quality result if the user does not have access to a good source of random numbers.

Example

A routing prefix in the range fd00::/8 may be constructed by generating a random 40-bit hexadecimal string, taken for this example to be 0x123456789a. The string is appended to the prefix fd00::/8, which forms the 48-bit routing prefix fd12:3456:789a::/48. With this prefix, 65536 subnets of size /64 are available for the private network: fd12:3456:789a::/64 to fd12:3456:789a:ffff::/64. For example Subnet ID 0x1 would be the subnet fd12:3456:789a:1::/64.

Prefix/LGlobal ID (random)Subnet IDInterface IDAddressSubnet
fdxx:xxxx:xxxxyyyyzzzz:zzzz:zzzz:zzzzfdxx:xxxx:xxxx:yyyy:zzzz:zzzz:zzzz:zzzzfdxx:xxxx:xxxx:yyyy::/64
fd12:3456:789a00010000:0000:0000:0001fd12:3456:789a:1::1fd12:3456:789a:1::/64

Properties

Prefixes in the range fc00::/7 have some characteristics in common with the IPv4 private address ranges: They are not allocated by an address registry and may be used in networks by anyone without outside involvement. They are not mathematically guaranteed to be globally unique, but the probability of a collision is nevertheless extremely small. Reverse Domain Name System (DNS) entries (in ip6.arpa) for fd00::/8 ULAs cannot be delegated in the global DNS.

As fc00::/7 ULAs are not meant to be routed outside their administrative domain (site or organization), administrators of interconnecting networks normally do not need to worry about the uniqueness of ULA prefixes. However, if networks require routing ULAs between each other in the event of a merger, for example, the risk of address collision is very small if the RFC 4193 selection algorithm was used.

Industry usage

The ULA block is useful in the context of service providers and content providers, as it provides isolation of the infrastructure and hence avoids exposure to the Internet.

One such example is Amazon Web Services, which uses ULAs within its virtual private cloud networking. In particular it uses the block fd00:ec2::/32 for local services, such as time sync services or DNS resolvers. [10]

Attempts of registration and allocation

SixXS attempted to maintain a voluntary registration database for fd00::/8 ULA prefixes to reduce the risk of different organisations using identical prefixes. [11] When the SixXS services were discontinued on 6 June 2017, the database became read-only.

On 6 December 2020, the Swiss-based company 'ungleich' announced that it would revive the IPv6 ULA registry based on the original SixXS database, citing user demands for a ULA registry. [12]

For the range fc00::/8, different design decisions have been proposed and submitted to the IETF, [7] [9] trading the risk of non-uniqueness for the requirement that the range be managed by a central allocation authority. However, such attempts at standardizing this range have not resulted in a request for comments. [7] [8] [9]

See also

Notes

    Related Research Articles

    The Dynamic Host Configuration Protocol (DHCP) is a network management protocol used on Internet Protocol (IP) networks for automatically assigning IP addresses and other communication parameters to devices connected to the network using a client–server architecture.

    An Internet Protocol address is a numerical label such as 192.0.2.1 that is assigned to a device connected to a computer network that uses the Internet Protocol for communication. IP addresses serve two main functions: network interface identification, and location addressing.

    <span class="mw-page-title-main">Internet Protocol version 4</span> Fourth version of the Internet Protocol

    Internet Protocol version 4 (IPv4) is the fourth version of the Internet Protocol (IP). It is one of the core protocols of standards-based internetworking methods in the Internet and other packet-switched networks. IPv4 was the first version deployed for production on SATNET in 1982 and on the ARPANET in January 1983. It is still used to route most Internet traffic today, even with the ongoing deployment of Internet Protocol version 6 (IPv6), its successor.

    <span class="mw-page-title-main">IPv6</span> Version 6 of the Internet Protocol

    Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. IPv6 was developed by the Internet Engineering Task Force (IETF) to deal with the long-anticipated problem of IPv4 address exhaustion, and was intended to replace IPv4. In December 1998, IPv6 became a Draft Standard for the IETF, which subsequently ratified it as an Internet Standard on 14 July 2017.

    A MAC address is a unique identifier assigned to a network interface controller (NIC) for use as a network address in communications within a network segment. This use is common in most IEEE 802 networking technologies, including Ethernet, Wi-Fi, and Bluetooth. Within the Open Systems Interconnection (OSI) network model, MAC addresses are used in the medium access control protocol sublayer of the data link layer. As typically represented, MAC addresses are recognizable as six groups of two hexadecimal digits, separated by hyphens, colons, or without a separator.

    Classless Inter-Domain Routing is a method for allocating IP addresses for IP routing. The Internet Engineering Task Force introduced CIDR in 1993 to replace the previous classful network addressing architecture on the Internet. Its goal was to slow the growth of routing tables on routers across the Internet, and to help slow the rapid exhaustion of IPv4 addresses.

    A multicast address is a logical identifier for a group of hosts in a computer network that are available to process datagrams or frames intended to be multicast for a designated network service. Multicast addressing can be used in the link layer, such as Ethernet multicast, and at the internet layer for Internet Protocol Version 4 (IPv4) or Version 6 (IPv6) multicast.

    <span class="mw-page-title-main">Subnet</span> Logical subdivision of an IP network

    A subnetwork, or subnet, is a logical subdivision of an IP network. The practice of dividing a network into two or more networks is called subnetting.

    <span class="mw-page-title-main">Classful network</span> Early system for organizing the IPv4 address space

    A classful network is an obsolete network addressing architecture used in the Internet from 1981 until the introduction of Classless Inter-Domain Routing (CIDR) in 1993. The method divides the IP address space for Internet Protocol version 4 (IPv4) into five address classes based on the leading four address bits. Classes A, B, and C provide unicast addresses for networks of three different network sizes. Class D is for multicast networking and the class E address range is reserved for future or experimental purposes.

    Bogon filtering is the practice of filtering bogons, which are bogus (fake) IP addresses of a computer network. Bogons include IP packets on the public Internet that contain addresses that are not in any range allocated or delegated by the Internet Assigned Numbers Authority (IANA) or a delegated regional Internet registry (RIR) and allowed for public Internet use. The areas of unallocated address space are called the bogon space.

    Zero-configuration networking (zeroconf) is a set of technologies that automatically creates a usable computer network based on the Internet Protocol Suite (TCP/IP) when computers or network peripherals are interconnected. It does not require manual operator intervention or special configuration servers. Without zeroconf, a network administrator must set up network services, such as Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS), or configure each computer's network settings manually.

    <span class="mw-page-title-main">Anycast</span> Network addressing and routing methodology

    Anycast is a network addressing and routing methodology in which a single IP address is shared by devices in multiple locations. Routers direct packets addressed to this destination to the location nearest the sender, using their normal decision-making algorithms, typically the lowest number of BGP network hops. Anycast routing is widely used by content delivery networks such as web and name servers, to bring their content closer to end users.

    In computer networking, localhost is a hostname that refers to the current computer used to access it. The name localhost is reserved for loopback purposes. It is used to access the network services that are running on the host via the loopback network interface. Using the loopback interface bypasses any local network interface hardware.

    In Internet networking, a private network is a computer network that uses a private address space of IP addresses. These addresses are commonly used for local area networks (LANs) in residential, office, and enterprise environments. Both the IPv4 and the IPv6 specifications define private IP address ranges.

    In computer networking, the multicast DNS (mDNS) protocol resolves hostnames to IP addresses within small networks that do not include a local name server. It is a zero-configuration service, using essentially the same programming interfaces, packet formats and operating semantics as unicast Domain Name System (DNS). It was designed to work as either a stand-alone protocol or compatible with standard DNS servers. It uses IP multicast User Datagram Protocol (UDP) packets and is implemented by the Apple Bonjour and open-source Avahi software packages, included in most Linux distributions. Although the Windows 10 implementation was limited to discovering networked printers, subsequent releases resolved hostnames as well. mDNS can work in conjunction with DNS Service Discovery (DNS-SD), a companion zero-configuration networking technique specified separately in RFC 6763.

    In the Internet addressing architecture, the Internet Engineering Task Force (IETF) and the Internet Assigned Numbers Authority (IANA) have reserved various Internet Protocol (IP) addresses for special purposes.

    In computer networking, a link-local address is a network address that is valid only for communications on a local link, i.e. within a subnetwork that a host is connected to. Link-local addresses are most often unicast network addresses assigned automatically through a process known as stateless address autoconfiguration (SLAAC) or link-local address autoconfiguration, also known as automatic private IP addressing (APIPA) or auto-IP. Link-local addresses are not all unicast; e.g. IPv6 addresses beginning with ff02:, and IPv4 addresses beginning with 224.0.0. are multicast addresses that are link-local.

    An IPv6 transition mechanism is a technology that facilitates the transitioning of the Internet from the Internet Protocol version 4 (IPv4) infrastructure in use since 1983 to the successor addressing and routing system of Internet Protocol Version 6 (IPv6). As IPv4 and IPv6 networks are not directly interoperable, transition technologies are designed to permit hosts on either network type to communicate with any other host.

    <span class="mw-page-title-main">IPv6 address</span> Label to identify a network interface of a computer or other network node

    An Internet Protocol version 6 address is a numeric label that is used to identify and locate a network interface of a computer or a network node participating in a computer network using IPv6. IP addresses are included in the packet header to indicate the source and the destination of each packet. The IP address of the destination is used to make decisions about routing IP packets to other networks.

    An IPv6 packet is the smallest message entity exchanged using Internet Protocol version 6 (IPv6). Packets consist of control information for addressing and routing and a payload of user data. The control information in IPv6 packets is subdivided into a mandatory fixed header and optional extension headers. The payload of an IPv6 packet is typically a datagram or segment of the higher-level transport layer protocol, but may be data for an internet layer or link layer instead.

    References

    1. 1 2 3 R. Hinden; B. Haberman (October 2005). Unique Local IPv6 Unicast Addresses. Network Working Group. doi: 10.17487/RFC4193 . RFC 4193.Proposed Standard.
    2. "IANA IPv6 Special-Purpose Address Registry". www.iana.org. Retrieved 2023-04-03.
    3. R. Hinden; S. Deering (December 1995). IP Version 6 Addressing Architecture. Network Working Group. doi: 10.17487/RFC1884 . RFC 1884.Obsolete. Obsoleted by RFC  2373.
    4. C. Huitema; B. Carpenter (September 2004). Deprecating Site Local Addresses. Network Working Group. doi: 10.17487/RFC3879 . RFC 3879.Proposed Standard.
    5. R. Hinden; S. Deering (April 2003). IP Version 6 Addressing Architecturen. Network Working Group. doi: 10.17487/RFC3513 . RFC 3513.Obsolete. Obsoletes RFC  2373. Obsoleted by RFC  4291.
    6. R. Hinden; S. Deering (February 2006). IP Version 6 Addressing Architecture. Network Working Group. doi: 10.17487/RFC4291 . RFC 4291.Draft Standard. sec. 2.5.7. Obsoletes RFC  3513. Updated by RFC  5952, 6052, 7136, 7346, 7371 and 8064. [N]ew implementations must treat this prefix as Global Unicast.
    7. 1 2 3 Internet Draft "Centrally Assigned Unique Local IPv6 Unicast Addresses". Ietf Datatracker. IETF. 2004–2007.
    8. 1 2 Internet Draft "An Analysis of Centrally Assigned Unique Local Addresses". Ietf Datatracker. IETF. 2007.
    9. 1 2 3 Internet Draft "Centrally Assigned IPv6 Unicast Unique Local Address Prefixes". Ietf Datatracker. IETF. 2009–2010.
    10. "Introducing IPv6-only subnets and EC2 instances | Networking & Content Delivery". aws.amazon.com. 2022-06-06. Retrieved 2023-04-03.
    11. "IPv6 ULA (Unique Local Address) RFC4193 registration :: SixXS - IPv6 Deployment & Tunnel Broker". www.sixxs.net.
    12. "Happy St Nicholas Day: Re-Launching the IPv6 ULA registry". mailarchive.ietf.org.