utilAZ Logo
IPv4 Range Expander

Expand IPv4 CIDR ranges into full IP address lists instantly. Export as TXT/CSV. Free tool for network planning and inventory documentation.

Created by utilAZ TeamFree & Secure

Range Input

0 characters

Supported Formats

CIDR: 192.168.1.0/24
Range: 10.0.0.1-10.0.0.10
Single IP: 172.16.1.50

Expanded IP Addresses

No Ranges Expanded

Enter IPv4 ranges and click "Expand Ranges" to see all IP addresses.

IPv4 Range Expander Tips

  • Performance: Large ranges (>5,000 IPs) show first 1,000 in UI to prevent crashes
  • Export Options: Download TXT or CSV to get complete IP lists safely
  • CIDR Support: /24 = 254 IPs, /16 = 65K IPs, /8 = 16M IPs
  • Multiple Formats: Mix CIDR, ranges, and single IPs in one operation
  • Memory Limit: Maximum 16M IPs per operation for system stability

About IPv4 Range Expander

Network teams regularly need the full list of addresses inside a CIDR block, whether they are building scan target files for security audits, populating DHCP inventories, or documenting subnet allocations for compliance. Doing the expansion by hand is error-prone once you move beyond a /28, and command-line scripts require setup that non-engineers cannot replicate.

This browser-based expander converts any valid IPv4 CIDR notation into the complete enumerated IP list in seconds, with configurable limits for large ranges and one-click export to TXT, CSV, or JSON so results drop straight into your existing workflow.

  • Handles all prefix lengths from /1 to /32 with automatic host count
  • Identifies network address, broadcast address, and usable host range
  • Configurable display limit for ranges exceeding 5,000 IPs
  • Export to plain text, CSV, or JSON for scripts and documentation
  • Detects private vs. public address space automatically

How to Use IPv4 Range Expander

  1. Enter CIDR Range - Input IPv4 network in CIDR notation (e.g., 192.168.1.0/24)
  2. Choose Options - Select whether to include network and broadcast addresses
  3. Set Limits - Specify maximum number of IPs to display (for large ranges)
  4. Expand Range - Click to generate the complete list of IP addresses

Frequently Asked Questions

How to expand cidr range?

Enter the CIDR notation (e.g. 192.168.1.0/24) into the utilAZ expander. It calculates 2^(32 - prefix) addresses, iterates from the network address to the broadcast address, and outputs every IP in the range. Results can be copied or exported as CSV, JSON, or plain text.

How to get all ips from subnet?

Paste the subnet in CIDR form (e.g. 10.0.0.0/28) into the tool. It lists every address from the network address (first) through the broadcast address (last). For a /28 that is 16 IPs total, 14 usable hosts. Toggle the option to include or exclude network and broadcast addresses.

How to generate ip list from cidr?

Input one or more CIDR blocks, click Expand, and the tool generates the full list instantly in your browser. For large ranges it applies a configurable limit to keep the page responsive. Export the list as a text file, CSV, or JSON for use in scripts and network tools.

What is cidr expansion?

CIDR expansion is the process of converting a compact network notation like 192.168.0.0/24 into the full enumerated list of 256 individual IP addresses it represents. It is used for firewall audits, scan target lists, DHCP planning, and IP inventory documentation.

Difference between cidr and ip range?

CIDR notation (e.g. 10.0.0.0/24) defines a block by a base address and prefix length, always aligned to power-of-two boundaries. An IP range (e.g. 10.0.0.5 - 10.0.0.37) can start and end at any address. CIDR blocks are subsets of possible IP ranges.

How to expand ip range for scanning?

Enter the CIDR in the utilAZ expander, export the resulting IP list as plain text (one per line), then feed it to tools like nmap (-iL flag), masscan, or custom scripts. For large ranges, use the tool's limit option to generate manageable batches.

Common Use Cases

  • Network planning and documentation
  • IP address inventory management
  • Firewall rule configuration
  • DHCP scope planning
  • Security scan target lists
  • Network monitoring setup
  • Subnet validation and verification
  • IP allocation planning

Technical Details

CIDR Calculation Rules:

  • Prefix Length: Number after slash indicates network bits (0-32)
  • Host Bits: Remaining bits for host addresses (32 - prefix length)
  • Total IPs: 2^(host bits) addresses in the range
  • Usable IPs: Total IPs minus 2 (network and broadcast)
  • Subnet Mask: Binary representation of network/host boundary

CIDR Reference Table

CIDR Subnet Mask Total IPs Usable IPs
/24255.255.255.0256254
/25255.255.255.128128126
/26255.255.255.1926462
/27255.255.255.2243230
/28255.255.255.2401614

Programming Examples

Python:

import ipaddress

def expand_cidr(cidr):
    network = ipaddress.IPv4Network(cidr, strict=False)
    return [str(ip) for ip in network.hosts()]

def expand_cidr_all(cidr):
    network = ipaddress.IPv4Network(cidr, strict=False)
    return [str(ip) for ip in network]

# Example usage
cidr = "192.168.1.0/24"
host_ips = expand_cidr(cidr)
all_ips = expand_cidr_all(cidr)
            

JavaScript:

function expandCIDR(cidr) {
    const [ip, prefix] = cidr.split('/');
    const prefixNum = parseInt(prefix);
    const hostBits = 32 - prefixNum;
    const numIPs = Math.pow(2, hostBits);
    
    const ipNum = ip.split('.').reduce((acc, octet) => 
        (acc << 8) + parseInt(octet), 0);
    
    const networkIP = ipNum & (~(numIPs - 1));
    const ips = [];
    
    for (let i = 0; i < numIPs; i++) {
        const currentIP = networkIP + i;
        const octets = [
            (currentIP >>> 24) & 255,
            (currentIP >>> 16) & 255,
            (currentIP >>> 8) & 255,
            currentIP & 255
        ];
        ips.push(octets.join('.'));
    }
    return ips;
}