当前位置: 首页 > news >正文

【计算机网络】CIDR无分类编址知识学习

文章目录

  • 1、CIDR引入的背景
  • 2、CIDR是什么?
    • 2.1 CIDR的2个特点
    • 2.2 CIDR斜线记法注意区分细节
    • 2.3 路由聚合or构成超网
    • 2.4 CIDR里面的掩码(不是叫子网掩码)
    • 2.5 CIDR几种等效的记法形式
    • 2.6 对于”网络前缀“不是8的整数倍时候,要多加注意
  • 3、CIDR实际应用举例

1、CIDR引入的背景

通过划分子网的方式一定程度上缓解了Internet网发展中遇到的困难,但是实际上还有3个问题需要迫切解决:
1、B类地址在1992年已分配近一半,眼看就要分完了。
2、Internet网主干网上的路由表中的项目数急剧增长。
3、整个IPv4的地址空间最终将要全部耗尽。
为了解决问题1和问题2,CIDR无分类域间路由选择应运而生。
问题3的解决由IPv6的推进来搞定。

2、CIDR是什么?

CIDR,英文全称:Classless Inter-Domain Routing,读音“sider“,它是一种无分类编址的方法。

2.1 CIDR的2个特点

1、消除了传统的A类、B类和C类地址以及划分子网的概念,做到可以最大化使用IPv4的地址空间。CIDR使用各种长度的”网络前缀“来代替分类地址中的网络号和子网号,而不是像分类地址中只能使用1字节、2字节和3字节长的网络号。CIDR这种不使用”子网“的概念而使用”网络前缀“,使得IP地址从三级编址(使用子网掩码)又回到了两级编址,但这已是无分类的两级编址。记法格式:
IP地址 ::={<网络前缀>,<主机号>}
更加通用的记法是使用”斜线记法“,它又称CIDR记法。格式:xxx.xxx.xxx.xxx/xxx
斜线后面的呢日on个是”网络前缀“所占的比特数,对应三级编址中子网掩码中比特1的个数。
举个例子:
128.14.46.34/20
表示在这个32比特位的IP地址中,前20比特位表示”网络前缀“,而后面(32-20)=12比特位为”主机号“或者叫host-id。有时需要将点分十进制的IP地址写成二进制表示的地址才能看清楚”网络前缀“和”主机号“。上面的例子对应:
前20bit是100000000 00001110 0010
后面12bit是1110 00100010
2、CIDR将”网络前缀“都相同的连续的IP地址组成”CIDR地址块“。
一个CIDR地址块是由地址块的起始地址和地址块中地址数来定义的。CIDR地址块也可用斜线记法。
举个例子:
128.14.32.0/20
表示的地址块共有2^12个地址,因为斜线后面的数字20是代表“网络前缀”所占的bit位数。因此主机号的位数是32-20=12bit。且该地址块的起始地址是128.14.32.0。在不需要指出地址块的起始地址时候,可将这样的地址块简称“/20 地址块"。同时该举例的地址块的最小地址和最大地址是:

表示方法最小地址块最大地址块
点分十进制表示128.14.32.0128.14.47.255
二进制表示1000000 00001110 00100000 0000000010000000 00001110 00101111 11111111

*其中全0(对应128.14.32.0)和全1(128.14.47.255)者2个地址一般不使用,一般使用者2个地址之间范围内的地址。

2.2 CIDR斜线记法注意区分细节

当看到CIDR斜线记法的时候,需要注意区分一下,需要根据上下文确定清楚它是指1个单个的IP地址还是地址块。

2.3 路由聚合or构成超网

由于一个CIDR地址块可以表示很多地址,因此在路由表中就利用CIDR地址块来查找目的网络。这种地址的聚合常称为路由聚合(route aggregation),它使得路由表中的一个项目可以表示很多原来传统分类地址的路由。路由聚合也称为构成超网(supernetting)。
路由聚合有利于减少路由器之间的路由选择信息的交换,从而提高了整个因特网的性能。

2.4 CIDR里面的掩码(不是叫子网掩码)

CIDR已经不是子网的说法了,但是也使用”掩码“的说法。对于/20地址块,它的掩码是:
11111111 11111111 11110000 00000000 (前面20个连续的1) 斜线后面的数字就是掩码1的个数,也是”网络前缀“。

2.5 CIDR几种等效的记法形式

10.0.0.0/10等效的几种表示记法掩码:255.192.0.0
点分十进制10.0.0.0/10
低位连续0省略10/10
x代替00001010 00xxxxxx xxxxxxxx xxxxxxxx
星号*00001010 00*

2.6 对于”网络前缀“不是8的整数倍时候,要多加注意

例如:
CIDR前缀长度是13,/13 对应的点分十进制是255.248.0.0 包含的地址数是512K,包括的分类网络数 8个B类或2048个C类。
其中K表示的是2^10,这个包括的地址数是含全0和全1的主机号。
正因为有的CIDR地址块会包含多个C类地址,因而有了”构成超网“的名词来源。

3、CIDR实际应用举例

前面说了,使用CIDR的有点就是可以更加有效分配IPv4的地址空间,减少浪费,因此现在的因特网服务提供者ISP,都比较喜欢使用CIDR方式。非CIDR方式的地址分配,只能/8 /16或者/24为单位来分配,而CIDR方式的可以根据实际具体情况来分配,比如:/18 /22 /23 /24 /25 等方式。举例子:
从下面的表格例子中可以看出来,”网络前缀“数字越小,其地址块包括的地址数量越多。
因此,通过CIDR的“网路前缀”可以灵活控制每个单位的IP地址分配,而不用因为固化位数浪费IP地址。

单位地址块二进制表示地址数
ISP206.0.64.0/1811001110.0000000.01*16384
大学206.0.68.0/2211001110.000000.010001*1024
一系206.0.68.0/2311001110.0000000.0100010*512
二系206.0.70.0/2411001110.000000.01000110.*256
三系206.0.71.0/2511001110.0000000.010001111.0*128
四系206.0.71.128/2511001110.00000000.01000111.1*128

此外:由于使用了CIDR这种方法,在查找路由表时候可能会匹配多个结果,这个时候会中匹配结果中选择具有最长“网络前缀”的路由,称之为:“最长前缀匹配”longest-prefix matching。越长匹配的会越具体,越准确。因此也称为“最佳匹配”和“最长匹配”。
还有个“使用二叉树线索查找路由表”,用于解决、减少路由表的查找时间问题。有空还需要学习。

总的来说,通过学习可以看出来CIDR在解决IPv4地址资源枯竭问题帮助很大,的确很灵活。


http://www.mrgr.cn/news/670.html

相关文章:

  • HarmonyOS开发案例:创建全局自定义组件复用池-BuilderNode
  • 好知网教育教务管理平台的设计与实现(论文+源码)_kaic
  • 怎样才算精通 Excel?
  • vue3 withDefaults 如何使用
  • uniapp 中 web-view 向 App 传递消息
  • idea 修改背景图片教程
  • 24小时监控识别潜在的非安全生产隐患的明厨亮灶开源了。
  • 数据结构——二叉树
  • 【每日力扣中医养生】力扣2608. 图中的最短环
  • Pytorch常用训练套路框架(CPU)
  • 工厂模式与策略模式在Java中的应用案例分析
  • CSS的重绘和重排是什么?
  • golang嵌入式文件系统之 embed.FS
  • WebDeveloper:1靶机渗透测试
  • 【区块链+商贸零售】神椰——积分互通互兑平台 | FISCO BCOS应用案例
  • Keepalived + LVS实现高可用
  • 蓝盆花:神秘而迷人的自然之美
  • 气膜温室大棚:现代农业高效生产的创新之选—轻空间
  • k8s 对外服务之 Ingress
  • BigDecimal高精度运算