CIDR无类别编址
1992年引入了CIDR,它意味着在路由表层次的网络“类”的概念已经被取消,代之以“网络前缀”的概念。Internet中的CIDR(Classless Inter-Domain Routing, 无类别域间路由)的基本思想是取消地址的分类结构,取而代之的是允许以可变长分界的方式分配网络数。它支持路由聚合,可限制Internet主干路由器中必要路由信息的增长。
IP地址中A类已经分配完毕,B类也已经差不多了, 剩下的C类地址已经成为大家瓜分的目标。显然,对于一个国家、地区、组织来说分配到的地址最好是连续的, 那么如何来保证这一点呢? 于是提出了CIDR的概念。CIDR是Classless Inter Domain Routing 的缩写, 意为无类别的域间路由。
“无类型”是指现在的选路决策是基于整个32位IP地址的掩码*作。而不管其IP地址是A类、B类或是C类,都没有什么区别。
它的思想是: 把许多C类地址合起来作B类地址分配。采用这种分配多个IP地址的方式,使其能够将路由表中的许多表项归并(summarization)成更少的数目。
要使用这种归并,必须满足以下三种特性。
为进行选路要对多个IP地址进行归并时,这些IP地址必须具有相同的高位地址比特。
路由表和选路算法必须扩展成根据32位IP地址和32位掩码做出选路决策的算法。
必须扩展选路协议使其除了32位地址外,还要有32位掩码。OSPF和RIP-2都能够携带第4版BGP所提出的32位掩码。
根据RFC1466[Gerich 1993]建议,整个世界被分为四个地区,每个地区分配一段连续的C类地址:
欧洲: 194.0.0.0 ~ 195.255.255.255
北美: 198.0.0.0 ~ 199.255.255.255
中南美: 200.0.0.0 ~ 201.255.255.255
亚太地区: 202.0.0.0 ~ 203.255.255.255
通过这种方式,每个地区拥有约3200万的地址,另有约3200万的地址204.0.0.0 ~ 223.255.255.255保留备用。
这种分配方式的优点是很明显的:
1. 地址的分配是连续的
2. CIDR使路由表的设置更容易
因此,我们在做IP规划的时候,刻意将子网作成2n模式,目的便是为了尽量支持路由归并,以减少路由表规模。此外,2n子网规划模式也是为了保证IP地址划分的规范性。
通过以上几种方法,一方面可以在一段时间内保障IP地址的耗尽,另一方面可以使路由表更加简洁查找更加高效。
3、子网掩码计算的小窍门
首先看个例子:
一个主机的IP地址是202.112.14.37,掩码是255.255.255.240,计算这个主机所在网络的网络地址和广播地址。
常规办法是把这两个都换算成二进制,然后相与,就可得到网络地址。其实:掩码为255.255.255.240,可以知道这个掩码所容纳的 IP 地址有 256 - 240 = 16个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是16的倍数。
而网络地址是子网 IP地址的开始,广播地址是结束,可使用的IP地址在这个范围内,因此比37刚刚小的,又是16的倍数的数只有32,所以得出网络地址为 202.112.14.32。而广播地址就是下一个网络的网络地址减一。而下一个16的倍数是48,因此可以得到广播地址为202.112.14.47。
那么,如果给定一IP地址范围,根据每个网络的主机数量,要进行IP地址规划,可以按照同样原则进行计算。比如一个子网有13台主机,那么对于这个子网就需要22+1+1+1=25个IP地址。(注意加的第一个1是指这个网络连接时所需的网关地址,接着的两个1分别是指网络地址和主机地址。)那么大于或等于25,又是2^n的数目是32,因此子网部分掩码只有256-32=224,最后得到掩码255.255.255.224。
子网掩码(Subnet Mask)和CIDR(Classless Inter-Domain Routing)是在IP地址中用于确定网络和主机部分的参数。虽然这两个概念有些不同,但它们在IP地址的分配和路由方面都扮演着重要的角色。
子网掩码是一个32位二进制数,用于将一个IP地址划分为网络部分和主机部分。它是由连续的1和0组成的,其中1表示网络部分0表示主机部分。例如,一个常见的子网掩码是255.255.255.0,它对应于32位二进制数11111111.111111111111111100000000。在这个子网掩码中,前24位是网络部分后8位是主机部分。
子网掩码的作用是通过与目标IP地址按位与运算,判断目标IP地址是否在同一个网络中。如果与运算的结果等于网络部分的地址,那么目标IP地址与当前主机在同一个网络中。这样,网络中的主机就可以通过路由表进行转发将数据包发送到目标主机。
CIDR是一种用于表示IP地址范围的方法,它将网络地址和子网掩码组合在一起表示为x.x/y的形式。其中,x.x是网络地址,y表示网络地址的长度(即网络部分和主机部分的分界线)。例如,192.16800/24表示网络地址为192.16800,子网掩码为255.2552550,意味着前24位为网络部分后8位为主机部分。
CIDR的出现主要是为了解决IPv4地址空间不足的问题。通过使用不同的子网掩码长度,可以将一个IP地址空间划分为多个子网从而更有效地利用可用的IP地址资源。
CIDR还可以简化路由表的规模,减少网络设备的负担和存储需求。 在CIDR中,子网掩码的长度对应于IP地址中网络部分的位数。长度越长,可用的主机地址就越少但网络的数量也越多。例如,/24表示有256个IP地址可用,/16表示有65536个IP地址可用。
子网掩码和CIDR是在IP地址中用于确定网络和主机部分的参数。子网掩码通过与目标IP地址按位与运算,判断目标IP地址是否在同一个网络中。CIDR则是一种表示IP地址范围的方法,通过指定子网掩码的长度来实现网络划分和地址分配。它们的使用可以帮助网络管理员有效地管理IP地址资源,提高网络的可扩展性和性能。
什么是 CIDR?
无类别域间路由 (CIDR) 是一种 IP 地址分配方法,可提高互联网上的数据路由效率。每台连接到互联网的计算机、服务器和最终用户设备都有一个与之关联的唯一编号,称为 IP 地址。设备通过使用这些 IP 地址相互查找和通信。组织使用 CIDR 在其网络中灵活高效地分配 IP 地址。
有哪些不同的 IP 地址格式?
IP 地址由两部分组成:
网络地址,这是一连串指向网络唯一标识符的数字
主机地址,这是一连串数字,表示网络上的主机或单个设备标识符
在 20 世纪 90 年代初之前,IP 地址都是使用有类寻址系统分配的。地址的总长度是固定的,分配给网络和主机部分的位数也是固定的。
有类地址
一个 IPv4 地址由 32 位组成。用句点分隔的每串数字由 8 位组成,以 0 到 255 的数字形式表示。组织可以购买三类 IPv4 地址。
-
A 类:A 类 IPv4 地址有 8 个网络前缀位。例如,以 44.0.0.1 为例,其中 44 是网络地址,0.0.1 是主机地址。
-
B 类:B 类 IPv4 地址有 16 个网络前缀位。例如,以 128.16.0.2 为例,其中 128.16 是网络地址,0.2 是主机地址。
-
C 类:C 类 IPv4 地址有 24 个网络前缀位。例如,以 192.168.1.100 为例,其中 192.168.1 是网络地址,100 是主机地址。
无类地址
无类或无类别域间路由 (CIDR) 地址使用可变长度子网掩码 (VLSM) 来改变 IP 地址中网络地址位和主机地址位之间的比率。子网掩码是一组标识符,通过将主机地址变为零,从 IP 地址返回网络地址的值。
VLSM 序列允许网络管理员将 IP 地址空间分解为不同大小的子网。每个子网可以有灵活的主机数量和有限的 IP 地址数量。CIDR IP 地址在普通 IP 地址的基础上附加了一个后缀值,说明网络地址前缀位数。
例如,192.0.2.0/24 是一个 IPv4 CIDR 地址,其中前 24 位(即 192.0.2)是网络地址。
CIDR 克服了有类 IP 寻址的哪些局限性?
在无类别域间路由 (CIDR) 出现之前,IP 地址是有类的,并且效率低下。接下来我们来讨论这类地址的一些缺点。
IP 寻址不灵活
在有类寻址系统中,每个类都支持固定数量的设备:
- A 类支持 16777214 台主机
- B 类支持 65534 台主机
- C 类支持 254 台主机
在分配 IP 地址时,有类安排效率低下,并会导致 IP 地址空间的浪费。
例如,拥有 300 台设备的组织无法使用 C 类 IP 地址,该类只允许连接 254 台设备。因此,该组织不得不申请 B 类 IP 地址,该类提供 65534 个唯一的主机地址。但是,只需要连接 300 台设备,这就会剩下 65234 个未使用的 IP 地址空间。
网络设计的局限性
有类 IP 限制了您根据需要合并网络的能力。例如,以下 IP 地址属于有类架构中的不同 C 类网络:
- 192.168.1.0
- 192.168.0.0
作为网络管理员,您无法合并两个网络,因为 C 类子网掩码固定为 255.255.255.0。
CIDR 有哪些优势?
借助无类别域间路由 (CIDR),您的组织可以更灵活地在设备之间分配 IP 地址和路由数据。
减少 IP 地址浪费
CIDR 让您可以灵活地确定 IP 地址上的网络和主机标识符分配。您可以使用 CIDR 为特定网络预置所需数量的 IP 地址并减少浪费。此外,CIDR 减少了路由表条目,并简化了数据包路由。
快速传输数据
CIDR 允许路由器更有效地将 IP 地址组织成多个子网。子网是存在于网络中的较小网络。例如,连接到路由器的所有设备都在同一个子网上,并且具有相同的 IP 地址前缀。
您的组织可以使用 CIDR 创建和整合多个子网。这使数据无需经由不必要的路径即可到达目标地址。
创建虚拟私有云
虚拟私有云 (VPC) 是托管在云中的私有数字空间。它允许您的组织在隔离且安全的环境中配置工作负载。VPC 使用 CIDR IP 地址在连接的设备之间传输数据包。
灵活创建超网
超网是一组具有相似网络前缀的子网。CIDR 允许灵活创建超网,这在传统的掩码架构中是不可能的。例如,您的组织可以使用如下表示法将 IP 地址合并为单个网络数据块:
- 192.168.1 /23
- 192.168.0 /23
此表示法将 255.255.254.0 的子网掩码应用于 IP 地址,该 IP 地址将返回前 23 位作为网络地址。路由器只需要一个路由表条目即可管理子网设备之间的数据包。
CIDR 的工作原理是什么?
无类别域间路由 (CIDR) 允许网络路由器根据指定的子网将数据包路由到相应的设备。路由器不是根据类别对 IP 地址进行分类,而是检索 CIDR 后缀指定的网络和主机地址。
了解 CIDR 数据块和 CIDR 表示法对于了解 CIDR 的工作原理非常重要。
CIDR 块
CIDR 数据块是共享相同网络前缀和位数的 IP 地址的集合。一个大数据块由更多 IP 地址和一个小后缀组成。
互联网号码分配机构 (IANA) 向区域互联网注册管理机构 (RIR) 分配大型 CIDR 数据块。然后,RIR 将较小的数据块分配给本地互联网注册管理机构 (LIR),然后由本地互联网注册管理机构 (LIR) 将其分配给组织。同时,私人用户向其互联网服务提供商申请 CIDR 数据块。
CIDR 表示法
CIDR 表示法代表 IP 地址和表示指定格式的网络标识符位的后缀。例如,您可以将带有 22 位网络标识符的 192.168.1.0 表示为 192.168.1.0/22。
IPv6 中如何使用 CIDR?
IPv6 是一种旨在取代 IPv4 的网络寻址系统。IPv6 使用 128 位的唯一标识符,这使它能够容纳比 IPv4 多 1028 倍的 IP 地址。
IPv6 地址由 8 个以冒号分隔的十六进制值组成。IPv6 具有更大的地址空间,可容纳如今越来越多连接到互联网的设备。
在无类别域间路由 (CIDR) 下,IPv6 地址可以与任意位长度的前缀聚合,这一点与 IPv4 地址类似。例如,2001:0db8:/32 是一个 IPv6 CIDR 地址,以前 32 位或 2001:db8 作为网络地址。
参考资料