IPv4 子网计算器
输入 IPv4 地址或 CIDR(如 192.168.1.10/24),立即算出网络地址、广播地址、子网掩码、反掩码、可用主机范围与数量,并给出 A/B/C 类别与私网判定。/31 按 RFC 3021 点对点口径,/32 视为单主机,全部位运算本地完成。
IPv4 子网计算是配服务器、划分内网、写防火墙规则时的基础动作:给定一个地址与掩码,需要知道这个网段的网络地址、广播地址、可用主机范围与掩码写法。CIDR 表示法(如 192.168.1.0/24)用前缀长度替代传统掩码,比 255.255.255.0 更紧凑,也是云安全组与路由表的通用写法。
两个容易记错的点:可用主机数要减去网络地址与广播地址(/24 是 254 台,不是 256 台),/31 与 /32 属例外 —— 前者按点对点链路口径两个地址都可用,后者表示单个主机;另外私网地址有三段(10.0.0.0/8、172.16.0.0/12、192.168.0.0/16),内网规划时从中选,注意不要与对端网段重叠。
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 输入 IPv4 地址或 CIDR(如 192.168.1.10/24);只填 IP 时按单主机 /32 处理。
- 查看网络地址、广播地址、子网掩码与反掩码(反掩码用于 Cisco ACL 与部分防火墙规则)。
- 确认可用主机范围与数量:写 IP 规划表或配置 DHCP 地址池时用这一栏。
- 看私网判定结果:公网网段暴露前,先确认是否需要 NAT 与访问控制。
计算原理与示例
CIDR 写法
输入支持两种写法:完整 CIDR(192.168.1.10/24)或纯 IP(10.0.0.5,按 /32 处理)。若输入的是主机地址,计算时主机位会按掩码自动归零,得到所在网段的网络地址。
计算口径
可用主机数按标准口径:总地址数减去网络地址与广播地址两个保留地址。/31 点对点网段按 RFC 3021 两个地址均可用;/32 视为单主机。掩码与反掩码按前缀长度左移取反得到。
私网判定
私网判定覆盖 RFC 1918 三段(10/8、172.16/12、192.168/16)以及环回 127/8 与链路本地 169.254/16;其余按公网处理。A/B/C 类按第一字节范围划分。
代码示例
Shell 命令行核对(ipcalc / ip route)
# 安装 ipcalc 后可直接算网段
ipcalc 192.168.1.10/24
# 查看本机地址与掩码(Linux)
ip addr show
# 查看路由表(确认默认网关与网段)
ip route
# macOS 用 ifconfig 看地址与掩码
ifconfig en0 | grep "inet "
Python 用标准库算网段
import ipaddress
net = ipaddress.ip_network("192.168.1.0/24", strict=False)
net.network_address # 192.168.1.0
net.broadcast_address # 192.168.1.255
net.netmask # 255.255.255.0
net.num_addresses # 256
list(net.hosts())[0] # 192.168.1.1(第一个可用地址)
# 私网判定
ipaddress.ip_address("10.0.0.5").is_private # True
常见问题
CIDR 表示法是什么意思?
CIDR(无类别域间路由)用「IP/前缀长度」表示网段,如 192.168.1.0/24 表示前 24 位是网络位、后 8 位是主机位,等价于掩码 255.255.255.0。前缀越短网段越大:/24 有 256 个地址,/16 有 65536 个。
为什么可用主机数要减 2?
每个网段有两个地址不能分配给主机:主机位全 0 的是网络地址(代表整个网段),全 1 的是广播地址(发给它等于发给全网所有主机)。所以 /24 的 256 个地址中可用的是 254 个。
/31 和 /32 为什么特殊?
/31 只有两个地址,按「减 2」就没有可用主机了,但 RFC 3021 规定点对点链路(如路由器互联)两个地址都可以用,省一半地址;/32 表示单个主机地址本身,常用于 loopback 或精确匹配,可用数就是 1。
私网地址段有哪些?
RFC 1918 规定三段:10.0.0.0/8、172.16.0.0/12(172.16~172.31)、192.168.0.0/16,仅限内网使用,公网路由器不转发。另有 127.0.0.0/8 环回(本机自己)与 169.254.0.0/16 链路本地(DHCP 失败时的自分配地址)。
输入主机地址会自动归零吗?
会。输入 192.168.1.10/24 时,工具按掩码把主机位清零得到网络地址 192.168.1.0,再基于它计算广播地址与主机范围,所以不需要先手动换算成网络地址。
A/B/C 类地址怎么划分?
按第一字节:1~126 是 A 类(默认掩码 /8),128~191 是 B 类(/16),192~223 是 C 类(/24);224~239 是 D 类组播,240 起是 E 类保留。类别是历史概念,现在实际组网都用 CIDR 灵活划分,但排查问题时仍会用到。
计算结果准确吗?
计算用 32 位无符号整数的位运算完成(与、或、取反、移位),与 RFC 标准算法一致,引擎测试覆盖了 /8 /12 /24 /29 /31 /32 等典型前缀并与已知结果对拍。输入非法(段超 255、前缀超 32)会明确报错而不是给出错误结果。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。