Report

Help us improve this tool

IPv6 ULA Generator

Generate random IPv6 Unique Local Addresses (ULA) using the IETF method with SHA1 hashing. Free online tool for network engineers.

O M T

What Is an IPv6 ULA Generator?

An IPv6 Unique Local Address (ULA) Generator creates random fd00::/8 addresses according to RFC 4193. Unlike global unicast addresses, ULAs are intended for local communication within a site or organization and are not expected to be routable on the global internet. This makes them ideal for internal networks, VPNs, lab environments, and private infrastructure where you need IPv6 connectivity without requesting a public prefix.

How to Use the IPv6 ULA Generator

Enter a valid MAC address (e.g., 20:37:06:12:34:56). The tool combines the current timestamp with your MAC address, computes a SHA1 hash, and extracts the lower 40 bits to generate a random 48-bit global ID prefix. The result is an IPv6 ULA in fdxx:xxxx:xxxx::/48 format, along with the first and last routable /64 subnets within that prefix.

Why Use ULAs?

Unique Local Addresses offer several advantages over other IPv6 address types for private networking. They are globally unique (the probability of two independently generated ULAs colliding is extremely low), they work without any upstream provider or DHCP infrastructure, and they can be used alongside global addresses (via privacy extensions or multi-homing). This makes ULAs a best practice for internal services, Docker networks, Kubernetes clusters, and site-to-site VPNs.

How ULA Generation Works

RFC 4193 specifies that the 40-bit global ID should be generated pseudo-randomly. The IETF recommends using a SHA1 hash of the current timestamp combined with a site-specific identifier (such as a MAC address) to produce the global ID. The tool takes the last 40 bits (10 hex characters) of this hash and prepends the fd prefix to form a /48 ULA prefix. From this prefix, you can create up to 65536 /64 subnets for your internal network segments.

Work with other address formats using the IPv4 to IPv6 Converter, IPv6 to Binary Converter, or MAC Address Analyzer.

Frequently Asked Questions

Are IPv6 ULAs routable on the internet?

No. By design, ULAs (fc00::/7) are not meant to be routed on the global internet. Routers on the public internet should drop packets with ULA destination addresses. However, they are fully routable within your organization, between sites via VPN, and across private networks.

What is the difference between fd00::/8 and fc00::/8?

RFC 4193 defines fc00::/8 as the ULA address space. The fc00::/8 half is reserved for future definition (where a central authority may assign prefixes), while fd00::/8 is for locally assigned ULAs using the pseudo-random global ID algorithm. All current implementations use fd00::/8.

Can two different networks generate the same ULA?

The probability is extremely low. With a 40-bit random global ID, there are 2^40 (approximately 1 trillion) possible values. The SHA1 hashing of timestamp + MAC address ensures good entropy and distribution. Accidental collisions between independently generated ULAs are effectively impossible.

How many subnets can I create from a single ULA prefix?

A ULA prefix is /48, which gives you 16 bits for subnetting. This means you can create up to 65,536 individual /64 subnets within each ULA prefix. This is more than enough for even the largest enterprise networks.

Can I use this tool for production networks?

Yes. The tool follows the RFC 4193 recommended algorithm for generating ULAs. However, for production deployments, you should generate the ULA once and use it consistently. If you regenerate the ULA (e.g., with a different timestamp), you will get a different prefix, which would break your existing network configuration.