Random IP address generator
Choose IPv4 or IPv6, whether the addresses should be public, private or unrestricted, and how many you need. Public addresses skip private, loopback, link-local, multicast and documentation ranges.
Runs in your browser: nothing you enter is sent anywhere.
How to use it
- Choose IPv4 or IPv6.
- Choose Public only, Private only or Any.
- Set how many addresses you need and copy the list.
What each choice means
| Choice |
IPv4 |
IPv6 |
| Any |
uniformly random over all 2³² values |
random 128 bits |
| Public only |
not in any reserved range listed in the FAQ |
global unicast 2000::/3 without special blocks |
| Private only |
10/8, 172.16/12, 192.168/16 |
unique local fd00::/8 |
Because “any” is uniform, most IPv4 results are public anyway; reserved space is only about 14% of all addresses.
Notes
Random addresses are good for filling test databases, checking input validation and demos. They say nothing about whether a host is online. Do not use them for scanning networks you do not own.
Frequently asked questions
Which IPv4 ranges does "public only" exclude?
0.0.0.0/8, 10.0.0.0/8, 100.64.0.0/10 (carrier-grade NAT), 127.0.0.0/8 (loopback), 169.254.0.0/16 (link-local), 172.16.0.0/12, 192.0.0.0/24, 192.0.2.0/24, 192.88.99.0/24, 192.168.0.0/16, 198.18.0.0/15, 198.51.100.0/24, 203.0.113.0/24, 224.0.0.0/4 (multicast) and 240.0.0.0/4 (reserved, including 255.255.255.255).
What does "private only" give?
For IPv4 the three RFC 1918 blocks: 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16, weighted by size. For IPv6 it gives unique local addresses in fd00::/8, with random bits in the rest.
Are the public addresses real devices?
They are valid, routable-looking addresses picked at random, so some may belong to real servers. Use them for tests, mock data and screenshots, never to scan, probe or contact other people's systems. For documentation use the dedicated ranges 192.0.2.0/24, 198.51.100.0/24, 203.0.113.0/24 and 2001:db8::/32.
How is IPv6 public defined here?
Public IPv6 addresses are drawn from 2000::/3 (global unicast), skipping 2001::/23, 2001:db8::/32, 2002::/16 and the documentation block 3fff::/20. They are written in the short form from RFC 5952: lower case, with the longest run of zero groups shortened to ::.