#无类域间路由(快速复习版)

判断两个无类(CIDR)地址是否属于同一个子网

🎯 问题本质:

判断两个 IP 地址是否属于同一个子网,其实就是 对比它们的"网络地址"是否相同


🔍 原理步骤(通用方法)

我们按步骤来判断:

✅ 步骤 1:将两个 IP 地址转换为二进制

✅ 步骤 2:根据它们的 CIDR 前缀提取"网络位"

✅ 步骤 3:对比网络位是否一致

一致:同一子网

不一致:不同子网


🧠 举个例子

假设你有两个无类地址:

复制代码
IP1: 192.168.1.65/26
IP2: 192.168.1.70/26

我们来判断它们是不是属于同一个子网。


✅ 第一步:看前缀 /26 → 表示前 26 位是网络位

  • IP 地址是 32 位的
  • /26 意味着:前 26 位用于网络,后 6 位用于主机

✅ 第二步:转换为二进制

IP1: 192.168.1.65
复制代码
192     = 11000000  
168     = 10101000  
1       = 00000001  
65      = 01000001

合并:11000000.10101000.00000001.01000001
IP2: 192.168.1.70
复制代码
70 = 01000110

→ 合并:11000000.10101000.00000001.01000110

✅ 第三步:取前 26 位作为"网络位"

我们看前 26 位是否一样:

复制代码
IP1: 11000000.10101000.00000001.01**000001**
IP2: 11000000.10101000.00000001.01**000110**
                ↑ 前 26 位完全一致

所以:这两个 IP 属于 同一个子网(192.168.1.64/26)


🔢 快速简化方法(不转二进制)

我们不想每次都手动写二进制,可以用掩码与运算法快速判断:


🔧 使用 AND 运算方法(更通用)

公式:

复制代码
网络地址 = IP地址 & 子网掩码

对两个 IP 都执行与运算后,比较结果是否相同即可。

🛠 工具人方式(用十进制做):

子网掩码 /26 = 255.255.255.192

即:

复制代码
11111111.11111111.11111111.11000000

→ 最后一个字节是 192,表示步长是 64:

子网范围 广播地址
192.168.1.0/26 192.168.1.63
192.168.1.64/26 ✅ 192.168.1.127
192.168.1.128/26 192.168.1.191

所以:

  • 192.168.1.65 属于 192.168.1.64/26
  • 192.168.1.70 也属于 192.168.1.64/26

结论 ✅:它们在同一子网


✨ 一句话总结法

两个 IP + 相同前缀下,只要 IP 地址处在同一个"子网范围",就是同一子网。






附加

第一项: 如何划分出主机数大于 254 的子网 ,这是理解 CIDR 无类划分的 进阶应用


🧠 一、CIDR 的主机数计算规律

主机数取决于"主机位"的数量(32位 IP 减去网络位数):

✨ 计算公式:

复制代码
主机数 = 2^(32 - 前缀位数) - 2

(减2是因为要去掉 网络地址 和 广播地址)


🚀 二、主机数 > 254 的 CIDR 范围

我们来看看每个前缀下的主机数:

CIDR 前缀 主机位数 可用主机数 子网掩码
/24 8 位 254 台 255.255.255.0
/23 9 位 510 台 255.255.254.0
/22 10 位 1022 台 255.255.252.0
/21 11 位 2046 台 255.255.248.0

✅ 所以:

如果你想支持「大于 254 台主机」,你就得使用 前缀更小于 /24 的 CIDR 子网 ,比如 /23, /22, /21 等。


🧪 举个例子

你想划分一个子网,至少容纳 1000 台主机:

  1. /22:2¹⁰ = 1024 → 可用主机数 = 1024 - 2 = 1022 ✔️
  2. 所以你可以使用:192.168.0.0/22

该子网范围是:

复制代码
起始地址:192.168.0.0  
结束地址:192.168.3.255  
可用主机地址范围:192.168.0.1 ~ 192.168.3.254

它覆盖了 192.168.0.0 ~ 192.168.3.255,整整 4 个 /24 网段!


🔧 如何选取更大的主机数子网(思维方式)

  1. 你有多少主机?👉 算出最小能满足的 2^n ≥ 主机数 + 2(包含广播和网络地址)
  2. 计算主机位数 n 👉 得出 CIDR 前缀 = 32 - n
  3. 子网掩码 = 把前缀转换成十进制形式
  4. 划出地址范围,用来配置 DHCP、静态分配等

💡 一个反常识点(容易忽略)

很多人以为 /24 是最大的子网,其实不是!CIDR 是可以让网络变大也可以变小的。

比如:

  • /16 子网可容纳 65534 台主机(如 192.168.0.0/16)
  • /8 子网最多可容纳 16777214 台主机(比如 10.0.0.0/8)

🎓 总结一张表

目标主机数量 选择的 CIDR 前缀 子网掩码 可用主机数
≤ 254 /24 255.255.255.0 254
≤ 510 /23 255.255.254.0 510
≤ 1022 /22 255.255.252.0 1022
≤ 2046 /21 255.255.248.0 2046
≤ 4094 /20 255.255.240.0 4094
≤ 65534 /16 255.255.0.0 65534

相关推荐
乐维_lwops5 分钟前
金融企业如何借力运维监控强化合规性建设?
运维·金融·运维监控
搬码临时工11 分钟前
如何通过外网访问内网?对比5个简单的局域网让互联网连接方案
服务器·网络·智能路由器·内网穿透·外网访问
m0_5937581020 分钟前
系统重装之后,通过ssh无法登录
linux·运维·服务器
Micro麦可乐25 分钟前
最新Spring Security实战教程(十四)OAuth2.0精讲 - 四种授权模式与资源服务器搭建
java·服务器·spring boot·spring·spring security·oauth2·oauth2授权
银河麒麟操作系统27 分钟前
【银河麒麟高级服务器操作系统】服务器外挂存储ioerror分析及处理分享
linux·运维·服务器
某不知名網友33 分钟前
Linux_进程退出与进程等待
linux·运维·服务器
wayuncn1 小时前
服务器托管的常见问题
运维·服务器·服务器租用·服务器托管·idc托管
鸡哥爱技术1 小时前
网工实验——OSPF配置
网络·智能路由器
ALex_zry1 小时前
告别手动输入密码:基于SSHPass的自动化文件传输实践告别手动输入密码:基于SSHPass的自动化文件传输实践
运维·自动化
@CLoudbays_Martin111 小时前
CF后台如何设置TCP 和 UDP 端口?
大数据·运维·服务器·网络·数据库