← Back to Home

CIDR Calculator

/cidr/:cidr
Calculate network details from CIDR notation for both IPv4 and IPv6. Returns network address, broadcast address (IPv4), netmask, usable IP range, and total hosts.
Try it now

Parameters

cidr path
CIDR notation (e.g., 192.168.1.0/24 or 2001:db8::/32)

Examples

curl
# IPv4 /24 network
curl https://tcpdata.com/cidr/192.168.1.0/24

# IPv4 /16 network
curl https://tcpdata.com/cidr/10.0.0.0/16

# IPv6 /32 network
curl https://tcpdata.com/cidr/2001:db8::/32

# IPv6 /64 network (typical)
curl https://tcpdata.com/cidr/2001:db8:abcd::/64
JavaScript (fetch)
// IPv4 example
const cidr = '192.168.1.0/24';
const response = await fetch(`https://tcpdata.com/cidr/${cidr}`);
const network = await response.json();
console.log(`Usable IPs: ${network.first_usable} - ${network.last_usable}`);
console.log(`Total hosts: ${network.usable_hosts}`);

// IPv6 example
const cidrV6 = '2001:db8::/32';
const responseV6 = await fetch(`https://tcpdata.com/cidr/${cidrV6}`);
const networkV6 = await responseV6.json();
console.log(`Network: ${networkV6.network_address}`);
console.log(`Type: ${networkV6.address_type}`);
Python (requests)
import requests

# IPv4
cidr = '192.168.1.0/24'
response = requests.get(f'https://tcpdata.com/cidr/{cidr}')
network = response.json()
print(f"Network: {network['network_address']}")
print(f"Usable hosts: {network['usable_hosts']}")

# IPv6
cidr_v6 = '2001:db8::/32'
response_v6 = requests.get(f'https://tcpdata.com/cidr/{cidr_v6}')
network_v6 = response_v6.json()
print(f"Network: {network_v6['network_address']}")
print(f"Type: {network_v6['address_type']}")