问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

IPv4 CIDR 无类别域间路由 | CIDR 的 IP 地址划分

创作时间:
作者:
@小白创作中心

IPv4 CIDR 无类别域间路由 | CIDR 的 IP 地址划分

引用
CSDN
1.
https://blog.csdn.net/weixin_43095238/article/details/112572107

IPv4 CIDR(无类别域间路由)是一种用于分配IP地址和路由IPv4数据包的方法,它通过将子网掩码的位数作为前缀添加到IP地址后面,解决了传统分类编址方案中存在的扩展性差和地址浪费问题。本文将详细介绍CIDR的概念、网络划分方法,并通过实例和练习题帮助读者更好地理解和掌握这一重要技术。

一. 什么是无类别域间路由(CIDR)

无类别域间路由(Classless Inter-Domain Routing、CIDR)是一个用于给用户分配IP地址以及在互联网上有效地路由IP数据包的对IP地址进行归类的方法。引用自百度百科

CIDR 的出现是为了替代颇具诟病的分类编址。在 CIDR 被采用之前, IP 地址的网络部分被限制为长度为 8、16 或 24 比特,这是一种被称为分类编址(classful addressing)的编址方案[1]。也就是将 IP 地址划分为 A、B、C、D、E 类的编址方案。

随着互联网的快速发展,分类编址方案出现了一些问题,例如扩展性差,存在地址浪费。为解决这些问题,且考虑到从 IPv4 到 IPv6 的过度。互联网工程工作小组在 1993 年发布了一新系列的标准—— RFC 1518 和 RFC 1519 ——以定义新的分配 IP 地址块和路由 IPv4 数据包的方法,也就是 无类别域间路由 CIDR 。

二. CIDR 的网络划分

在分类编址方案中,除了以固定大小位数的网络号将网络划分为 ABCDE 类,还有一个重要的划分网络手段就是通过子网掩码对 ABCDE 类 IP 再进行划分。而 CIDR 方案就是从该角度入手。接下来从一个案例出发,理解分类编址如何过渡到 CIDR 编址。

编址方案
IP 地址
子网表示
完整表示
分类编址
202.119.100.202
255.255.255.240
202.119.100.202 255.255.255.240
CIDR 编址
/28
202.119.100.202/28

上表展示了对于一个 IP 地址的两种编址表示的区别。使用分类编址时,需要原 IP 地址与子网掩码配套使用,而 CIDR 编址则直接在 IP 地址后跟上了一个 “/24” 的前缀,该前缀表示的也正是子网掩码。CIDR 编址所做的,其实就是将子网掩码的位数作为前缀,添加在原 IP 地址的后面。(我也觉得很奇怪为什么这玩意叫前缀,不应该叫后缀吗)

子网掩码
255.255.255.240
化为二进制表示法时,前 28 位都为1(转换方式可参考文章),因此在 CIDR 编址时前缀的数字是 28,最终表示形式为
192.168.1.102/28

我们继续关注 CIDR 编址与分类编址的区别。在
192.168.1.102/28
中 28 直接表示子网掩码为 28 位,则该 IP 的划分情况如下。

CIDR 编址
分类编址
十进制点分表示
202.119.100.202/28
二进制表示
1100 0000 1010 1000 0000 0001 01100110

提示

  • 该颜色的 IP 位, 表示该位是 IP 的网络号对应的位
  • 该颜色的 IP 位,表示该位是 IP 的子网号对应的位
  • 该颜色的 IP 位,表示该位是 IP 的主机号对应的位

在分类编址中黄色的网络号是由其分类决定的,例如上述例子中的 IP 地址属于 C 类 IP,而 C 类 IP 的网络号是 24 位的。而绿色的是子网号,由子网掩码划分得出。最后蓝色的是子网号。而在 CIDR 编址时,已经不考虑分类,"/28" 的前缀表示子网掩码,直接将 IP 的前 28 位标识为网络号,剩余的位为主机号。这样 CIDR 就实现了对地址的划分。

经过上述描述,大致对 CIDR 的编址逻辑进行了掌握。接下来强调几点 CIDR 编址的知识点。

1. IP 相同,子网掩码不同的 IP 地址不是同一个地址

202.119.100.202/28

202.119.100.202/24
IP 相同,但是子网掩码不同,因此这两个地址不是同一个地址。

202.119.100.202/28
是在
202.119.100.192/28
网络下的主机地址。

202.119.100.202/24
是在
202.119.100.0/24
下的主机地址。

202.119.100.192/28

202.119.100.0/24
也被可以被称为CIDR块,相当于一个网络,因为该地址除了其标识的前 28 位网络号外的主机号全为 0,代表整个网络。

十进制
二进制
网络 IP
202.119.100.192/28
主机 IP
202.119.100.202/28
网络 IP
202.119.100.0/24
主机 IP
202.119.100.202/24

2. 使用 CIDR 可以对网络进行多层划分

我们查看以下例子。在该例中划分了三层网络(白色的网络,绿色的网络,蓝色网络),其呈现层次关系。其中黄色的是主机 IP。不难发现,随着网络层次的划分,子网掩码的值越来越大,白色的网络层次为 16,绿色的网络层次为 20,蓝色的网络层次为24。子网掩码递增的大小决定了一个高层网络能够划分多少下一层网络。

例如,从白色网络层次的 16,到绿色网络层次的 20,子网掩码递增了 4,这意味着在白色的网络层次地址中有 4 位用来划分子网络。那我们可以计算出,在白色网络层次中可以划分2 4 2^424个子网络(该计算与分类编址中使用子网掩码的计算相同,但是在 CIDR 编码中不用考虑子网号全为 0 或 1 的情况,因此不需要减 2)。

三. CIDR 练习题

1. 网络
120.26.0.0/18
下可以划分多少个 IP 配置给主机

可知网络号 18 位,则主机号有32 − 18 = 14 32 -18 = 1432−18=14位。则可划分2 14 2^{14}214个 IP。

其中要主机号全为 0 与 1 的 IP 不能配置给主机。因此可划分2 14 − 2 2^{14}-2214−2个 IP 配置给主机。

提示
与上文中的网络层次划分不同,这里之所以要减 2 是因为考虑的是分配给主机而不是分配给子网络。

2. 某主机的 IP 为
120.26.57.7/23
,则其属于的网络 IP 为多少

若要求
120.26.57.7/23
所处的网络,只需要将其主机号全置为 0,得到的 IP 即为网络 IP。因此将
120.26.57.7
转化为二进制有:

十进制
二进制
主机 IP
120.26.57.7/23
网络 IP
120.26.56.0/23

如上表,其所属网络 IP 为
120.26.56.0/23

3. 若要在网络
120.26.0.0/18
下再划分一层有 6 个子网络的网络,且要保证每个子网络能够容量尽量多的主机,则这 6 个子网络的 IP 分别为多少

若要再划分 6 个子网络,则下一层子网络的子网掩码要加大 n,以满足2 n > 6 ( n 为 整 数 ) 2^n>6(n为整数)2n>6(n为整数)。显然n ≥ 3 n\geq3n≥3满足条件。

当n = 3 n = 3n=3时可保证划分的子网络可容纳的主机最多,则在
120.26.0.0/18
下可划分:

十进制
二进制
网络 IP
120.26.0.0/18
子网络 1
120.26.0.0/21
子网络 2
120.26.8.0/21
子网络 3
120.26.16.0/21
子网络 4
120.26.24.0/21
子网络 5
120.26.32.0/21
子网络 6
120.26.40.0/21
子网络 7
120.26.48.0/21
子网络 8
120.26.56.0/21

则在这些子网络 IP 地址中选出 6 个即为答案。

提示
本次文章的习题讲解相比之前的文章讲解的没那么细,若有问题可以评论,会在一天内回复解答。

参考文献

[1] JAmes F.Kurose, Keith W. Ross.计算机网络自顶向下方法[M].机械工业出版社:北京,2014.9:229.

其他相关文章

文章名称
更新时间
IPv4 十进制点分表示法
2020-10-29
IPv4 地址分类
2020-11-8
IPv4 地址与子网掩码
2020-11-16
IPv4 CIDR 无类别域间路由
2021-1-14
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号