实用工具

CIDR 子网计算器

算出任意 IPv4 或 IPv6 网段的网络地址、广播地址、主机范围和掩码,还能判断包含关系、划分子网。

浏览器本地运行网络排查654
免费

输入

0 B

结果

结果会显示在这里。

规划 VPC、写防火墙规则或读云安全组时,你需要把 10.24.8.77/21 换成具体的东西:它是哪个网络、能放多少台主机、地址范围从哪儿到哪儿。输入一个网段,这个计算器给出网络地址和广播地址、第一个和最后一个可用主机、子网掩码和反掩码,以及它属于哪类地址——私有、环回、运营商级 NAT 等。IPv6 也一样,一个 /64 有约 1800 京个地址,照样精确计数。

它是怎么工作的

  • 可以输入 192.168.1.10/24、10.1.2.3 255.255.0.0 这样的点分掩码、2001:db8::/48 这样的 IPv6 网段,或单个地址(按 /32 或 /128 处理)。
  • 如果地址的主机位不为零,网段会规整为它的网络地址,结果中的 hostBitsSet 会注明。
  • 「检查」一栏判断某个地址或更小的网段是否在其中;「划分」一栏把网段按更长的前缀拆分,并列出前 256 个子网。
  • 运算用 BigInt 完成,地址解析和类型判断由 ipaddr.js 负责,所以大的 IPv6 网段也是精确值,而不是近似值。

你的数据去了哪里

哪也没去。本工具完全在你的浏览器里运行:你粘贴的文本由页面处理,不会传输到任何服务器,也不会写进任何日志。

本工具免费且无需登录,运行结果只存在于你当前的页面里,不会被保存到任何地方。

它要花多少

本工具完全免费,不需要登录,也不消耗积分。

常见问题

为什么可用主机数比地址数少两个?
IPv4 子网里第一个地址代表网络本身,最后一个是广播地址,两者都不能分给主机:/24 有 256 个地址、254 个可用主机。例外是 /31,RFC 3021 允许它用于点对点链路,两个地址都可用;以及 /32,只有一台主机。云服务商通常还会多保留几个——AWS 每个子网保留五个。
为什么 IPv6 没有广播地址?
IPv6 根本没有广播,改用组播。所以 IPv6 网段里的每个地址都计入,最后一个地址就是最后一台主机。
反掩码(通配符掩码)有什么用?
它就是把子网掩码按位取反——/24 对应 0.0.0.255——Cisco 的访问控制列表和 OSPF 配置用它,而不是用子网掩码。
怎么把 /16 划分成多个 /24?
输入这个 /16,在「划分」一栏填 24。结果会列出每个 /24 的首尾地址并给出总数——这里是 256 个。划分规模很大时,比如把 /8 划成 /30,总数仍然精确,但只列出前 256 个子网。

背后的开源项目

本工具运行在 whitequark/ipaddr.js 之上,以 MIT 许可发布。如果你需要在自己的程序里实现同样的能力,直接用这个库。

whitequark/ipaddr.js

也常被称作

  • cidr 计算器
  • 子网计算器
  • 子网掩码计算
  • ipv6 子网计算
  • cidr 转 ip 范围
  • 子网划分