CIDR 范围
计算 CIDRIDR 表示法的 IP 范围并检查 IP 是否在范围内
如何使用CIDR 范围
- 1输入 IPv4 或 IPv6 地址及其前缀长度,如 10.0.0.0/24。
- 2读取网络地址、首个/末个可用主机和广播地址(IPv4)。
- 3读取地址总数与该子网覆盖的范围。
CIDR 范围与子网边界
地址数 = 2^(主机位数);主机位数 = 32 − 前缀(IPv4)CIDR(无类别域间路由)用“地址 + 前缀长度”表示网络,前缀长度标出地址中属于网络部分的位数。
/24 留 8 位主机位,共 256 个地址(IPv4 减去网络和广播剩 254 可用)。前缀越大子网越小。
CIDR(无类域间路由)用「IP/前缀长度」表示一段连续地址。计算范围的方法:把 IP 转成 32 位整数,块大小 = 2^(32 − 前缀),起始地址 = IP ÷ 块大小 × 块大小(整除),结束地址 = 起始 + 块大小 − 1。以 192.168.1.100/26 为例:块大小 64,100 ÷ 64 = 1(整除),起始 = 1 × 64 = 64,所以范围是 192.168.1.64 – 192.168.1.127。
CIDR 取代了早期的 A/B/C 类地址划分,让地址分配可以按任意 2 的幂次切分,极大提高了利用率并支持路由聚合。**判断两个 CIDR 块能否聚合的条件**:① 地址连续;② 块大小相同;③ 起始地址能被合并后的块大小整除。例如 192.168.0.0/24 与 192.168.1.0/24 可聚合为 /23,但 192.168.1.0/24 与 192.168.2.0/24 不能(1 不能被 2 整除)。
| CIDR 块 | 起始地址 | 结束地址 | 地址数 |
|---|---|---|---|
| 10.0.0.0/8 | 10.0.0.0 | 10.255.255.255 | 16,777,216 |
| 172.16.0.0/12 | 172.16.0.0 | 172.31.255.255 | 1,048,576 |
| 192.168.0.0/16 | 192.168.0.0 | 192.168.255.255 | 65,536 |
| 192.168.1.0/24 | 192.168.1.0 | 192.168.1.255 | 256 |
| 192.168.1.0/26 | 192.168.1.0 | 192.168.1.63 | 64 |
| 203.0.113.0/24 | 203.0.113.0 | 203.0.113.255 | 256(文档示例段) |
CIDR 块大小与地址范围示例
常见问题
/24 和 /16 有何不同?
/16 借出更少主机位,覆盖 65536 个地址;/24 仅 256 个。
为什么可用主机比总数少 2?
IPv4 保留网络地址和广播地址,其余才可用。
IPv6 用广播吗?
不用;IPv6 无广播,前缀内地址基本都可用。
云厂商的安全组怎么写 CIDR?
常见写法:单个 IP 用 /32(如 203.0.113.5/32 只放行这一个地址);整个网段用 /24 或 /16;全部放行用 0.0.0.0/0(**生产环境对 22、3389、3306 等管理端口开放 0.0.0.0/0 是重大安全风险,应严格限制来源**)。IPv6 同理,单个地址用 /128,全部用 ::/0。配置时遵循最小权限原则,能精确到 /32 就别用 /24。
IPv6 的 CIDR 怎么算?
原理完全一样,只是位数从 32 变成 128。常用块:家庭宽带通常分配 /56 或 /60,单个局域网用 /64(IPv6 的最小子网,因为 SLAAC 需要 64 位主机位),单个地址是 /128。因为地址空间极大,IPv6 规划通常「每个站点给 /48」,包含 65536 个 /64 子网,基本不用精打细算——**这正是 IPv6 设计的初衷之一:不再需要 NAT 和地址节约。**
