D
开发工具箱

IP 子网计算详解:CIDR 和子网掩码到底在算什么

网络工具 2026年6月17日 约 1 分钟阅读

为什么需要子网划分?

一个 IP 地址(如 192.168.1.100)本身只标识一台主机,但网络里你得回答一个更关键的问题:这个 IP 和另一个 IP 是不是在同一个网络里? 同网段可以直接二层通信,跨网段就得走路由器。

判断”是否同网段”靠的就是子网划分——把 IP 拆成”网络部分”和”主机部分”,网络部分相同就在同一子网。子网计算器的核心任务就是把这种划分算清楚:给定一个 IP 和掩码,告诉你这个子网的网络地址、广播地址、可用 IP 范围、容量。

IP 地址的二进制本质

IPv4 地址是 32 位,平时用点分十进制写(192.168.1.100),但计算时必须回到二进制:

192.168.1.100 → 11000000 10101000 00000001 01100100

每段 8 位,4 段共 32 位。子网划分就是在 32 位里画一条线:左边是网络位,右边是主机位。这条线的位置由子网掩码决定。

子网掩码

掩码也是 32 位,规则是:网络位全 1,主机位全 0。例如 /24 的掩码是:

11111111 11111111 11111111 00000000  → 255.255.255.0

前 24 位是网络位,后 8 位是主机位。把 IP 和掩码做**按位与(AND)**运算,就得到网络地址:

IP:    11000000 10101000 00000001 01100100  (192.168.1.100)
掩码:  11111111 11111111 11111111 00000000  (255.255.255.0)
AND:   11000000 10101000 00000001 00000000  (192.168.1.0) ← 网络地址

网络地址(本例 192.168.1.0)代表”这个子网本身”,不能分配给主机。

CIDR 表示法:/24 的含义

CIDR(Classless Inter-Domain Routing,无类别域间路由)/n 表示掩码里有 n 个连续的 1:

  • /8 → 255.0.0.0(A 类大小,1677 万主机)
  • /16 → 255.255.0.0(B 类大小,6.5 万主机)
  • /24 → 255.255.255.0(C 类大小,256 主机)
  • /30 → 255.255.255.252(4 个地址,点对点链路常用)
  • /32 → 255.255.255.255(单个主机)

CIDR 之前用的是 A/B/C/D/E 分类制,僵化且浪费(一个 A 类网 1600 万地址,很多机构用不完)。CIDR 打破类别,允许任意长度的掩码,让 IP 分配更灵活——所以现在到处看到 10.0.0.0/8172.16.5.0/24 这种写法。

CIDR 记法 192.168.1.0/24 同时表达了”网络地址”和”掩码长度”两件事,是描述子网的标准方式。

网络地址、广播地址、可用范围

给定一个子网,三个关键地址:

  1. 网络地址:主机位全 0。192.168.1.0/24192.168.1.0(代表子网本身,不可分配)
  2. 广播地址:主机位全 1。192.168.1.0/24192.168.1.255(向整个子网广播,不可分配)
  3. 可用主机范围:去掉首尾两个。192.168.1.1 ~ 192.168.1.254,共 254 个

通用公式:

  • 总地址数 = 2^(主机位数)
  • 可用主机数 = 2^(主机位数) − 2(去掉网络地址和广播地址)
  • /24 → 32−24=8 主机位 → 256 总,254 可用

注意 /31/32 是例外:/31 只有 2 个地址,按 RFC 3021 点对点链路可以两个都用(不需要广播),可用数 = 2;/32 是单机,可用 1。

子网划分:把大网切小

实际工程常需要把一个大网段切成多个小子网。比如把 192.168.1.0/24 切成 4 个 /26 子网:

192.168.1.0/26    → .0   ~ .63   (可用 .1~.62)
192.168.1.64/26   → .64  ~ .127  (可用 .65~.126)
192.168.1.128/26  → .128 ~ .191  (可用 .129~.190)
192.168.1.192/26  → .192 ~ .255  (可用 .193~.254)

每借 1 位网络位,子网数翻倍、每个子网容量减半。这就是 VLSM(可变长子网掩码)的思路——根据每个子网的实际规模分配不同长度的掩码,避免浪费。

规划子网时先列清单:哪个网段要多大(服务器区 /24、管理网 /28、点对点 /30),再从大块里依次切出来,做到不重叠、不浪费。

私有地址段

有三段 IPv4 是私有地址,只在局域网用,不路由到公网:

  • 10.0.0.0/8(10.0.0.0 ~ 10.255.255.255)
  • 172.16.0.0/12(172.16.0.0 ~ 172.31.255.255)
  • 192.168.0.0/16(192.168.0.0 ~ 192.168.255.255)

家里、公司内网用的都是这些。做子网规划时基本都在私有段里玩。还有几个特殊段值得记:127.0.0.0/8(环回)、169.254.0.0/16(链路本地,DHCP 没拿到地址时自动配的)。

常见误区

  1. 把网络地址或广播地址配给主机:会导致网络异常,子网计算器的价值就是帮你避开这两个地址
  2. 以为 /24 一定是 192.168.x:CIDR 和地址段无关,10.0.0.0/24 完全合法,掩码长度决定网络位
  3. 可用数忘记减 2:除了 /31 /32,都要去掉首尾,/24 是 254 不是 256
  4. 掩码不连续:合法掩码必须是连续的 1(255.255.255.252 合法,255.255.255.253 非法),计算器会校验

小结

子网计算的本质是 32 位二进制上”画线”——掩码告诉你网络位和主机位的分界,按位与得网络地址,主机位全 1 得广播地址,中间是可用范围。CIDR 的 /n 就是这条线的位置。理解了这个二进制模型,任何子网规划、VLAN 划分、防火墙规则里的 IP 段都不再是黑盒。要查具体 IP 的归属和用途,配合 [[ip-lookup]]。