IPv6 global Unique address (GUA) is a type of IPv6 address that is routable over the Internet, allowing devices to communicate globally. This section will explore the process by which GUAs are allocated to enterprises and service providers, including the roles of key organizations like IANA, RIRs, and LIRs. We will also cover how addresses are ultimately assigned to individual endpoints.
Table of Contents
IPv6 GUA addressing
IPv6 GUA Allocation Proces
IANA (Internet Assigned Numbers Authority) is the primary organization responsible for allocating large blocks of both IPv4 and IPv6 address space. For the purpose of this discussion, we will focus exclusively on IPv6 addresses.
Under IANA, the distribution of IPv6 addresses is managed by several Regional Internet Registries (RIR), which serve different geographical regions:
AFRINIC: Africa
APNIC: Asia-Pacific
ARIN: Canada, the USA, and parts of the Caribbean
LACNIC: Latin America and parts of the Caribbean
RIPE NCC: Europe, the Middle East, and Central Asia
At the next level, RIRs allocate IPv6 address space to Local Internet Registries (LIR), which are often Internet Service Providers (ISPs) or large enterprises. These LIRs use the allocated address space internally and/or further distribute smaller address blocks to smaller organizations, ISPs, and other end-users.
IPv6 prefix length allocation process
The table below illustrates the typical prefix lengths allocated at each level of the IPv6 addressing hierarchy:
IANA to RIR: Prefix lengths usually range from /12 to /23.
For the latest information on IPv6 allocations from RIRs to LIRs, please refer to the IANA IPv6 Unicast Address Assignments page.
RIR to LIR: RIRs generally allocate /32 prefixes to LIRs. However, upon request, RIRs can also allocate smaller prefix lengths like /28 or /29.
LIR to Customers: LIRs, which are typically large enterprises or ISPs, can further subdivide their allocated address space into /64 subnets for internal use. Or LIRs may allocate /48 or /56 prefixes to smaller customers or ISPs.
Note: While /64 is the most commonly used prefix length for individual subnets, it is not mandatory. The /64 prefix allows the remaining 64 bits as interface identifier to be generated automatically using mechanisms like EUI-64, as discussed in the previous section.
IPv6 GUA subnetting Example
As a large enterprise or ISP, you typically receive at least a /32 IPv6 prefix, which you can assign to subnets and advertise on the Internet.
Suppose you have been allocated the prefix 2003:c1::/32, and you want to use /64 prefixes within your network and for your customers. This gives you 32 bits to organize and distribute your address space.
A common practice is to use portions of these available bits to differentiate locations and services. For example, you could use the bits between /33 and /56 to distinguish between different locations, and the bits from /57 to /64 to differentiate between various services.
It is recommended to start by coding the higher-order bits (closer to the left) to differentiate locations first. After that, the remaining bits can be used to identify services. This method allows for effective summarization and aggregation of address space in each location into a single prefix.
For instance, you could use /33 to /40 to differentiate up to 256 main locations, such as continents, countries, or states, and /41 to /48 to further distinguish up to 256 sub-locations within each main location, like cities, sites, or streets.
The remaining 16 bits, from /49 to /64, could then be used to differentiate between services such as Data Center, Campus, DMZ, Infrastructure, out-of-band management, Internet access, customer networks, and other services.
Interface Identifier configuration
The final 64 bits of the IPv6 address are used to uniquely identify each node within a subnet. For client devices, these addresses are often assigned using EUI-64 (Extended Unique Identifier) or randomly generated values, as discussed previously. However, for servers, routers, and management interfaces, it is recommended to manually configure these addresses to ensure consistency and control.
To better undrestand it , let’s demonstrate in a lab environment using two routers connected through interface ethernet 0/0 and addressing plan as it is displayed in the figure. We will configure 2001:c1:1:2::/64 for the link between router IOU1 and IOU2. 2001:c1:1::/64 for subnet connected to router IOU1 and 2001:c1:2::764 for the sibnet connected to router IOU2.
For the interface identifiers, we will employ two methods:
Manual Configuration: We will manually assign interface identifiers based on the router numbers. For Router IOU1, the identifier will be
.1
(e.g.,2001:c1:1:2::1
), and for Router IOU2, it will be.2
(e.g.,2001:c1:1:2::2
).EUI-64 Mechanism: We will also use the EUI-64 mechanism to automatically generate interface identifiers for IPv6 addresses.
IPv6 global unique address manual configuration
For manual configuration, we will set the interface identifiers manually. After completing the manual configuration, we can verify connectivity by pinging from IOU1 to IOU2 to ensure it is operational.
Additionally, by executing the command “show ipv6 interface
brief”
, you will see not only the Globally Unique Address (GUA) that was configured manually but also the Link-Local Address (LLA) that is automatically generated. The LLA is created using the Link-Local prefix and the EUI-64.
IPv6 global unique address configuration using EUI-64
For EUI-64 configuration, instead of manually setting the interface identifier, we simply add the keyword eui-64
at the end of the IPv6 address configuration command. This automatically generates the interface identifier using the EUI-64 mechanism.
Using the show ipv6 interface brief
command, we can verify that the interface identifier has been automatically generated. Then, we can use the ping
command to confirm connectivity between the devices.
IPv6 address configuration using DHCP and SLAAC will be covered in the upcoming sections.