IPv6 ULA Generator
Generate a random RFC 4193 unique local IPv6 prefix (fd00::/8) with a 40-bit global ID, plus a table of /64 subnets ready to assign.
Your unique local prefix
Press the generate button to create a random RFC 4193 unique local address prefix.
What is the IPv6 ULA Generator?
A unique local address prefix is IPv6's answer to RFC 1918 private space: routable inside your own network, never routed on the public internet, and — because the 40-bit global ID is random — extremely unlikely to clash when two networks are merged.
- Produces a compliant RFC 4193 fd00::/8 prefix with the L bit set
- Choice of a CSPRNG global ID or the RFC's SHA-1 of EUI-64 plus NTP timestamp
- Shows the hash input and full SHA-1 digest so the derivation is auditable
- Lists up to 256 /64 subnets with their first and last addresses
- Copy the /48 prefix or the whole subnet table in one click
- Uses Web Crypto locally — the generated prefix is never transmitted
How to use the IPv6 ULA Generator
- 1
Pick a generation method: random 40 bits, or the RFC 4193 SHA-1 recipe.
- 2
If you chose the RFC method, enter a MAC address from the machine to seed the hash.
- 3
Press the generate button to produce a fresh /48 prefix.
- 4
Set how many /64 subnets to list, then copy the prefix or the subnet table.
About the IPv6 ULA Generator
A unique local address prefix is IPv6's answer to RFC 1918 private space: routable inside your own network, never routed on the public internet, and — because the 40-bit global ID is random — extremely unlikely to clash when two networks are merged. This generator produces one for you as an fd00::/8 prefix with a /48 global ID.
Two methods are offered. The default takes 40 bits straight from your browser's cryptographic random number generator. The second follows the RFC 4193 recipe literally: it hashes a 64-bit NTP-format timestamp concatenated with a modified EUI-64 identifier using SHA-1 and keeps the least significant 40 bits, showing you the hash input and digest so you can check the working.
The output includes a table of /64 subnet prefixes and their address ranges so you can assign one per site or per VLAN. Generation happens 100% locally in your browser using the Web Crypto API — the prefix never leaves your device.
Frequently asked questions
What is a unique local address in IPv6?
It is an address from fc00::/7 intended for use inside a single site or organisation, defined in RFC 4193. It is the closest IPv6 equivalent of 10.0.0.0/8 or 192.168.0.0/16 — reachable internally, filtered at the internet edge, and never allocated by a registry.
Why does every ULA prefix start with fd?
The block is fc00::/7, and the eighth bit is the L flag. RFC 4193 only defines the case where L is 1, which forces the second nibble to d — so every properly generated ULA prefix today begins fd. The fc00::/8 half is reserved for a future centrally assigned scheme.
Should I pick my own ULA prefix like fd00::/48?
No. The whole point of the 40-bit global ID is that it is random, so two networks that merge almost certainly will not collide. Hand-picked prefixes like fd00:: or fd12:3456:789a:: get chosen by thousands of people and defeat that guarantee.
How many subnets does a ULA /48 give me?
65,536 /64 subnets, since the subnet ID field is 16 bits wide. Each /64 then holds 2⁶⁴ addresses. That is deliberately generous — IPv6 planning is about having plenty of subnets rather than conserving host addresses.
Can unique local addresses reach the internet?
Not directly. ULA prefixes must be filtered at your border and are not routed globally. If internal hosts need internet access you either give them a global address alongside the ULA, or translate — though NAT66 is generally discouraged in favour of dual addressing.
Related tools
IPv6 Subnet Calculator
Calculate IPv6 subnets online: network prefix, first and last address, total addresses and expanded/compressed forms for any /0–/128 prefix. 100% in-browser.
IPv6 Address Compressor
Shorten any IPv6 address to its canonical RFC 5952 form, see the fully expanded version beside it, and compress a whole list at once.
EUI-64 Calculator
Convert a 48-bit MAC address to its modified EUI-64 IPv6 interface identifier and link-local address, or work backwards from an IPv6 address to the MAC.
Private IP Address Checker
Check if an IPv4 or IPv6 address is private, loopback, link-local, CGNAT or otherwise special — with the matching RFC and public-routability verdict.
IPv6 Expander & Compressor
Expand a compressed IPv6 address to its full 8-group form, or compress it to the RFC 5952 canonical short form — instantly and 100% in your browser.