IPV6知识总结

news2024/11/20 9:43:28

目录

  • 一、IPV6与IPV4相比改进之处
      • 1. “无限“的地址空间
      • 2. 层次化的地址结构
      • 3. 即插即用
      • 4. 简化了报头头部
      • 5.保证端到端网络的完整性
      • 6.安全性增强
      • 7.增强QoS特性
  • 二、IPV6的规则
    • IPV6地址主要分为了三类:单播地址,组播地址,任播地址
      • 单播地址
      • 组播地址
    • IPV6的配置

一、IPV6与IPV4相比改进之处

1. “无限“的地址空间

IPV6由128位二进制构成,采用的表述方法为:冒分十六进制

2. 层次化的地址结构

IPV6地址在分配时会更加合理,更便于进行汇总等操作

3. 即插即用

相较于IPV4支持通过DHCP自动获取IP地址,IPV6可以通过SLAAC(无状态地址自动配置)技术来实现快捷的地址下发,不需要DHCP服务器,仅需存在网关,并且网关具备IPV6地址即可。

4. 简化了报头头部

在这里插入图片描述
IPV4中TOS字段 — 服务类型 — 做策略用的 ---- IPV6 — 流分类
Total Length — payload length — 将总长度变为了负载长度,取消了头部长度(因为同时也取消了下面的选项字段,使IPV6头部变为定长头部)
FLOW LABEL — 流标签 — 区分和标记不同流量的,便于做QoS — 该参数暂时保留

5.保证端到端网络的完整性

在IPV6网络中,不使用NAT技术,所有设备都可以获得唯一的IP地址进行标识,实现端到端的通讯,可以很方便溯源这些。

6.安全性增强

为了保证IPV6网络数据传输的安全,我们专门研发了一套IPSEC — 因特网协议安全协议,这是一个协议组。目前 IPV4也可以配合IPSEC来使用,效果和IPV6相同。

7.增强QoS特性

主要体现在头部新增了一个流标签字段,更方便做QoS,但是,该字段目前保留。

二、IPV6的规则

采用的表述方法为:冒分十六进制
2001:0123:0000:4560:0000:0000:0000:001A — 首选格式(八组十六进制)
ipv6地址规则:

1,每一段前导0可以省略,如果这一段全是0,则至少保留一个0,拖尾的0不能省略
2001:123:0:4560:0:0:0:1A
2,一个或多个连续的段为全0时,可以使用“::”来标识,但是注意,一个IPV6地址中只能出现一处“::”。
2001:123:0:4560::1A ----- 压缩格式

内嵌IPV4地址格式 ::192.168.1.1

IPV6中也存在网络位和主机位。只不过,在IPV6中将网络位称为网络前缀,将主机位称为接口标识。
IPV6地址网络前缀默认为64位:
2001::1 /64

在网络前缀固定的情况下,后面接口标识生成方法:
一、手工配置:自己手工填写一个不会冲突的地址即可;
二、EUI-64自动生成:
1.在48位的MAC地址中间(24位的位置),增加FFFE,添加16位,形成一个64位的二进制。
2.在这个64位的二进制中,找到第7位取反
三、系统设置随机接口ID

在IPV6中,接口支持多宿主 ---- 即一个接口可以配置多个不同网段的IPV6地址。在华为设备上一个接口上不允许配置同一个网段的多个IPV6地址。

IPV6地址主要分为了三类:单播地址,组播地址,任播地址

任播:标识的时一组网络接口,发送一个目标IPV6地址为任播地址的数据包,其效果是发送到该组所有成员接口中距离本地最近的一个接口。

单播地址

1、GUA — 全球单播地址
相当于IPV4中的公网IP地址,可以在全球范围内使用的单播地址。
目前使用的GUA地址范围为:
2000:: /3 ---- 这个地址段分配GUA地址
001 0 ---- 2000:0000:0000:0000:0000:0000:0000:0000
---- 3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
目前商用的IPV6地址段:2001:: /16
2002:: /16 ---- 用于6to4隧道技术
2,ULA — 唯一本地地址
相当于IPV4中的私网地址,但是,因为IPV6中不用NAT技术,所以,这一部分私网地址只是用于私网内实验使用,不允许出现在IPV6公网路由中。
FC00:: /7 ---- 这个地址段是专门为私网地址分配的地址段
1111 110 0
目前仅使用了FD00:: /8,FC00:: /8目前保留,后面拓展使用。
3,LLA — 本地链路地址
IPV4中也存在本地链路地址 — 169.254.0.0/16
在IPV6中,因为接口是支持多宿主的,所以,每一个接口,只要激活了IPV6,就会给自己配一个LLA地址。
固定的网络前缀:FE80:: /10
接口标识:将按照EUI-64的方法自动生成
== 因为,IPV6支持多宿主,所以,在动态路由协议选择下一跳IP时,处于稳定性考虑,会优先选择LLA地址作为下一跳地址。==

组播地址

其目的是为了标识某个组播组,发送一个目标IP地址为组播地址的数据包,则该报文将被发送至整个组播组中的所有成员。

FF:: /8 ---- ipv6组播地址段
IPV4中的本地链路组播:
RIPV2 — 224.0.0.9
OSPF — 224.0.0.5,224.0.0.6
224.0.0.1 — 针对所有的路由器和PC。针对的是所有节点。
224.0.0.2 — 针对所有路由器

224.0.0.1 ---- FF02::1 ----- 33:33:00:00:00:01
224.0.0.2 ---- FF02::2 ----- 33:33:00:00:00:02
224.0.0.9 ---- FF02::9 ----- 33:33:00:00:00:09
224.0.0.5 ---- FF02::5 ----- 33:33:00:00:00:05
224.0.0.6 ---- FF02::6 ----- 33:33:00:00:00:06

IPV6组播地址对应组播MAC地址,前16位为固定值 — 33:33,组播IPV6地址的后32位为组播MAC地址的后32位。
组播地址中还有一种 — 被请求节点组播
当一个节点,具备单播地址之后,将自动生成一个被请求节点组播地址。生成后,被请求节点就会加入到对应的组播组中。
FF02::1:FF — 前104位固定,后24位为单播地址的后24位
2001::1
FF02::1:FF00:1

特殊地址:
1,:: — 128位全0 ---- 等同于IPV4中的0.0.0.0 ---- 1,代表没有地址;2,代表所有地址(缺省)
2,::1 — 环回地址 ---- 等同于127.0.0.1

IPV6的配置

ICMPV6 ---- 互联网控制报文协议
在IPV6体系下,取代ARP协议的是NDP(邻居发现协议)协议,他是集成在ICMPV6下的,包括无状态地址自动配置功能也是通过NDP协议来实现的。ICMPV6协议还具备path-MTU发现机制(PMTUD)。
因为ICMPV6集成很多功能,所以,不同功能的数据报会通过ICMPV6数
据报中的type字段进行区分。比如:ping ----- echo
request — TYPE = 128
echo reply ---- type = 129

PMTUD ---- 在IPV6路由生成后,设备会发送ICMPV6报文检测包,去
检测整条路径中最小的MTU值(PMTU)。之后,在发送数据包时按照
最小MTU值发送,避免过程中出现分片的现象。

一个接口,在正式发送IPV6报文之前,将经历一下3个过程
1,地址配置
2,DAD — 地址冲突检测
3,地址解析

1,地址配置
GUA地址的获取方法 — 1,手工配置
2,无状态自动配置(SLAAC — NDP协
议)
3,有状态自动配置(DHCPV6)
无状态自动配置 — 无需DHCP服务器,只要由网关,便可以让
接入IPV6网络中的设备获得IPV6地址,即插即用。
需要利用ICMPV6中的两种报文
路由器请求报文(RS) — 主机主动发送RS请求 — type = 133
路由器通告报文(RA) — 网关回复RA报文,报文中包含网关的网络前缀,后面的接口标识需要设备自动生成。 —type = 134
还存在另一种形式,网关设备会周期性的主动发送RA报文,携带自己的网络前缀。(华为设备默认关闭自动发送功能。)
因为无状态地址配置无法下发DNS等其他参数信息,所以,一般多应用于物联网等终端较多,且不需要除地址外其他参数的场景。
2,DAD和地址解析就是IPV4中ARP协议完成的任务,在IPV6中都由NDP
协议来完成。

在NDP完成地址解析时需要使用两种报文
邻居请求报文(NS) — 相当于ARP请求报文,type = 135
邻居通告报文(NA) — 相当于ARP应答报文,type = 136
请求报文:
在ARP中 — SIP:自己IP DIP:请求的IP
在NDP中 — SIP:自己的IP DIP:请求IP所对应的被请求节点
组播地址。
在ARP中 — SM:自己MAC DM:全F
在NDP中 — SM:自己MAC DM:被请求组播地址对应的组播
MAC地址
应答报文:
在ARP和NDP均使用单播回复

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

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

相关文章

基于低代码平台少量编码完成软件开发

一、低代码平台是什么 低代码平台简单来说就是只需要少量代码、甚至无需代码即可完成系统开发。 过去开发一套系统都需要软件工程师通过代码进行开发,所以任何一个系统的开发都需要大量的软件工程师资源,使得很多企业谈到系统开发就想到了高额的成本投入…

【MySQL数据库】基本命令操作及语句总结

目录 前言 一、数据库连接 二、创建数据库 2.1 创建数据库 2.2 删除数据库 2.3 查看数据库 2.4 使用数据库 三、创建数据表 3.1 创建数据表 3.2 删除数据表 3.3 插入语句 3.4 查看数据表 四、数据库操作 4.1 显示列 4.2 显示索引 4.3 修改表名 4.4 修改数据类…

CPK分析工具页面设计源码

效果图: 父组件 <template><div class="app-container home"><!-- <el-divider />--><el-rowtype="flex"justify="space-around"class="row-bg"style="margin-bottom: 10px"><el-col…

uni-app 之 Toast 消息提示

uni-app 之 Toast 消息提示 image.png <template> <view class"content"> <u-button click"showToast">Toast 消息提示 </u-button><u-toast ref"uToast"></u-toast></view></template> <…

SAP CDS->ODATA->POSTMAN test (二)

/IWFND/GW_CLIENT&#xff1a;测试OData服务 /IWFND/MAINT_SERVICE&#xff1a;激活并维护服务 SEGW&#xff1a;OData建模 /iwfnd/error_log&#xff1a;分析错误 增加注释&#xff1a; OData.publish: true 输入/O/IWFND/MAINT_SERVICE&#xff0c;添加服务 添加所选的服务…

realloc函数应用IO泄露体验

本题主要介绍realloc函数&#xff0c;平时我们使用realloc最多便是在打malloc_hook–>onegadget的时候&#xff0c;使用realloc_hook调整onegadget的栈帧&#xff0c;从而getshell。 在realloc函数中&#xff0c;也能像malloc一样创建堆&#xff0c;并且比malloc麻烦一些&a…

C# Winform编程(1)基础篇

C# Winform编程&#xff08;1&#xff09;基础篇 Visual Studio 2022开发环境新建WinForm应用项目WinForm代码结构新键窗体文件从Form1启动Form2修改控件属性退出程序和关闭窗口 Visual Studio 2022开发环境新建WinForm应用项目 WinForm代码结构 Program.cs 程序入口 Applicati…

AMQP[RabbitMQ]小结

消息队列: 组成: 交换器,队列,绑定 作用:异步处理,削峰,服务解耦 交换器 RabbitMQ常见的exchange(交换器)类型: direct–路由键完全匹配才可以 fanout–广播 topic --主题,模糊匹配路由键 队列 messagequeue: 组成: 路由键 routine-key—决定消息发给谁 优先级prio…

vue 普通组件的 局部注册

vue 普通组件的 注册 11 Vue2_3入门到实战-配套资料\01-随堂代码素材\day03\素材\00-准备代码\小兔鲜首页静态页\src

工厂与观察者模式

工厂模式介绍 通过一个加工厂&#xff0c;在这个工厂中添加对应材料&#xff0c;我们就可以得到想要的东西&#xff0c;在程序设计中&#xff0c;这种模式就叫做工厂模式&#xff0c;工厂生成出的产品就是某个类的实例&#xff0c;也就是对象。 关于工厂模式一共有三种&#…

【C++11】左值引用右值引用,移动构造的使用

&#x1f30f;博客主页&#xff1a; 主页 &#x1f516;系列专栏&#xff1a; C ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ &#x1f60d;期待与大家一起进步&#xff01; 文章目录 一、左值与右值二、 引用总结&#xff1a;1.左值&#xff1a;2.右值&#xff1a; 三、…

微服务调用没有返回值,无法组成对象,但是会有feign的信息

事件起因 还是那个项目&#xff0c;至少对于我来说要学习的东西其实还是挺多的。 需求 员工信息管理&#xff0c;员工简历&#xff0c;导出功能&#xff0c;需要去联查员工的各项信息&#xff0c;其中&#xff0c;涉及到微服务的之间的操作出现了问题&#xff0c;目前主要的…

时空碰撞之当Leaflet遇到Echarts

前言 在之前的博客中&#xff0c;有介绍如何进行Leaflet展示的&#xff0c;也有介绍Echarts如何进行高效图表展示的。针对一些时空类的场景&#xff0c;比如需要跟随GIS地图一起进行图表展示&#xff0c;如何在地图上集成图表插件。本文将以常用的Leaflet为例&#xff0c;重点讲…

JAVA中使用CompletableFuture进行异步编程

JAVA中使用CompletableFuture进行异步编程 1、什么是CompletableFuture CompletableFuture 是 JDK8 提供的 Future 增强类&#xff0c;CompletableFuture 异步任务执行线程池&#xff0c;默认是把异步任 务都放在 ForkJoinPool 中执行。 在这种方式中&#xff0c;主线程不会…

I/O

IO 流简介 IO 即 Input/Output&#xff0c;输入和输出。数据输入到计算机内存的过程即输入&#xff0c;反之输出到外部存储&#xff08;比如数据库&#xff0c;文件&#xff0c;远程主机&#xff09;的过程即输出。IO 流在 Java 中分为输入流和输出流&#xff0c;而根据数据的…

DAY47 多表外键联系

一、表设计之关联关系 外键&#xff1a;主键是用于表示数据的唯一性字段&#xff0c;外键是用于建立关联关系的字段&#xff0c;值通常指向另一张表的主键 一对一 什么是一对一的关系&#xff1a;有A,B两张表&#xff0c;A表中一条数据对应B表中的一条数据&#xff0c;称之为一…

Java 设计模式——抽象工厂模式

目录 1.概念2.结构3.实现4.优缺点5.使用场景6.模式扩展7.JDK源码解析——Collection.iterator方法 1.概念 &#xff08;1&#xff09;Java 设计模式——工厂方法模式中考虑的是一类产品的生产&#xff0c;如畜牧场只养动物、电视机厂只生产电视机等。这些工厂只生产同种类产品…

MATLAB m文件格式化

记录一个网上查到的目前感觉挺好用的格式化方法。 原链接&#xff1a; https://cloud.tencent.com/developer/article/2058259 压缩包&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1ZpQ9qGLY7sjcvxzjMPAitw?pwd6666 提取码&#xff1a;6666 下载压缩包&#xf…

【GDB】自定义命令

.gdbinit 文件的使用 gdb自定义命令 自定义命令格式 define <command> <code> end document <command> <help text> end示例 .gdbinit 脚本中输入如下内容 layout asm b 5define print-tyustliecho hello, world\n enddocument print-tyustliusage…

【冒烟测试前置】如何把控提测质量?

你是否碰到过开发提测速度很快&#xff0c;导致项目排队&#xff0c;结果介入测试时&#xff0c;第一条用例都跑不通的情况&#xff1f; 你是否碰到过因为开发提测质量差&#xff0c;导致反复修改&#xff0c;反复提测&#xff0c;反复重复验证的情况&#xff1f; 你是否碰到…