[ TIDY / /Σ ]
IPv4 CIDR aggregator
Reduce an IPv4 prefix list to minimal CIDRs with exactly the same coverage.
02 / Your result
Your result will appear here.
Start with your own input or try an example.
What it does
Simplify a list of IPv4 networks without accidentally including addresses in the gaps between them. This aggregator removes duplicate and contained prefixes, combines adjacent coverage, and returns the smallest exact CIDR list in numeric address order. Review any input normalized from a host address to its network base before using the result.
Useful when
- Remove redundant or contained prefixes from a network inventory.
- Compare how a collection of adjacent address blocks can be summarized exactly.
- Prepare a concise address-set list for configuration review or documentation.
How to use it
- Paste up to 512 IPv4 CIDRs, one per line, using prefixes from /0 through /32.
- Aggregate the ranges and review the unique-address count and any normalization notices.
- Copy or download the exact CIDR list, then check configuration-specific policies separately.
A few useful details
Will aggregation include addresses that were not in my input?
No. The algorithm merges overlapping or adjacent inclusive ranges, then decomposes each union into aligned power-of-two CIDRs. It never crosses an uncovered gap. Adjacent blocks only become one larger CIDR when their combined coverage exactly fills that aligned block.
How are host bits, /31, and /32 handled?
An input such as 192.168.1.42/24 denotes 192.168.1.0/24 and produces a visible normalization notice. A /31 contributes two addresses and a /32 contributes one; this tool treats them as address sets and does not assign network, broadcast, or endpoint roles. /0 covers all 4,294,967,296 IPv4 addresses.
Can I replace route or firewall rules with the result directly?
The output preserves address coverage only. It does not preserve separate next hops, rule actions, ordering, or routing policy, so those details need their own review. Inputs are limited to 512 CIDRs and 32,768 characters. Processing happens in your browser without network requests.