IP子网

对比计算

下载

包含本次计算的输入与结果,以及您对比过的所有附加计算。

将 IPv4 地址拆分为网络部分和主机部分

子网掩码将一个 IPv4 地址划分为网络部分和主机部分,从而确定哪些地址属于同一个本地网络。 输入一个 IP 地址及其 CIDR 前缀长度(例如 192.168.1.0/24 中的”/24”),此计算器将求出网络地址、广播地址、子网掩码,以及设备实际可用的地址范围。

计算公式

  • 子网掩码: 前缀长度所对应数量的前导 1 位,后跟 0 位(例如 /24 → 11111111.11111111.11111111.00000000 = 255.255.255.0)。
  • 网络地址: IP 地址与子网掩码按位与运算的结果 — 这会将主机位清零,只保留网络部分。
  • 广播地址: 网络地址中每个主机位都设为 1 — 即该子网中最大的地址。
  • 可用主机数: 子网中除网络地址和广播地址之外的所有地址,因为这两者都被保留 — 普通子网为 232前缀长度22^{32 - \vA{\text{前缀长度}}} - 2

有两种特殊情况适用不同的规则:/31(RFC 3021)用于点对点链路,将两个地址都视为可用主机,因为恰好两台设备之间不需要广播地址。/32 是单主机路由 — 该地址既是网络地址,也是它自己唯一的可用主机。

举例说明

192.168.1.0/24(一个 /24\vA{/24} 前缀):

  1. 子网掩码:255.255.255.0(24 位的 1,然后是 8 位的 0)。
  2. 网络地址:192.168.1.0
  3. 广播地址:192.168.1.255
  4. 可用主机范围:192.168.1.1192.168.1.254232242=282=2542^{32 - \vA{24}} - 2 = 2^8 - 2 = 254 个可用地址。

需要考虑的关键因素

  • 子网划分是将一个大型网络分割成更小、更易管理的网段的方法。 将网络划分为子网可以提升安全性(隔离各网段之间的流量)、提升性能(减少任一网段上的广播流量)并改善组织结构——这是刻意规划子网而不是使用单一扁平大网络的一个常见实际理由。
  • 私有 IP 地址范围(如 192.168.x.x、10.x.x.x 和 172.16-31.x.x)专门保留给内部网络,永远不会在公共互联网上路由。 这些范围是专门为家用路由器和办公室局域网等本地网络预留的——本计算器对私有和公有地址范围的处理方式完全相同,因为子网划分的数学运算本身并不取决于地址属于哪个范围。
  • 较小的前缀数字(如 /16)比较大的前缀数字(如 /28)覆盖的地址范围要大得多。 这种反向关系——为网络部分保留的位数越少,意味着为主机部分保留的位数(因而地址数量)就越多——起初可能有点反直觉,因为数字更小的前缀反而描述的是更大的子网。
  • IPv6 使用的是与 IPv4 根本不同、规模大得多的地址方案。 本计算器专门用于 IPv4(32 位)地址和 CIDR 表示法——IPv6 使用 128 位地址,有自己独立的子网划分惯例,本工具不涵盖这部分内容。

常见误区

  • 计算可用主机数时忘记减去网络地址和广播地址。 一个 /24 总共有 256 个地址,但只有 254 个 可用——第一个和最后一个是保留的,在快速估算容量时很容易忽略这一细节。
  • 假设 /31 和 /32 与其他前缀遵循相同的地址保留规则。 /31 专为点对点链路设计,将其两个地址都 视为可用;/32 是单个地址,既是自己的网络也是自己的主机——对这两者中的任何一个套用标准的”减 2” 规则都会得出错误(或负数)的答案。
  • 混淆哪个前缀数字描述的网络更大。 /16 覆盖的地址远多于 /28,尽管 16 是更小的数字——为网络 部分保留的位数越少,留给主机(因而也就是地址数量)的位数就越多。
  • 将 IPv4 子网划分的数学方法套用到 IPv6 地址上。 IPv6 使用 128 位地址和其自身独立的子网划分 惯例——本计算器的公式仅适用于 32 位的 IPv4 地址。

有用的信息

  • 正在搭建家庭网络,需要估算它应支持的带宽,而不是地址分配吗?所需网速计算器可以回答这个不同的 问题。
  • 在网络或编程工作中需要处理不同进制的数字吗?进制转换器可以在二进制、十进制、十六进制及其他 进制之间转换。
  • 顺便还需要为路由器或网络设备生成一个强健、随机的密码吗?密码生成器可以按照你指定的要求生成 一个。

来源: CIDR(无类别域间路由)与 IPv4 子网划分.

常见问题

CIDR 前缀(如 /24)是什么意思?

斜杠后面的数字表示 32 位 IP 地址中有多少前导位是网络部分 -- /24 表示前 24 位标识网络,剩余的 8 位(256 个地址)留给该网络上的主机使用。

为什么大多数子网都要减去 2 个地址?

子网中最小的地址被保留为网络地址(标识子网本身),最大的地址被保留为广播地址(用于同时向子网上的所有设备发送数据)-- 两者都不能分配给单个设备,这就是为什么可用主机数比地址总数少 2 的原因。

为什么 /31 和 /32 不遵循相同的减 2 规则?

/31(RFC 3021)专门用于恰好连接两台设备的点对点链路,在这种情况下保留一个广播地址会浪费一半的可用地址 -- 因此两个地址都被视为可用主机。/32 恰好标识一个地址(单主机路由),因此该地址既是网络地址,也是它自己唯一的可用主机。

确认您的年龄

为了创建账户,请告诉我们您的出生月份和年份。