IPv6 ULA Generator
Generate random IPv6 Unique Local Addresses (ULA) using the IETF method with SHA1 hashing. Free online tool for network engineers.
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.