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

计算机网络第四章(4)——网络层《无分类编址CIDR、路由聚合》

一、为什么有这玩意?这是啥?

简单说人话就是:

        IPV4哪怕划分了子网,依旧要不够用了,全世界人口越来越多.......;IVP6有还没有发明好;所以【CIDR】就是介于原始IPV4 ~ IVP6之间过渡的一个技术,能够让IPV4互联网接着增长

二、怎么表示

说白了,就是跟【子网掩码】差不多

只不过不再分什么A、B、C、D、E类网址,统一用一个N位【网络前缀】固定死前N位后面的32-N是可变的【主机位】

表示形式也基本一模一样.......

区别

  • 首先就是,不用看【第一个字节】来区分是哪一类网络;
  • 第二就是,【网络前缀】可以变化!!!!!
    • 前面我们学传统IPV4的【网络前缀】包括【网络号 + 子网号】,一旦定下N位,子网掩码【位数】就只能N位,不可以再变
    • 但是这里,当这 N 位【网络前缀】起初【不包含子网】的时候不给动,当往剩下的主机号里再去拆分k位作为【子网号】 后【网络前缀】又可变成 N + k 位     

例题

三、定长子网划分、变长子网划分

1、定长子网

        就是我们前面学的【子网划分】:在N位主机号固定【借k位】作为【子网号】,每个子网的子网号一样,内可划分的【主机数量一样:2^(N-k)

(实际可分配的是:2^(N-k) - 2不包括主机号全0、全1网址)

那么就不够灵活,导致IP地址利用率低

(比如:A公司研发部需要1千万个电脑、市场部只用1个电脑,但是各个部门的子网主机号都是一样多......)

例题

2、变长子网

1)概念

字面意思:各个子网的子网号可以不一样长,谁需要的主机多,子网号就占的少;反之,则子网号占得多一点

2)如何分配变长子网

结合王道的一个例子解释

大致的规律就是:

  • 1、初始ip地址【网络前缀】不包含【子网号】,剩下的位全都是【主机号位】
  • 2、然后从这些【主机号位】开始 ”借位“ 划分【子网】:
    • 每次划分借【1位】作为子网号,那么可以选【0】或【1】作为当前这个子网的子网号最后一位,越往下借子网号,则子网号占位越多
      • 比如例子里,第一个子网只有1位,选择【0】作为子网号最后一位
      • 第二个子网有2位,上一个子网选剩的【1】作为子网号第一位、自己选择【0】作为子网号最后一位
      • 以此类推,直到分到最后,主机号最少只剩【2位】为止,此时的【0】和【1】各自可组成2个子网的子网号最后一位
  • 3、这就类似一个数据结构的二叉树,只有 “叶子节点”(绿色的) 才是【子网】!!!!
    • 但是注意【高度】不可以超过【子网数量 - 1】!!!(因为一个子网最少要有【2位主机号】,如果只有1位主机号,那主机号0和1都代表特殊ip地址,不可以给主机分配)
    • 【高度】就是【子网数量 - 1】,也就是【最小的子网的 “子网号位数”】(因为被分得子网号最多,主机范围最小,在“二叉树最下层”)

这样分完的子网,可以发现:

  • 每一个子网的【子网号】都不一样长,所以不同的子网的【网络前缀长度】都不一样
    • 像图例,“狗剩”主机的ip地址是:“128.14.32.153”,最后一个字节是【10011001】(所有子网前面3个字节都是一样,那就只用看最后一字节)
      • 第一个子网最后字节是【10000000】,28位网络前缀,那么最后字节的【前4位】和【10011001】不一样,不属于一个子网
      • 第二个子网最后字节是【10010000】,29位网络前缀,那么最后字节的【前4位】和【10011001】不一样,不属于一个子网
      • 第三个子网最后字节是【10011000】,30位网络前缀,那么最后字节的【前4位】和【10011001】一样,属于一个子网,可以转发

例题

四、路由聚合

1)概念

简单说:就是因为路由表记录太多网络ip地址,路由表要爆了,所以就把多个【部分前缀一样】的网络ip地址————>合成一个【地址快】(也叫【聚合地址快】、【超网】)

2)实际路由如何解析【地址快】

那么实际【路由聚合】是应用于更外层的网络的转发路由器

        可以发现下图,“咸鱼典型电信路由器”的网络里的3个子网地址,相对在“县里的路由器”眼里都是从【G1接口】进出,那他又何必再一条一条地检查对比同一个接口地3个地址?

        所以“县里地路由器”就可以把3个ip地址前缀相同的话,就合并成一个【(超网)地址块】,只要符合这个【超网】的网络前缀的都从【G1接口】发出

        而“咸鱼电信”的这个路由表,因为3个子网地址对应3个不同接口所以还是要把ip地址针对路由表的3个具体子网地址一一进行对比,网络前缀相同的就从各自接口发出

3)最长前缀匹配原则

        如果一个目的ip地址和路由表里多个地址都可以匹配,那么路由转发优先选择【前缀最长的】接口转发出去,因为【前缀越长,网络地址更具体】

例子:

        那么假设现在上面例子里的“咸鱼电信的网络里”,“铁柱网吧”这个子网想直接连接“县里的电信路由器”,那么此时“县里的电信路由器”就多一个接口G3用于接“铁柱网吧”。那由于接口不一样,“铁柱网吧”的ip地址必须单独记录在路由表(而不是和G1接口进行路由聚合)

        那此时对比这个路由表,会发现“铁柱网吧”的IP地址其实和整个路由表3个地址都匹配,那怎么办?————选择前缀最长的,也就是“铁柱网吧”自己本身的子网id地址

3)例题

4)结合前面学的【无分类编址CIDR】和【路由聚合】知识点一起

其中图中说【聚合C类网的数量】,你可以理解为:一开始128.14.35.7/20【网络前缀】【20位】,现在要你改成C类标准的网,那不就是向后面借【4位】【网络前缀】变成【32位】,然后用这【4位】作为【定长子网划分】能分出 “几个子网”

http://www.dtcms.com/a/293685.html

相关文章:

  • ESP32-CAM实战:DIY基于OpenAI的AI视觉识别相机
  • 校园后勤服务平台小程序的设计与实现
  • Android埋点实现方案深度分析
  • 新手向:Idea的使用技巧
  • Android 架构演进:从 MVC 到 MVVM 的设计之道
  • SpringCloud seata全局事务
  • python在windows电脑找回WiFi密码
  • LinkedList的模拟实现+LinkedList和ArrayList的区别
  • 使用 Maven 的 `maven-assembly-plugin` 插件打包zip
  • UE5实现NPC头部朝向玩家功能
  • 旧手机部署轻量级服务器
  • HakcMyVM-Luz
  • 解构未来金融:深入剖析DeFi与去中心化交易所(DEX)的技术架构
  • ZooKeeper在Hadoop中的协同应用:从NameNode选主到分布式锁实现
  • CSS 基础
  • Web 服务器和Web 中间件
  • Apache POI 介绍与使用指南
  • 思路探索:当大型语言模型遇见数据分析的现实挑战
  • 利用中间件实现任务去重与分发精细化:股吧舆情数据采集与分析实战
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 主页-最近七天微博发布量实现
  • java设计模式 -【装饰器模式】
  • C study notes[3]
  • JavaWeb笔记12
  • 硬件基础 -- 信号完整性
  • ESP32-S3学习笔记<4>:I2C的应用
  • 0基础法考随手笔记 02(刑诉法专题04 辩护与代理)
  • 如何用 Kafka + Redis + 线程池搭建高吞吐异步消息处理架构
  • TwoPhaseIterator 两阶段验证
  • Fastdds中的端口号计算
  • 基于 XGBoost 与 SHAP 的医疗自动化办公与可视化系统(下)