๐Ÿฆ IP Animals
๐Ÿงฎ Subnetting & IP Math

Subnet Comparison Tool

Compare two IPv4 CIDR subnets side by side: see whether they overlap, whether one contains the other, and their exact address ranges โ€” all worked out in your browser.

What this tool does

Comparing two subnets is a task network engineers hit constantly: before merging two sites, writing a firewall rule, or peering two cloud networks, you need to know whether their address blocks overlap. Overlapping ranges cause routing ambiguity, duplicate IPs, and broken VPNs. This tool takes two CIDR blocks, converts each to its network and broadcast address as an unsigned 32-bit integer, and then compares those ranges precisely.

For each pair it reports four relationships. Overlap is true when any address belongs to both blocks. Containment tells you whether one block sits entirely inside the other โ€” a /24 contains each of its two /25 halves, and 10.0.0.0/24 contains 10.0.0.128/25. Identical flags two blocks that cover the exact same range. Adjacent means they sit back to back with no gap, like 10.0.0.0/24 and 10.0.1.0/24, which touch but never share an address.

Tip

Two blocks overlap when the start of each is less than or equal to the end of the other. It sounds abstract, but on integers it is a single comparison: A.network <= B.broadcast and B.network <= A.broadcast. Every containment case is just a stricter version of that same test.

Reading the result well means understanding how a prefix maps to a range. If /24 versus /25 is still fuzzy, our guide to what a subnet mask is shows how the prefix length carves the address space, and what an IP address is covers the 32-bit integer view that makes these comparisons exact.

Everything runs client-side, so you can safely compare internal addressing plans without anything leaving your machine. If you find an overlap and want to fix it, the IP in Subnet Checker lets you test individual hosts, and the IPv4 Subnet Calculator gives you the full breakdown of either block.

Frequently asked questions

How do I tell if two subnets overlap?

Convert each subnet to its network and broadcast address as 32-bit integers. Two blocks overlap when the start of each is less than or equal to the end of the other. For example 10.0.0.0/24 (10.0.0.0 to 10.0.0.255) and 10.0.0.128/25 (10.0.0.128 to 10.0.0.255) overlap, because the second sits entirely inside the first.

What does it mean for one subnet to contain another?

A subnet A contains subnet B when B's whole range fits inside A's range โ€” that is, A's network is at or below B's network and A's broadcast is at or above B's broadcast. A /24 contains both of its /25 halves, and a /16 contains 256 different /24s.

Are 10.0.0.0/24 and 10.0.1.0/24 adjacent?

Yes. 10.0.0.0/24 ends at 10.0.0.255 and 10.0.1.0/24 starts at 10.0.1.0, which is exactly one address later, so the two blocks are adjacent but do not overlap. Adjacent equal-sized, correctly aligned blocks can sometimes be aggregated into a single larger prefix.

Is my subnet data sent anywhere?

No. The comparison runs entirely in your browser with JavaScript. Nothing you type is uploaded, logged, or shared, so it is safe to compare internal addressing plans offline.

Want the theory? Read the guides โ†’ ยท Visit the zoo โ†’