前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >什么是CIDR技术? 它是如何解决路由缩放问题的

什么是CIDR技术? 它是如何解决路由缩放问题的

作者头像
神的孩子都在歌唱
发布2025-03-05 19:58:08
发布2025-03-05 19:58:08
8700
代码可运行
举报
运行总次数:0
代码可运行

什么是CIDR技术? 它是如何解决路由缩放问题的

前言

点个免费的赞和关注,有错误的地方请指出,看个人主页有惊喜。 作者:神的孩子都在歌唱

大家好呀,我是 神唱 ,随着互联网规模的快速扩张,路由表的膨胀问题日益严重。想象一下,成千上万条路由记录堆积在路由器中,效率会如何?幸好,无类别域间路由(CIDR,Classless Inter-Domain Routing)技术为我们带来了新的思路。

一. 什么是 CIDR?

CIDR 是一种灵活的 IP 地址分配技术,用于给用户分配 IP地址 以及在 互联网 上有效地 路由IP数据包 的对IP地址进行归类的方法。

CIDR 地址的格式是这样的:

代码语言:javascript
代码运行次数:0
复制
192.168.1.0/24
  • 192.168.1.0 是网络地址。
  • /24 表示网络前缀长度,也就是前 24 位用来标识网络,剩余的位数标识主机。

为什么需要 CIDR?

  1. 1. 解决地址浪费:传统的分类方式不够灵活,容易导致地址块分配不匹配实际需求。
  2. 2. 简化路由表:通过路由聚合,CIDR 将多个地址块整合成一个更大的块,减少路由条目。

二. CIDR 是如何工作的?

1. 高效地址分配

CIDR 的灵活性允许根据实际需求分配地址块。例如,一个小型企业只需 32 个 IP 地址(/27),无需浪费更多资源。

举例:一个网络分配192.168.1.0/27,前 27 位用于标识网络,剩下的 5 位标识主机。该地址块包含 32 个 IP 地址(30 个可用 IP,网络地址和广播地址各占 1 个)。

2. 路由聚合(Route Aggregation)

CIDR 的路由聚合功能大幅减少路由表规模。多个小网络可以被合并成一个大块,从而简化记录。

举例:假设 ISP 分配了以下地址块:

  • • 192.168.0.0/24
  • • 192.168.1.0/24
  • • 192.168.2.0/24
  • • 192.168.3.0/24

CIDR 可以将其聚合为:

代码语言:javascript
代码运行次数:0
复制
192.168.0.0/22

这样,路由器只需要记录一条路由,而不是四条。

3. 精确满足需求

CIDR 通过灵活的前缀划分,避免了传统分类方法中地址分配过多或过少的问题。例如,小型公司需要 16 个 IP 地址时,可以直接分配/28,而不需要浪费一个完整的/24地址块。

三. CIDR 的计算详解

1. 子网掩码计算

CIDR 前缀与子网掩码密切相关。

例子

代码语言:javascript
代码运行次数:0
复制
192.168.1.0/24

前缀 /24 对应的子网掩码是:

代码语言:javascript
代码运行次数:0
复制
255.255.255.0

二进制形式为:

代码语言:javascript
代码运行次数:0
复制
11111111.11111111.11111111.00000000

子网掩码中的 1 表示网络部分,0 表示主机部分。

2. 地址范围计算

每个 CIDR 块的网络范围由其前缀长度决定。

例子

代码语言:javascript
代码运行次数:0
复制
192.168.1.0/24
  • • 网络部分:前 24 位。
  • • 主机部分:后 8 位。

将地址转换为二进制:

代码语言:javascript
代码运行次数:0
复制
192.168.1.0 -> 11000000.10101000.00000001.00000000

前 24 位锁定后,主机部分可以变化的范围是:

代码语言:javascript
代码运行次数:0
复制
00000000 到 11111111

因此,该网络的地址范围是:

代码语言:javascript
代码运行次数:0
复制
192.168.1.0 - 192.168.1.255

维基百科有以下案例

神的孩子都在歌唱

如果我们指定一个CIDR块为10.10.1.32/27,则根据CIDR比特位比较,10.10.1.44是属于该块,但10.10.1.90则不是。

3. 可用 IP 地址计算

CIDR 的前缀长度决定了主机地址部分的位数,从而确定一个地址块中有多少可用 IP。

公式

代码语言:javascript
代码运行次数:0
复制
可用 IP 地址数 = 2^(32 - 前缀长度) - 2

减去的两个地址分别是网络地址和广播地址。

例子

/24 前缀:

代码语言:javascript
代码运行次数:0
复制
可用地址数 = 2^(32 - 24) - 2 = 256 - 2 = 254

/28 前缀:

代码语言:javascript
代码运行次数:0
复制
可用地址数 = 2^(32 - 28) - 2 = 16 - 2 = 14

四. CIDR 如何解决路由缩放问题?

CIDR 的核心价值在于:

  1. 1. 减少路由条目:通过聚合多个小网络,减少路由表记录。
  2. 2. 提高路由效率:条目越少,路由器匹配速度越快。
  3. 3. 灵活地址分配:满足多样化需求,避免地址浪费。

示例场景: 一个企业网络需要:

  • • 50 个 IP -> 分配 192.168.1.0/26
  • • 30 个 IP -> 分配 192.168.1.64/27
  • • 14 个 IP -> 分配 192.168.1.96/28

通过 CIDR,192.168.1.0/24 可以满足需求,无需浪费多余地址。

五. 总结

CIDR 技术是互联网路由历史上的一次飞跃。它通过灵活的地址划分和路由聚合,让我们得以构建高效而稳定的网络。无论是简化路由表还是优化地址分配,CIDR 都展现了其强大的能力。

神的孩子都在歌唱

作者:神的孩子都在歌唱 本人博客:https://blog.csdn.net/weixin_46654114 转载说明:务必注明来源,附带本人博客连接

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 神的孩子都在歌唱 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是CIDR技术? 它是如何解决路由缩放问题的
    • 一. 什么是 CIDR?
    • 二. CIDR 是如何工作的?
      • 1. 高效地址分配
      • 2. 路由聚合(Route Aggregation)
      • 3. 精确满足需求
    • 三. CIDR 的计算详解
      • 1. 子网掩码计算
      • 2. 地址范围计算
      • 3. 可用 IP 地址计算
    • 四. CIDR 如何解决路由缩放问题?
    • 五. 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档