计算机网络第4章-IPv6和寻址

IP地址的分配

为了获取一块IP地址用于一个组织的子网内,于是我们向ISP联系,ISP则会从已分给我们的更大

地址块中提供一些地址。

例如,ISP也许已经分配了地址块200.23.16.0/20。

该ISP可以依次将该地址块分成8个长度相等的连续地址块,随后分给我们一块。

如下图所示:

获取主机地址:动态主机配置协议

某组织一旦获得了一块地址,它就可以为本组之内的主机与路由器接口逐个分配IP地址。

路由器的IP地址通常由系统管理员配置。

但是主机地址我们自己可以手动配置,但是更多的是使用动态主机配置协议(DHCP)来完成。

DHCP允许主机自动获取一个IP地址。

网络管理员可以配置DHCP,以便使主机每次与网络连接时能得到一个相同的IP地址,或者某主机

将被分配一个临时的IP地址。

DHCP也被称为“即插即用协议”或“零配置”协议。

DHCP又是一个客户-服务器协议,客户通常是新到达的主机,它要活的包括自身使用的IP地址在内

的网路配置信息。

下图是一个DHCP接入的子网:

对于一台新到达的主机而言,DHCP协议工作要经过大概四步:

1.DHCP发现

一台新到达的主机的首要任务是发现一个要与其交互的DHCP服务器。这可以通过使用DHCP发现

报文来完成,客户在UDP分组中向端口67发送该发现报文。

怎么发送呢?很简单。

前面我们讲过广播目的地址,因此DHCP客户会在子网中使用255.255.255.255并且使用“本主机”源

IP地址0.0.0.0。

DHCP客户将该IP数据报传递给链路层,链路层然后将该帧广播到所有与该子网连接的节点。

2.DHCP服务器提供

DHCP服务器收到一个DHCP发现报文时,用DHCP提供报文向客户做出响应,该报文向该子网的

所有节点广播,仍然使用IP广播地址255.255.255.255。

3.DHCP请求

新到达的客户从一个或多个服务器中提供中选择一个,并向选中的服务器提供DHCP请求报文,回

显配置的参数。

4.DHCP ACK

服务器用DHCP ACK报文对DHCP请求报文进行响应,证实所要求的参数。

一旦客户收到DHCP ACK后,交互便完成了,并且该能够在租用期内使用DHCP分配的IP地址。

网络地址转换

我们可能会想,在家庭中很多机器使用路由器上的网络,这些机器的IP地址该如何分配呢?如果这

些机器都分配一个IP地址,那么全球的机器数量远远多于40亿,IP地址显然是不够分的,那该怎么

办呢?

很简单,在这里我们使用NAT来解释,并且来引入一个“专用网络”概念。

什么是NAT?

NAT使路由器对于外部世界来说甚至不像一台路由器。

相反NAT路由器对外界的行为就如同一个具有单一IP地址的单一设备。

所有离开家庭路由器流向更大的报文都拥有一个源IP地址138.76.29.7(上图的例子),且所有进入家

庭的报文都拥有同一个目的IP地址138.76.29.7。

从本质上讲,NAT使路由器对外界隐藏了家庭网络的细节。

而路由器怎么将分组转发给哪个内部主机呢?

技巧就是使用NAT路由器上的一张NAT转换表,并且在表项中包含了端口号及其IP地址。

NAT转换表具体操作

假设一个用户坐在家庭网络主机10. 0. 0. 1后,请求IP地址为 128.119. 40. 186的某台Web服务器

(端口 80)上的一个Web页面。

主机10. 0. 0. 1为其 指派了(任意)源端口号3345并将该数据报发送到LAN中。

NAT路由器收到该数据报, 为该数据报生成一个新的源端口号5001,将源IP替代为其广域网一侧接口

的IP地址 138. 76. 29.7,且将源端口 3345更换为新端口5001

当生成一个新的源端口号时,NAT路由器可选择任意一个当前未在NAT转换表中的源端口号。(注

意到因为端口号字段为16 比特长,NAT协议可支持超过60 000个并行使用路由器广域网一侧单个

IP地址的连接!)

路由器中的NAT也在它的NAT转换表中增加一表项。Web服务器并不知道刚到达的包含 HTTP请求

的数据报已被NAT路由器进行了改装,它会发回一个响应报文,其目的地址是 NAT路由器的IP地

址,其目的端口是5001

当该报文到达NAT路由器时,路由器使用目的IP地址与目的端口号从NAT转换表中检索出家庭网络

浏览器使用的适当IP地址 (10. 0. 0.1)和目的端口号(3345)。于是,路由器重写该数据报的目

的IP地址与目的端 口号,并向家庭网络转发该数据报。

IPv6

IPv6数据报的格式

扩大的地址容量

IPv6将IP地址长度从32比特增加到128比特,这就确保全世界将不会用尽IP地址。

IPv6还引入了一种称为任播地址的新型地址,这种地址可以使数据报交付给一组主机中的任意一

个。

简化高效的40字节首部

新的选项编码允许进行更灵活的选项处理。

流标签

IPv6有一个难以琢磨的"流"定义。

该字段用于“给属于特殊流的分组加上标签,这些特殊流是发送方要求进行特殊处理的流,如一种

非默认服务质量或需要实时服务的流。”

版本

该4比特字段用于标识IP版本号,IPv6将该字段值设为6,但是该字段不能被置为4,即使置为4也

无法创建一个合法的IPv4数据报。

流量类型

该8比特字段与我们在IPv4中看到的TOS字段含义相似。

有效载荷长度

该16比特值为一个无符号整数,给出了IPv6数据报中跟在定长的40字节数据报首部后面的字节数

量。

下一个首部

该字段标识数据报中的内容(数据字段)需要交给哪个协议?(TVP/UDP)

跳限制

转发数据报的每台路由器将对该字段的内容减1,若被减少到0,则被丢弃。

数据

这是IPv6数据报的有效载荷部分,当数据报到达目的地时,该有效载荷就从IP数据报中移出。

分片/重新组装

IPv6不允许在中间路由器上进行分片与重新组装。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【蓝桥杯 第十四届省赛Java B组】真题训练(A - E)正在更新

目录 A、阶乘求和 - BigInteger B、幸运数字 - 字符串 进制转换 暴力大法 C、数组分割 - 数学思维 乘法排列组合 D、矩形总面积 - 推导公式 找规律 (1)暴力大法好 50% (2)正解 100% E、蜗牛 - (我以为是模拟…

java八股文(mysql篇)

什么是关系型数据库? 其是建立在关系模型基础上的一种数据库,这种关系分为:一对一,一对多,多对多。 我们的数据存放在表中,在表中会有一至多个字段,一行就是一条数据。 mysql有哪些字段呢&…

【MySQL】用户管理权限控制

文章目录 前言一. 用户管理1. 创建用户2. 删除用户3. 修改用户密码 二. 权限控制1. 用户授权2. 查看权限3. 回收权限 结束语 前言 MySQL的数据其实也以文件形式保存,而登录信息同样保存在文件中 MySQL的数据在Linux下默认路径是/var/lib/mysql 登录MySQL同样也可以…

如何在macbook上删除文件?Mac删除文件的多种方法

在使用MacBook电脑时,桌面上经常会积累大量的文件,而这些文件可能已经不再需要或已经过时。为了保持桌面的整洁和提高电脑性能,我们需要及时删除这些文件。本文将介绍MacBook怎么删除桌面文件,以及macbook删除桌面文件快捷键。 一…

C 语言左移位操作在kernel驱动子系统中的特殊用途

文章目录 前言一、C语言左移位操作介绍1. 左移位二、左移位操作在kernel 驱动子系统中的应用1. 左移位操作在 V4L2, Media 子系统中的应用实例2.左移位操作在 DRM 子系统中的应用实例2.1 左移位操作在struct drm_crtc 中的应用2.2 左移位操作在struct drm_encoder 中的应用总结…

Flutter 07 框架和三棵树(Widgets、Elements和RenderObjects)

一、Flutter框架的整体结构: Flutter是Google推出并开源的跨平台开发框架,主打跨平台、高保真、高性能。开发者可以通过Dart语 言开发Flutter应用,一套代码同时运行在ios和Android平台。不仅如此,Flutter还支持Web、桌面、嵌 入应…

【工具】OCR方法|不用下载额外的软件,提取扫描中英文PDF的目录文本的最优解!(一)

需求: 1)从PDF里快速提取目录; 2)不想下载任何软件。 我提取出来的目录文本会用于嵌入到PDF中,向PDF批量添加目录的软件以及软件的使用方法可以看我上一篇文章:PDF批量插入目录。 以下是我自己能想到的方…

基于yolov2网络的人脸识别系统matlab仿真,包括识别正脸,侧脸等

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1、训练阶段 4.2、预处理阶段 4.3、识别阶段 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ........................................…

FastGPT | 3分钟构建属于自己的AI智能助手

这是一篇使用指南!!! FastGPT是什么? FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景&…

BEV-YOLO 论文学习

1. 解决了什么问题? 出于安全和导航的目的,自驾感知系统需要全面而迅速地理解周围的环境。目前主流的研究方向有两个:第一种传感器融合方案整合激光雷达、相机和毫米波雷达,和第二种纯视觉方案。传感器融合方案的感知表现鲁棒&am…

一句话说明:企业架构框架鼻祖Zachman

问:禁止废话,一句话表达,Zachman是什么?包含哪些内容? 韩老师正经回答:Zachman是企业架构框架鼻祖,包含6行6列的矩阵式架构内容。6列是5W1H(What、How、Where、Who、When、Why&…

Vue3 简单实现虚拟Table,展示海量单词.利用WebAPI speechSynthesis,朗读英语单词

目录 本页面完整代码 视频演示 完整的页面代码 利用webapi speechSynthesis帮助我们自动郎读英语单词,可以利用这个API,做一些小说朗读或到账提示。 本页面完整代码 用Vue写了一个简单页面,里面还写了一个简单的虚拟Table支持海量数据展示…

kubernetes存储-volumes

目录 一、Volumes的简介 二、emptyDir卷 1、emptyDir的引入 2、emptyDir 的使用场景 3、多容器共享volumes 4、emptyDir缺点 三、hostPath卷 1、hostPath卷简介 2、创建hostPath卷 3、NFS共享文件 四、PersistentVolume(持久卷) 1、PV与P…

免费音效素材,不能错过这6个网站

找免费音效素材,那必须要上这6个网站,热门音效、BGM都能免费下载,赶紧收藏起来。 1、菜鸟图库 https://www.sucai999.com/audio.html?vNTYwNDUx 菜鸟图库是一个综合性素材网站,站内涵盖设计、图片、办公、视频、音效等素材。其中…

数据可视化:动态柱状图

终于来到最后一个数据可视化的文章拿啦~~~ 在这里学习如何绘制动态柱状图 我先整个活 (๑′ᴗ‵๑)I Lᵒᵛᵉᵧₒᵤ❤ 什么是pyecharts? 答: Python的Pyecharts软件包。它是一个用于Python数据可视化和图表绘制的库,可用于制作…

力扣最热一百题——盛水最多的容器

终于又来了。我的算法记录的文章已经很久没有更新了。为什么呢? 这段时间都在更新有关python的文章,有对python感兴趣的朋友可以在主页找到。 但是这也并不是主要的原因 在10月5号我发布了我的第一篇博客,大家也可以看见我的每一篇算法博客…

【23真题】易!题源全部定位!带讲解!

今天分享的是23年长春理工大学808的信号与系统试题及解析。 本套试卷难度分析:22年长春理工808考研真题,我也发布过,若有需要,戳这里自取!本套试题内容难度中等偏下,题量较少,没有选择填空题&a…

算法学习打卡day41|栈和队列:栈和队列相互实现、括号匹配、逆波兰表达式、滑动窗口最大值问题、求前 K 个高频元素

栈和队列相互实现 力扣题目链接:用栈实现队列、用队列实现栈 题目描述: 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty): 实现 MyQueue 类: void push(…

无人机航迹规划:狐猴优化算法LO求解无人机路径规划MATLAB(可以修改起始点,地图可自动生成)

一、狐猴优化算法 狐猴优化算法(Lemurs Optimizer,LO)由Ammar Kamal Abasi等人于2022年提出,该算法模拟狐猴的跳跃和跳舞行为,具有结构简单,思路新颖,搜索速度快等优势。狐猴优化算法&#xff…

JavaScript 进阶问题列表,巩固自己的知识。

不定时更新 JavaScript 进阶问题列表 从基础到进阶,测试你有多了解 JavaScript,刷新你的知识,或者帮助你的 coding 面试! 💪 🚀 答案❤️ 1. 输出是什么? function sayHi() {console.log(na…