【网络协议栈】网络层(中)IP地址的网段划分、CIDR划分以及网络层概念(内附手画分析图 简单易懂)

绪论​
“坚持的意义是,以后回想起来的时候,你会庆幸“真好,我撑过来了”,而不是后悔“要是当初再……就好了”。本章主要写道网络层中非常重要的概念,了解了网络中ip地址的由来,以及ip地址不够的如何的处理方法,后面将继续写到网络层内容敬请期待。
请添加图片描述
话不多说安全带系好,发车啦(建议电脑观看)。


网段划分

IP地址分为两个部分, 网络号和主机号

  1. 网络号: 保证相互连接的两个网段具有不同的标识;
  2. 主机号: 同一网段内, 主机之间具有相同的网络号, 但是必须有不同的主机号;
    在这里插入图片描述
    (谈论的都是公网)
    其中的相同的网段可以近似的理解成相同的子网(局域网)
  • 不同的子网其实就是把网络号相同的主机放到一起。
  • 如果在子网中新增一台主机, 则这台主机的网络号和这个子网的网络号一致, 但是主机号必须不能和子网中的其他主机重复。

路由器

一个路由器至少要有两个主机,才能跨子网,路由器的主机标识往往是1

路由器一端一定链接着运营商的网络

路由器(在网络层):能构建子网(局域网内IP地址的管理 通过DHCP实现)

DHCP(应用层的概念)能够自动的给子网内新增主机节点分配IP地址,避免了手动管理IP的不便。

一般的路由器都带有DHCP功能。因此路由器也可以看做一个DHCP服务器。
支持http协议+(浏览器中输入路由器背面的ip 就能进入到一个路由器的网页界面中)

划分网络号和主机号

需要知道的是运营商才需进行划分网络号和主机号

过去曾经提出一种划分网络号和主机号的方案, 把所有IP 地址分为五类, 如下图所示(该图出自TCP/IP)。
在这里插入图片描述

  1. A类 0.0.0.0到127.255.255.255

  2. B类 128.0.0.0到191.255.255.255

  3. C类 192.0.0.0到223.255.255.255

  4. D类 224.0.0.0到239.255.255.255

  5. E类 240.0.0.0到247.255.255.255

随着Internet的飞速发展,这种划分方案的局限性很快显现出来,大多数组织(运营商)都申请B类网络地址(A类申请不到,C类主机不够),导致B类地址很快就分配完了,而A类却浪费了大量地址(因为24位的主机位就代表着这个子网中能连接2 ^ 24台主机,这对于一个子网来说是根本用不完的)。针对这种情况提出了新的划分方案,称为CIDR(Classless Interdomain Routing):

CIDR

引入一个额外的子网掩码(subnet mask),来区分网络号和主机号;

  • 网络号 = IP地址 & 子网掩码
  • 子网掩码和IP长度一样也是一个32位的正整数。
  • 网络号和主机号的划分与这个IP地址是A类、B类还是C类无关;
  • 子网掩码的作用就是将划分出来的多的网络号找出来,确定多划分后的网络号和主机号。

具体如下图
在这里插入图片描述

在这里插入图片描述
解释第二个例子,具体如下:
在这里插入图片描述

子网划分的优点:

通过下图理解:
在这里插入图片描述
上图学号也就对应着 ip
其中每个学院有专门的编号(计算机学院:000)也就是目标网络

子网划分:提高定位和查找主机的效率
根据上面的例子,我们通过子网划分后得到的目标网络也就是对应着每一个系的编号,这样可以先通过目标网络就能排除掉很多的可能性,直接找到对应的院系,也就是在确定某个院之前都是直接通过院编号来进行查找的,这样就能大大的缩小查找的范围,返回来就是先根据目标网络进行路由。

IP地址的数量限制

IP地址(IPv4)是一个4字节32位的正整数。那么一共只2的32次方个IP地址,大概是43亿左右。而TCP/IP协议规定,每个主机都需要有一个IP地址。这意味着, 一共只有43亿台主机能接入网络么?实际上,由于一些特殊的IP地址的存在,数量远不足43亿;另外IP地址并非是按照主机台数来配置的,而是每一个网卡都需要配置一个或多个IP地址。

CIDR在一定程度上缓解了IP地址不够用的问题(提高了利用率, 减少了浪费, 但是IP地址的绝对上限并没有增加), 仍然不是很够用。这时候有三种方式来解决

  • 动态分配IP地址: 只给接入网络的设备分配IP地址。因此同一个MAC地址的设备, 每次接入互联网中, 得到的IP地址不一定是相同的
  • NAT技术(后面会重点介绍)
  • IPv6技术: IPv6并不是IPv4的简单升级版. 这是互不相干的两个协议, 彼此并不兼容; IPv6用16字节128位来表示一个IP地址; 但是目前IPv6还没有普及。

常见特殊IP地址

  • 将IP地址中的主机地址全部设为0,就成为了网络号, 代表这个局域网 0.0.0.0。
  • 将IP地址中的 主机地址 全部设为1,就成为了广播地址, 用于给同一个链路中相互连接的所有主机发送数据包
    1. 例:设ip:192.168.1.0 它的子网掩码是255.255.255.0 :
    2. 那么它的主机号就是最后8位,所以广播地址就是:192.168.1.255
  • 127.*的IP地址用于本机环回(loop back)测试,通常是127.0.0.1

本章完。预知后事如何,暂听下回分解。

如果有任何问题欢迎讨论哈!

如果觉得这篇文章对你有所帮助的话点点赞吧!

持续更新大量计算机网络细致内容,早关注不迷路。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/919666.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Ultiverse 和web3新玩法?AI和GameFi的结合是怎样

Gamef 和 AI 是我们这个周期十分看好两大赛道之一,(Gamef 拥有极强的破圈效应,引领 Web2 用户进军 Web3 最佳利器。AI是这个周期最热门赛道,无论 Web2的 OpenAl,还是 Web3,都成为话题热议焦点。那么结合 GamefiA1双叙事…

小米顾此失彼:汽车毛利大增,手机却跌至低谷

科技新知 原创作者丨依蔓 编辑丨蕨影 三年磨一剑的小米汽车毛利率大增,手机业务毛利率却出现下滑景象。 11月18日,小米集团发布 2024年第三季度财报,公司实现营收925.1亿元,同比增长30.5%,预估902.8亿元;…

Linux系列-僵尸状态

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 进程退出 进程退出之后,代码就不会执行了,而是由PCB维护起来,我们可以通过PCB来查看退出信息。 进程退出时首先可以立即释放的就是进程对应…

NLP论文速读(EMNLP 2023)|工具增强的思维链推理

论文速读|ChatCoT: Tool-Augmented Chain-of-Thought Reasoning on Chat-based Large Language Models 论文信息: 简介: 本文背景是关于大型语言模型(LLMs)在复杂推理任务中的表现。尽管LLMs在多种评估基准测试中取得了优异的成绩…

实现两个表格的数据传递(类似于穿梭框)

类似于element的 第一个表格信息以及按钮&#xff1a; <div style"height: 80%"><el-table :data"tableData1" border :cell-style"{text-align:center}" style"width: 100%;"ref"multipleTable1"selection-chang…

【学术论文投稿】JavaScript 前端开发:从入门到精通的奇幻之旅

【中文核刊&普刊投稿通道】2024年体育科技与运动表现分析国际学术会议(ICSTPA 2024)_艾思科蓝_学术一站式服务平台 更多学术会议论文投稿请看&#xff1a;https://ais.cn/u/nuyAF3 目录 一、引言 二、JavaScript 基础 &#xff08;一&#xff09;变量与数据类型 &am…

【Golang】——Gin 框架与数据库集成详解

文章目录 1. 引言2. 初始化项目2.1 创建 Gin 项目2.2 安装依赖 3. 数据库驱动安装与配置3.1 配置数据库3.2 连接数据库3.3 在主函数中初始化数据库 4. 定义数据模型4.1 创建用户模型4.2 自动迁移 5. 使用 GORM 进行 CRUD 操作5.1 创建用户5.2 获取用户列表5.3 更新用户信息5.4 …

uniapp页面样式和布局和nvue教程详解

uniapp页面样式和布局和nvue教程 尺寸单位 uni-app 支持的通用 css 单位包括 px、rpx px 即屏幕像素。rpx 即响应式px&#xff0c;一种根据屏幕宽度自适应的动态单位。以750宽的屏幕为基准&#xff0c;750rpx恰好为屏幕宽度。屏幕变宽&#xff0c;rpx 实际显示效果会等比放大…

用 Python 与 Turtle 创作属于你的“冰墩墩”!

用 Python 与 Turtle 创作属于你的“冰墩墩”&#xff01; &#x1f980; 前言 &#x1f980;&#x1f40b; 效果图 &#x1f40b;&#x1f409; 代码 &#x1f409; &#x1f980; 前言 &#x1f980; 冰墩墩是2022年北京冬季奥林匹克运动会的官方吉祥物。以熊猫为原型&#x…

用Python爬虫“偷窥”1688商品详情:一场数据的奇妙冒险

引言&#xff1a;数据的宝藏 在这个信息爆炸的时代&#xff0c;数据就像是一座座等待挖掘的宝藏。而对于我们这些电商界的探险家来说&#xff0c;1688上的商品详情就是那些闪闪发光的金子。今天&#xff0c;我们将化身为数据的海盗&#xff0c;用Python这把锋利的剑&#xff0…

力扣hot100-->二分查找

目录 二分查找 1. 33. 搜索旋转排序数组 2. 34. 在排序数组中查找元素的第一个和最后一个位置 3. 240. 搜索二维矩阵 II 3. 287. 寻找重复数 二分查找 1. 33. 搜索旋转排序数组 中等 整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&am…

http自动发送请求工具(自动化测试http请求)

点击下载《http自动发送请求工具(自动化测试http请求)》 前言 在现代软件开发过程中&#xff0c;HTTP 请求的自动化测试是确保应用程序稳定性和可靠性的关键环节。为了满足这一需求&#xff0c;我开发了一款功能强大且易于使用的自动化 HTTP 请求发送工具。该工具基于 C# 开发…

蓝队技能-应急响应篇日志自动采集日志自动查看日志自动化分析Web安全内网攻防工具项目

知识点&#xff1a; 1、应急响应-系统日志收集-项目工具 2、应急响应-系统日志查看-项目工具 3、应急响应-日志自动分析-项目工具 演示案例-蓝队技能-工具项目-自动日志采集&自动日志查看&自动日志分析 系统日志自动采集-观星应急工具(Windows系统日志) SglabIr_Co…

Jenkins修改LOGO

重启看的LOGO和登录页面左上角的LOGO 进入LOGO存在的目录 [roottest-server01 svgs]# pwd /opt/jenkins_data/war/images/svgs [roottest-server01 svgs]# ll logo.svg -rw-r--r-- 1 jenkins jenkins 29819 Oct 21 10:58 logo.svg #jenkins_data目录是我挂载到了/opt目录&…

k8s-NetworkPolicy

NetworkPolicy 是k8s中的网络策略可以限制pod以及namespace之间的访问流量 演示一下名称空间之间基于端口的访问限制 官方对networkpolicy的介绍 官方网址&#xff1a; 网络策略 |Kubernetes &#xff08;简体中文&#xff09; 一&#xff1a;创建NetworkPolicy vim…

【算法一周目】滑动窗口(1)

目录 长度最小的子数组 解题思路 代码实现 无重复字符的最大字串 解题思路 代码实现 最大连续1的个数l l l 解题思路 代码实现 将x减到0的最小操作数 解题思路 代码实现 长度最小的子数组 题目链接&#xff1a;209. 长度最小的子数组题目描述&#xff1a; 给定一个…

Methode Electronics EDI 需求分析

Methode Electronics 是一家总部位于美国的全球性技术公司&#xff0c;专注于设计和制造用于多个行业的电子和电气组件&#xff0c;产品涵盖汽车、工业、电信、医疗设备以及消费电子等多个领域&#xff0c;提供创新的解决方案。 填写Methode_EDI_Parameters_Template Methode_…

【K8S系列】Kubernetes集群资源管理与调度 深度分析

在现代微服务架构中&#xff0c;Kubernetes&#xff08;K8s&#xff09;作为容器编排平台&#xff0c;提供了强大的资源管理和调度能力。然而&#xff0c;随着应用规模的扩大和复杂性增加&#xff0c;如何高效地管理和调度集群资源成为一个关键挑战。本文将深入探讨 Kubernetes…

HarmonyOS鸿蒙系统上File文件常用操作

HarmonyOS鸿蒙系统上&#xff0c;file文件常用操作记录 1.创建文件 createFile(fileName: string, content: string): string {// 获取应用文件路径let context getContext(this) as common.UIAbilityContext;let filesDirPath context.filesDir / fileName;// 新建并打开…

【SpringMVC - 1】基本介绍+快速入门+图文解析SpringMVC执行流程

目录 1.Spring MVC的基本介绍 2.大致分析SpringMVC工作流程 3.SpringMVC的快速入门 首先大家先自行配置一个Tomcat 文件的配置 配置 WEB-INF/web.xml 创建web/login.jsp 创建com.ygd.web.UserServlet控制类 创建src下的applicationContext.xml文件 重点的注意事项和说明…