$ run IPv4 Calculator
NetCalc by Alexmysterio — Mobile app coming soon · Telegram bot available

Enter runs the calculation · Shift+Enter inserts a new line

user@netcalc ~/calc $

ipv4_calculator

Calculate network, broadcast, mask, hosts, class and binary for any IPv4 address

ip:
mask:
user@netcalc ~/calc $

ipv6_calculator

Calculate network info for IPv6 addresses in CIDR notation

ipv6:
pfx:
user@netcalc ~/calc $

vlsm_calculator

Variable Length Subnet Mask — assigns optimal blocks for each network segment

net:
pfx:
// Subnets required
name:
hosts:
name:
hosts:
name:
hosts:
user@netcalc ~/calc $

usable_ip_range

Shows the exact usable host range for a given network

ip:
mask:
user@netcalc ~/calc $

binary_ip_calc

Convert IP addresses to binary and vice versa, with per-octet visualization

dec:
bin:
user@netcalc ~/network $

cidr_converter

Convert between CIDR, decimal mask and wildcard. Includes full /1–/32 reference table.

in:
📋 CIDR Reference Table
CIDRSubnet MaskWildcardHosts/24 subnetsBlock
user@netcalc ~/network $

wildcard_mask_calc

Calculate the wildcard (inverse) mask for Cisco ACLs, OSPF and firewall rules

mask:
user@netcalc ~/network $

supernet_calculator

Find the minimum supernet containing all specified networks (route summarization)

nets:
user@netcalc ~/network $

subnet_splitter

Split a network into equal subnets by specifying a new prefix

net:
mask:
new:
user@netcalc ~/network $

range_to_cidr

Convert an IP range (start–end) to the minimum set of CIDR blocks

start:
end:
user@netcalc ~/network $

ip_to_integer

Convert IPv4/IPv6 addresses to integer and vice versa

ip:
int:
user@netcalc ~/network $

ipv6_normalize

Expand and compress IPv6 addresses — normalize any valid format

ipv6:
user@netcalc ~/network $

hex_ip_converter

Convert between hexadecimal and IP address — useful for Windows route tables and Cisco logs

ip:
0x:
user@netcalc ~/network $

vlan_calculator

802.1Q VLAN info: tag encoding, PCP, DEI, VID, range and compatibility

vlan:
pcp:
dei:
user@netcalc ~/dns $

reverse_dns_generator

Generate the PTR in-addr.arpa zone for an IPv4 network

net:
pfx:
dom:
user@netcalc ~/dns $

ipv6_ptr_generator

Generate the PTR ip6.arpa record for an IPv6 address

ipv6:
host:
user@netcalc ~/dns $

ip_geolocation

Locate a public IP or resolve a domain and geolocate its public address

Domains are resolved through DNS first; geolocation is based on the resulting public IP.
geo:
user@netcalc ~/dns $

ip_address_planner

Interactive IP address space planner — click cells to edit, export to CSV

📋 IP Address Plan
#NameNetworkMask/CIDRGatewayVLANLocationNotes
user@netcalc ~/legal $

Privacy

Data stored in your browser

Theme, language, promotion dismissal and calculation history are stored in localStorage on this device.

Calculations

Calculations are sent through this site's same-origin Worker proxy to the private calculation service.

Performance metrics

LCP, CLS and INP may be stored as aggregate performance measurements by tool and language. Calculation inputs and persistent user identifiers are not included.

GeoIP

Only GeoIP lookups are processed by an external provider. The requested IP address is sent for that lookup.

Issue reports via Telegram

A report link opens the public Telegram bot and includes only the current page slug in the bot start parameter. Calculator inputs and report text are not sent by this website. Text you choose to send inside Telegram is handled by Telegram and the bot.

Cookies and advertising

Advertising is controlled by the production configuration. When Google AdSense is enabled, consent is handled through a certified CMP before personalized advertising is used where required.

Delete local data

Use the button below to clear calculation history. To remove every local preference, clear this site's data in your browser settings.

This page provides operational information; it is not a legal-compliance certification.

Wildcard masks for OSPF and ACLs

Understand inverse masks, matching semantics and practical wildcard examples for routing and access-control work.

By 2026-09-21≈ 6 min7 sections
/27 subnet mask255.255.255.22411111111.11111111.11111111.11100000 Wildcard0.0.0.3100000000.00000000.00000000.00011111 192.168.10.64 → 192.168.10.950 = must match · 1 = may vary
Subnet mask, wildcard and resulting match range
01

A wildcard is an inverse matching mask

Where a subnet mask uses ones for network bits, a classic wildcard uses zeros for bits that must match and ones for bits that may vary. For a /24 mask 255.255.255.0, the corresponding wildcard is 0.0.0.255.

02

OSPF and ACLs use the same bits for different jobs

The arithmetic is the same, but operational meaning depends on the command. In an ACL, the wildcard controls which source or destination addresses match a rule. In routing configuration it can define which interface addresses are selected by a statement.

03

Non-octet examples matter

Prefixes such as /27 or /21 are where manual mistakes become common. Convert the subnet mask first, invert every octet, then test the first and last matching addresses rather than trusting visual intuition.

04

Rule order still matters

A correct wildcard does not guarantee a correct policy. ACL processing order, implicit denies and platform-specific behavior must still be reviewed around the generated match.

05

Use binary when decimal stops being intuitive

For a /27, the final mask octet is 224 or 11100000 in binary; the wildcard is 31 or 00011111. Reading the bits makes it obvious which address bits must match and which may vary, and it scales better than memorizing decimal wildcard tables.

06

Know when non-contiguous wildcards are possible

Some ACL engines allow non-contiguous wildcard bits, creating patterns that are not equivalent to a normal CIDR prefix. That can be powerful but also hard to audit. Routing network statements and vendor syntax may impose different restrictions, so do not assume every wildcard accepted in one feature is valid in another.

07

Validate the match set, not just the arithmetic

Before deploying a rule, test a known matching address, the first address outside the intended range and any sensitive adjacent subnet. The operational question is whether the resulting set is correct, not simply whether 255 minus the mask produced the expected decimal.

EX

Worked example

  1. Take 192.168.10.64/27, whose subnet mask is 255.255.255.224.
  2. Invert each octet to obtain 0.0.0.31.
  3. The match covers 192.168.10.64 through 192.168.10.95 when the base address is aligned correctly.
  4. Test .63 and .96 as negative controls before using the expression in an ACL or routing statement.
✓

Operational checklist

  • Convert the CIDR to a subnet mask first.
  • Invert all four octets, not only the changing one.
  • Check first, last and one out-of-range address.
  • Review rule order and implicit policy separately from the wildcard.

Standards and references