What is a ULA vs a public IPv6 address?
IPv6's equivalent of private IPv4 ranges like 192.168.x.x — not routable on the public internet, meant for internal networks/VPNs/labs.
Paste a real MAC (e.g. from MAC Address Generator) to use it in the Global ID instead of a random identifier — legacy RFC 4193 Method 1. Leave blank for the default.
Each prefix uses a fresh RFC 4193 Global ID, computed as SHA-1(timestamp || a random system identifier), truncated to its low-order 40 bits.
Generate to see ULA prefixes here.
Generate RFC 4193 Unique Local Address (ULA) /48 prefixes, with a real Global ID computed via SHA-1 from a timestamp and either a random identifier or your own MAC address, plus a sample of /64 subnets within each prefix.
Prefixes are generated locally in your browser: each Global ID is SHA-1(timestamp concatenated with a 64-bit identifier), truncated to its low-order 40 bits, exactly as RFC 4193 Appendix A specifies. By default that identifier is a random 64 bits — enter a real MAC address to use its modified EUI-64 instead, matching the RFC's original hardware-identifier method. Each prefix also lists a sample of its 65,536 possible /64 subnets, always including the first and last. Nothing is uploaded or stored.
IPv6's equivalent of private IPv4 ranges like 192.168.x.x — not routable on the public internet, meant for internal networks/VPNs/labs.
fd00::/8 is for locally-generated ULAs; fc00::/8 was reserved for a centrally-assigned registry that was never implemented — always use fd.
It follows RFC 4193 Appendix A's actual algorithm either way: SHA-1 of a 64-bit timestamp concatenated with a 64-bit identifier, keeping the low-order 40 bits. By default that identifier is Web Crypto random — a browser has no real hardware identifier to hash, which the RFC itself allows as a substitute. Enter a real MAC address in the optional field to use its modified EUI-64 as the identifier instead, matching the RFC's original hardware-based method.
65,536 — the 16 bits left after the /48 prefix become the Subnet ID, so each ULA prefix splits into exactly 2^16 independent /64 networks. This tool lists a sample of them (always including the first and last) rather than all 65,536 at once.
With 40 random bits, roughly 1 in a trillion — far safer than IPv4 private ranges, which guarantee overlap between any two orgs.
No — link-local auto-configures on every interface and never crosses a router; ULA is manually assigned and routable within your private network.
No, entirely client-side.