Skip to main content

Random IP Generator

Generates random IPv4 and IPv6 addresses in batches of 1 to 1,000, with IPv4 written as dotted decimal, a 32-bit integer, hexadecimal, or binary. Excluding reserved space skips the private, shared, loopback, link-local, documentation, benchmarking, and future-use IPv4 blocks and draws IPv6 from 2000::/3, the global unicast range.

Runs entirely in your browser

This tool sends nothing over the network. Everything you enter is processed on your device and never reaches our servers.

Networking
Testing
Development
Loading the tool
Reference

Documentation

A random IP generator produces syntactically valid addresses for test data. An IPv4 address is a 32-bit number, so each one is four random octets from 0 to 255. An IPv6 address is a 128-bit number, written here as eight groups of four hexadecimal digits with no zero compression, so every IPv6 line has the same 39-character length. A mixed batch decides IPv4 or IPv6 independently for each address with even odds, and a batch holds 1 to 1,000 addresses.

The reserved-range filter is on by default. For IPv4 it removes 0.0.0.0/8, 10.0.0.0/8, 100.64.0.0/10 (shared carrier-grade NAT space), 127.0.0.0/8, 169.254.0.0/16, 172.16.0.0/12, 192.0.0.0/24, the 192.0.2.0/24, 198.51.100.0/24, and 203.0.113.0/24 documentation blocks, 192.168.0.0/16, 198.18.0.0/15, and 240.0.0.0/4, which also covers 255.255.255.255. For IPv6 the same filter draws the first 16-bit group from 2000 to 3fff, the 2000::/3 block that IANA allocates as global unicast, and then skips 2001::/23, the 2001:db8::/32 and 3fff::/20 documentation prefixes, and 2002::/16 (6to4). The multicast filter removes 224.0.0.0/4 and, when reserved space is allowed, ff00::/8. An IPv4 prefix fixes one to four leading octets and randomizes the rest. It applies to IPv4 only, and a prefix with an octet above 255 is rejected rather than ignored.

A draw that lands in an excluded range is discarded and drawn again, up to 20 attempts per requested address, so the filtered output stays uniform over the allowed space instead of piling up at its edges. A prefix that sits entirely inside an excluded range discards every draw, and the result says so instead of returning an empty list without explanation. The four IPv4 output formats are the same 32 bits written four ways: dotted decimal octets; one unsigned integer equal to the first octet x 16,777,216 + the second x 65,536 + the third x 256 + the fourth; eight hexadecimal digits with a 0x prefix; or four 8-bit binary groups.

The numbers come from the browser's Math.random, which suits test data but is not a cryptographic source. Excluding reserved space does not make an address unused. A random public IPv4 address can belong to a real network, so generated lists belong in parsers, databases, and simulations, not in scan targets. The separator only changes how the list is joined: newline, comma, space, or tab.

Under the prefix 8.8., a draw of 29 and 3 for the last two octets gives 8.8.29.3. Its integer form is 8 x 16,777,216 + 8 x 65,536 + 29 x 256 + 3 = 134,217,728 + 524,288 + 7,424 + 3 = 134,749,443. Its hexadecimal form is 0x08081d03, since 29 is 1d in base 16, and its binary form is 00001000.00001000.00011101.00000011.

Random IP addresses serve testing, development, and educational purposes across networking and software engineering. Generating address data on demand removes the need to compose test inputs by hand or to copy production network data that may carry privacy concerns.

  • Network Security Testing: Populate intrusion detection rule tests with randomized source and destination addresses to verify that filtering logic handles diverse address patterns. Mixed IPv4 and IPv6 batches check that dual-stack firewall configurations block and permit traffic as intended.
  • Software Development: Seed unit and integration tests with IP address inputs to exercise parsing, formatting, and validation functions across edge cases. The decimal, hexadecimal, and binary formats test conversion routines without computing each representation by hand.
  • Database Population: Fill development and staging tables with randomized IP address records for load testing, query optimization, and schema validation. Excluding private ranges makes analytics dashboards and reports look like public-facing traffic.
  • Network Education: Demonstrate the structure and scale of the IPv4 and IPv6 address spaces by generating and examining batches. Dotted decimal and binary forms side by side illustrate subnetting concepts and octet boundaries.
  • API and Service Mocking: Supply random addresses as mock client identifiers in API test frameworks to simulate requests from many distinct clients. A prefix keeps addresses inside one subnet to test subnet-based routing and rate limiting.
  • Scoped Test Lists: Fixing the leading octets of an approved range as a prefix keeps generated lists inside the boundary an engagement or lab environment authorizes, and the multicast and reserved filters keep them on unicast space.
  • Configuration Validation: Verify that load balancers, reverse proxies, and CDN configurations accept varied address formats by feeding generated addresses into configuration test suites and health check scripts.
Inputs, outputs, and what the Random IP Generator computes

What the Random IP Generator asks for and what it returns, as a plain list. Defaults, units, and ranges are the ones the form loads with.

Inputs

  • IP Version · default: IPv4
  • Quantity (numeric input) · default: 10 · range: 1 to 1000
  • Separator · default: Newline
  • Exclude private and reserved ranges · default: on
  • Exclude multicast addresses · default: off
  • IPv4 Output Format · default: Dotted Decimal
  • IPv4 Prefix Filter (optional, IPv4 only) (text input)
  • Generated Addresses

Controls

Generate · Reset · Copy to Clipboard

Example

Under the prefix 8.8., a draw of 29 and 3 for the last two octets gives 8.8.29.3.