IP范围与CIDR互转工具

输入起始IP和结束IP,即可将该范围自动拆分为覆盖全部地址且数量最少的CIDR块。也可以反过来输入CIDR表示法(例如192.168.1.0/24),计算出该块的首尾IP地址和地址总数,适合用于防火墙和ACL规则的编写。

如果只需查询单个IP和子网掩码,请使用 子网计算工具 ;如果需要按前缀长度查看对照表,请参考 CIDR速查表 。

在地址区间与 CIDR 记法之间互转

输入起始与结束地址,本工具便把该区间切成恰好覆盖它的最少几个 CIDR 块。反过来亦可:给出 `192.168.1.0/24` 之类的记法,便得出首尾地址与地址总数。写防火墙规则与访问控制表时,它最能派上用场。

**常令人意外的是:任意一个区间,未必写得成单独一个 CIDR。** 一个 CIDR 块受两条约束:**其大小须为 2 的幂,其首地址须落在该大小的边界之上。** 譬如自 `192.168.1.5` 至 `192.168.1.10` 的六个地址,两条皆不合,故成不了一块,**只得切作数块,如一个 `/32`、一个 `/31` 与一个 `/30`。** 本工具以最少的块数完成这道切分。若不愿让规则条数徒增,**把区间的两端重新设计到边界上,通常才是更利落的做法。**

使用方法

  1. 输入起始与结束地址 您会得到该区间所切成的 CIDR 块清单。
  2. 看一看切出了几块 **切出许多块的区间,正是两端未落在边界上的那种。**
  3. 或由 CIDR 反推 输入 `/24` 之类的记法,便得出首尾地址与地址总数。
  4. 誊进您的规则 可直接用于防火墙或访问控制表。

用好本工具的小技巧

  • 适合把防火墙或ACL中「192.168.1.1 到 192.168.1.254」这类范围写法转换成路由器配置真正接受的CIDR表示法。
  • 除非范围的边界恰好对齐到2的幂次方,否则IP范围转CIDR的结果通常会拆分成多个块。如果块数过多,可以考虑调整范围的起止点,让ACL规则更简洁。
  • 在CIDR转IP范围时,即使输入的IP不是块的起始地址,工具也会自动按其所属块计算出对应的网络地址和广播地址。
  • 如果只想查单个IP和掩码,可以使用子网计算工具;若需要按前缀长度查看完整对照表,CIDR速查表是本工具很好的配套。

这些场景会用到

书写防火墙规则

**它把「只许这一段」化作一串 CIDR 块。**

整理访问控制表

可对着边界斟酌:数条规则能否并作一条。

核实所分得的地址段

服务商递来的 CIDR 究竟含多少个地址,一数便知。

重新审视子网的设计

**单是把两端对齐到边界,所需的规则条数便可能大减。**

IP 编址的术语

CIDR
以一个地址加一个前缀长度来表示一块的记法,如 `192.168.1.0/24`。
前缀长度
斜杠之后的那个数。**它每增一,块中所含的地址便减半。**
网络地址
一块的首地址。**它若不落在边界上,这一块便立不住。**
广播地址
一块的末地址。在 IPv4 子网中,通常不分配给主机。
子网掩码
形如 `255.255.255.0` 的记法,与 CIDR 的前缀长度所言者同。
2 的幂的约束
**CIDR 块的大小只限于 2 的幂。** 任意区间写不成单独一个,缘由正在于此。

常见问题

CIDR块必须表示数量为2的幂次方(1、2、4、8……)且地址边界对齐的连续地址。如果指定的范围没有恰好对应单一CIDR块,就需要用若干个边界对齐、大小较小的块组合起来,才能不多不少地覆盖整个范围。

/24 表示主机位为8位的块,覆盖192.168.1.0到192.168.1.255共256个地址。按照惯例,第一个地址192.168.1.0保留作网络地址,最后一个192.168.1.255保留作广播地址。

大多数路由器和防火墙的ACL语法只接受CIDR表示法(或子网掩码加通配符掩码)来描述网络范围,无法直接表达任意起止点的地址范围。因此需要像本工具这样先把范围转换成CIDR块,再应用到配置中。

IP范围只是用「起始IP到结束IP」来描述一段连续地址的表达方式。而CIDR块是一种特殊的IP范围,其边界必须对齐到由前缀长度决定的2的幂次方位置。每个CIDR块都是IP范围,但并非每个IP范围都是CIDR块。
工具君

闲话 ― IP范围转CIDR算法背后的原理

把IP范围拆分成CIDR块的算法,是计算机科学中「贪心算法」的一个通俗易懂的实例。做法很简单:每次从当前位置出发,同时考虑「当前地址对齐到多少位的2的幂次方边界」和「剩余范围还有多大」这两个限制条件,选出满足两者的最大块,跳过这个块继续处理剩余部分,直到到达终点为止。这种贪心策略在理论上可以证明总能得到数量最少的块。

在实际工作中,工程师经常会遇到只接受CIDR表示法、而不支持任意IP范围的系统,例如云平台的安全组或本地路由器的ACL。把云服务商分配的地址段,或者内部台账里一直记录为「10.1.0.10 到 10.1.0.50」这样的范围,转换成路由器可用的CIDR块,是一个绕不开的步骤。手工进行位运算既繁琐又容易出错,这正是转换工具能派上用场的地方。

反过来,从CIDR表示法推算出IP范围的需求,通常出现在需要以「起始到结束」这种直观方式确认已分配地址块范围的场景。例如服务商分配给你「203.0.113.0/28」这个块,如果能立即确认可用地址范围是203.0.113.0到203.0.113.15,就能准确地设置防火墙许可名单或DHCP分配范围,避免出错。