DNSfinder.net
RFC 4193 ULA

Local IPv6 Address Generator

Unique local addresses are IPv6's counterpart to the private IPv4 ranges: addresses for internal use that are never routed on the internet. RFC 4193 says each site should pick its own /48 under fd00::/8 using 40 random bits, so that two private networks rarely clash when they are later joined. This generator creates such a prefix in your browser and shows the first subnets and a sample host address carved from it.

Loading Local IPv6 Address Generator...

Querying live edge resolvers and network infrastructure...

How to use the Local IPv6 Address Generator

  1. Open the page: a random prefix such as fd12:3456:789a::/48 is generated at once and shown in large type.
  2. Click Copy beside the prefix and record it in your network documentation, since a reload produces a different one.
  3. Use the Example subnets & addresses card to copy a /64 for each network segment, starting with Subnet 0.
  4. Click Generate another when you want a second prefix, for instance one per site or per lab.

What to look for

The /48 and its Global ID

The large line is your site prefix: fd, then ten random hex digits, then ::/48. The Global ID line beneath repeats those ten digits unbroken. The prefix drops leading zeros inside each group, so Global ID d60f000041 appears as fdd6:f00:41::/48. Both carry the same 40 random bits.

Example subnets to copy

The second card lists Subnet 0, Subnet 1, Subnet 2, the last subnet (ffff) and one example host, each with a copy button. They show where the 16-bit subnet number sits: the fourth group of the address. The example host, ending in :1::1, is labelled as the router on subnet 1.

A new prefix on every load

Nothing is stored. Each page load and each click on Generate another draws five fresh random bytes, and the previous prefix is gone. Copy the one you intend to use into your documentation straight away, because the tool cannot show it to you again.

Guide

How a unique local prefix is built and how to use it

The parts of a unique local address

RFC 4193 reserves fc00::/7 for unique local addresses. The eighth bit, called L, is 1 for prefixes assigned locally, which is why every such address in use today starts with fd. The fc half is reserved for an assignment method that was never defined. After those eight bits come a 40-bit Global ID, a 16-bit subnet ID and the usual 64-bit interface identifier.

The generator fills the Global ID with five bytes from crypto.getRandomValues, the browser's cryptographic random source. The bytes 12 34 56 78 9a give fd12:3456:789a::/48. The RFC also sketches a method that hashes a timestamp together with a hardware identifier, but its requirement is only that the ID be pseudo-random, and a cryptographic generator meets it.

Reading the two result cards

The top card shows the prefix, its ten-digit Global ID and a reminder that a /48 contains 65,536 /64 subnets. That figure comes from the 16-bit subnet ID, the fourth group of the address, which runs from 0 to ffff. The last 64 bits belong to the individual host.

The second card writes out a few subnets so the pattern is visible. For fd12:3456:789a::/48, Subnet 0 is fd12:3456:789a::/64, Subnet 1 is fd12:3456:789a:1::/64 and the last subnet is fd12:3456:789a:ffff::/64. The example host is fd12:3456:789a:1::1. To see the first and last address of any of these, paste it into IPv6 range to CIDR.

Why the Global ID has to be random

Private IPv4 networks overlap all the time because so many of them use 192.168.1.0/24 or 10.0.0.0/8. The trouble shows on the day two networks are connected: a company merger, a site-to-site VPN, a laptop reaching a lab from home. Overlapping ranges cannot be routed between, so one side has to renumber or hide behind address translation.

A random 40-bit ID makes that unlikely by arithmetic. There are 1,099,511,627,776 possible prefixes, so two independently generated ones match with a probability of about one in 1.1 trillion. Choosing fd00::/48, or a memorable pattern such as fd00:dead:beef::/48, throws that protection away, because other people choose the same patterns.

Putting the prefix to work

Give each network segment or VLAN its own /64 from the prefix. Stateless address autoconfiguration expects a 64-bit interface identifier, so use a /64 even on a small segment. Once the router advertises the subnet, hosts form their own addresses. Give routers and servers fixed, short identifiers such as ::1 so they are easy to recognise in logs.

Unique local addresses work alongside global ones. A host can hold a global address for internet traffic and a unique local address for internal services, and the local one stays the same when your provider changes the global prefix. Publish local addresses in internal DNS only: RFC 4193 advises against putting them in the public DNS, where no outside client could reach them anyway.

  • Home or lab: one /64 for the main LAN, another for a guest or IoT segment.
  • Site-to-site VPN: a separate /48 per site, so routes never overlap.
  • Containers and virtual machines: a /64 per host or per bridge network.

What unique local addresses will not do

They do not reach the internet. Providers do not route fc00::/7 and site border routers are expected to filter it, so a host with only a unique local address needs a global address as well, or prefix translation at the edge, to talk to the outside. The addresses are private in the routing sense only. Segments that should not talk to each other still need a firewall between them.

Uniqueness is statistical, not registered. Nobody records who uses which prefix, and this tool keeps no list of what it has generated. There is also an address selection quirk: under the default policy table in RFC 6724, a dual-stack host prefers IPv4 over a unique local destination, so a name with both an A record and a unique local AAAA record is usually reached over IPv4.

Knowledge Base & FAQ

Local IPv6 Address Generator FAQs

Common questions about the local ipv6 address generator.

It is an address from fc00::/7, defined in RFC 4193, meant for use inside a site and never routed on the public internet. In practice every such address starts with fd. It does the job that 10.0.0.0/8 and 192.168.0.0/16 do in IPv4, except that each site is supposed to pick its own random /48.