一、概念

(1)IPV6与IPV4相比的优点:
1.地址容量大
2.层次结构设计更合理,方便路由汇聚
3.即插即用(SLAAC)
4.报头经过了简化,提高了转发效率
5.更安全(IPSEC)
6.更好的移动性
7.QOS增强
(2)IPV6和IPV4的兼容技术
1.双栈技术:两种协议同时生效,对设备的硬件资源有要求
2.隧道技术:两种协议相互嵌套
3.转换技术:通过NAT进行两种协议的转换

1)基本报头

(1)包含了转发所需的基本信息
(2)与IPV4的报头对比
1.增加了流标签,增加QOS效率
2.用HOP LIMIT替代了TTL
3.取消了三层的checksun功能,校验有二层和四层实现
4.取消了中间节点的分片功能,分片在源头实现(Path MTU机制)
5.基本报头长度固定为40byte,提高转发效率。IPV4的报头长度为20-60byte
6.取消了options,改为next header指针
(3)next header可以装入的内容:
1.当需要使用扩展报头时,next header可以装入6种扩展报文的类型
2.当不需要使用扩展报头时,next header装入的是上层协议的类型

2)扩展报头

(1)意义:IPV4通过OPTION选项来实现扩展功能,沿路的所有路由器收到带IPTION字段的报文都要进行解释处理。IPV6采用的扩展报头机制,指定的路由器才会处理对应的扩展报头,提高了转发效率
(2)IPV4的option长度受40byte限制,IPV6的扩展报头不受限。扩展报头的长度总是8byte的倍数,为了提高处理效率。
(3)6种扩展报文类型
1.逐跳选项报头:每一跳路由器都要处理该报文
2.目的选项报头:指定路由器处理该报文
3.路由报头:指定到达目的地的路径的节点信息
4.分段报头:报文分段信息,只有目的地需要处理
5.认证报头:ipsec功能,只有目的地需要处理
6.安全报头:ipsec功能,只有目的地需要处理
(4)扩展报头的顺序是固定的,不用的报头可以不出现,但是顺序不能乱

3)IPV6地址分类

(1)由网络前缀+接口标识组成,共128位,分成8段,每段16位。

(2)根据网络前缀,可以分成以下几类地址

1.单播地址:单播地址又细分为三类:

1)全球单薄地址(GUA):2000::/3。
常用2001::/64
2)唯一单播地址(ULA):FD00::/8。
3)本地链路单薄地址(LLA):FE80::/10。

2.组播地址:分成两类

1)普通组播地址:FF00::/8。
常用FF01::1/64、FF02::1/64、FF01::2/64、FF02::2/64
2)被请求节点组播地址:FF00::1:FF(104位的固定前缀)+被请求节点的后24位

3.任播地址:

任播地址是特殊的单薄地址,使用的网络前缀和单薄地址一致

4.未指定地址:::/128。

1)等同于IPV4的0.0.0.0/32。
2)用于重复地址检测、DHCPV6初始化

5.环回地址:::1/128。

1)等同于IPV4的127.0.0.1/32

(3)接口标识

1.手动配置
2.本地操作系统随机生成(windows系统)
3.EUI-64生成(最常用):本机接口的48位mac地址的第七位取反,中间插入FFFE,组成64的接口表示
4.DHCPV6服务器随机生成(有状态获取IPV6地址的情况)

4)单播地址

(1)全球单播地址

1.全球唯一,相当于IPV4的公网地址
2.(001+45位全局路由+16位子网号)组成的网络前缀。
3.常用2001::/64

(2)唯一单播地址

1.局域网内唯一,等同于IPV4的私网地址
2.(FD+40位的伪全局路由+16位子网号)组成的网络前缀。
3.不同的网段可以通过路由器转发,但是不能访问IPV6公网

(3)本地链路单播地址

1.等同于IPV4中的169网段地址
2.(FE8+54位0)组成的网络前缀。FE80::/10
3.不允许经过三层转发,只能同一网段内通信。
4.一般用于IPV6的邻居发现源地址、SLAAC中路由器的源地址

5)组播地址

(1)普通组播地址

1.(FF+4位FLAG+4为SCOPE+80位0+32位组ID)组成完整的组播地址,因为不需要区分网段,所以没有掩码

2.FLAG:0001代表临时地址;0000代表永久地址

3.SCOPE:组播的范围
1代表的范围为loopback接口的组播
2代表范围为本地链路的组播

4.自动获取的IPV6地址里默认带的组播地址有:
FF01:1(环回节点的组播)
FF02:1(本地链路所有节点的组播)
FF01:2(分配给环回节点的路由器组播地址)
FF02:2(分配给本地链路的路由器组播地址)

(2)被请求节点组播地址

1.(FF02::1:FF)104位的固定前缀+被请求节点的IPV6地址的后24位
2.被请求节点的IPV6地址的后24位,可以为单薄或者任播地址
3.一般用于作为邻居发现时的目标地址,DAD检测时的目标地址

(3)组播用MAC地址

1.当要进行组播的时候,跟IPV4一样,需要用到特定的MAC地址
2.(33:33+组播地址的后32位)组成组播MAC地址
3.当组播IP为普通组播地址时,后32位位组ID
4.当组播IP为被请求节点组播地址时,后32位为(FF+被请求节点地址的后24位)

6)任播地址

1.任播地址就是特殊的单播地址,地址格式与单播地址一致
2.不同的点在于,单薄地址代表的是单个接口,任播地址可以捆绑多个接口(最后报文只会转发到多个接口中的一个,等同于单播)
3.常用服务器冗余的情况,用于提高可靠性,加快响应速度

7)ICMPv6协议

用于IPV6网络中的差错检查和控制信息传递,使用差错报文和信息报文两种报文

(1)差错报文:

TPYE ID 1:代表模板不可达
TPYE ID 2:MTU过大(此项用于PATH MTU检测)
TPYE ID 3:超时(HOP LIMIT到0)
TPYE ID 4:参数错误

(2)信息报文:

TPYE ID 128:echo request 用于ping和tracert
TPYE ID 129:echo reply 用于ping和tracert
TPYE ID 133:RS 用于NDP
TPYE ID 134:RA 用于NDP
TPYE ID 135:NS 用于NDP
TPYE ID 136:NA 用于NDP
TPYE ID 137:重定向 用于NDP

(3)RS/RA报文要点

1.用于本地链路的路由发现

2.用于无状态地址自动配置时的网络前缀发现

3.用于配置参数的发现(DHCPV6的无状态配置模式)

4.RA报文的关键字段:
标志位M:用于判定是否通过DHCPV6分配地址
标志位O:用于判定SLAAC模式下,是否通过DHCPV6获取配置
ICMPV6前缀信息:A-bit,用于指定能否无状态配置
生存周期:每个IPV6地址都有生存期。
valid lifetime(合法时间):必须大于3h,超过这个时间地址自动失效
prefered lifetime(优选时间):必须大于2h,超过这个时间无法新建连接

8)NDP(邻居发现协议)

IPV6的核心协议,通过使用ICMPV6的报文,实现多种功能:
(1)路由发现:用于发现本地链路上的路由器
(2)SLAAC前缀发现:路由器通过RA报文,向本地链路上的所有设备公告IPV6网络前缀
(3)DAD:通过NS、NA报文交互实现IP冲突检测
(4)地址解析:生成IPV6邻居状态表
(5)邻居状态跟踪:维护IPV6邻居状态表,状态迁移过程如下:
1.incomplete:正在进行地址解析,邻居状态表等待更新
2.reachable:收到NA回复,目标可达
3.stale:超过30s没有业务报文通过,切换到闲置状态
4.delay:闲置状态下,已发送了NS报文,未收到回复,但未超时
5.probe:超过delay时间未收到NA报文,继续发送三次NS报文
6.empty:三次NS报文发送回,未收到NA回复,邻居失效

二、工作机制

所有采用的IPV6设备上线,都要经历的流程:
地址配置=》DAD=》地址解析=》IP报文转发

1)地址配置

(1)无状态地址自动配置(SLAAC)

1.通过NDP协议实现。
2.本地链路的路由定期发送RA报文,报文带有单播地址的网络前缀信息
3.主机根据收到的RA信息,将收到的网络前缀加上自身的接口标识,组成单播地址
4.GUA和ULA地址都可以通过无状态地址配置获取
5.主机生成的IPV6地址,路由器不进行维护,所以叫无状态
6.在路由接口启用了SLAAC功能的情况下,主机主动发送RS报文,也是可以获取IPV6地址的

(2)SLAAC流程

1.主机上线,自动生成LLA
2.通过对LLA的DAD检测后,可以通过LLA进行报文收发
3.主机开始路由发现流程,通过LLA发送RS报文至本地链路的路由器组(SIP:本机LLA,DIP:FF02::2)
4.路由器收到RS报文后,返回RA报文给本地链路的所有终端节点(SIP:本机LLA,DIP:FF02:1)
5.主机收到RA报文的网络前缀,自动生成对应的IPV6地址(GUA和ULA都是同样的流程)
6.主机对新生成的IPV6地址进行DAD检测
7.路由器的RA报文也可以定期发送

(2)DHCPV6自动地址配置

DHCPV6有三类自动配置模式:
1.DPCP有状态配置
1)通过DHCPV6协议交互
2)DHCPv6服务器对分配的IPV6地址进行维护,所叫有状态
3)四步交互流程(组内有多台DHCP服务器):solicit(请求DCHP服务)=》advertise(DHCP服务器应答)=》request(请求IPV6地址)=》reply(DHCP服务器应答)
4)两步交互流程(组内只有单台DHCP服务器):solicit(请求DCHP服务和rapid commit)=》reply(DHCP服务器应答)

2.DHCPV6无状态配置
1)IP地址通过SLAAC的方式获取
2)其他配置(DNS、NIS、SNTP等)通过DHCPV6服务器获取
3)客户端向所有路由器节点组播发送Information request
4)服务器返回reply,带回所请求的参数

3.DHCPV6 PD(前缀代理)
1)主机不再作为DHCPV6的客户端,由前缀代理的路由器担任
2)前缀代理通过DHCPV6服务器获取主机侧的网络前缀信息
3)前缀代理通过RA报文将网络前缀信息下发至主机

2)DAD(重复地址检测)

1.IPV6取消了ARP广播功能,使用了DAD机制实现冲突检测
2.新上线的设备,获取了单播地址后(GUA\ULA\LLA),会泛洪一个NS报文。源IP为(::/128),目标IP为被请求节点组播地址(FF02::1:FFXX).
3.假如不存在地址冲突,新上线的设备没有收到对应的NA报文,则IPV6地址正式生效,可以进行IP报文转发
4.假如存在地址冲突,被请求节点会返回一个NA报文,报文中会携带被请求节点的MAC地址。源IP为被请求节点自身的单播地址,目标IP为针对本地链路的一个组播地址(FF02:1)

3)地址解析

1.IPV6取消了ARP表,使用IPV6邻居表来代替MAC地址和IP地址的映射功能
2.当需要进行IP通信时,需要先获取对方的MAC地址才能实现二层通信。请求设备会对被请求设备发出一个NS报文,报文的源地址为请求设备的单播地址(GUA\ULA\LLA),目标地址为被请求设备的被请求节点组播地址。
3.被请求设备返回一个NA报文,报文的源地址为自身的单播地址,目标地址为请求设备的单播地址

二、扩展概念

(1)IPV6基本报头的有效载荷长度,包含了扩建报头和上层协议数据单元

(2)本地链路单薄地址(FE80::/10),属于唯一单播地址(FD00::/8)的子集

(3)GUA的掩码一般都是64位,特殊情况下可以不是(前三位为000)

(4)ULA在IPV6公网中不可被路由,LLA不可被路由

(5)IPV6的地址获取方式,采用有还是无的状态,是由主机收到来自路由器的RA报文标志位决定的。当收到的RA报文(M=1,O=1)时,会采用有状态的方式获取IP;当收到的RA报文(M=0,O=0)时,会采用无状态的方式生成IP。

(6)每个单播地址(GUA\ULA\LLA),都会生成对应的被请求节点组播地址

(7)邻居发现和DAD过程中,都是请求设备对被请求设备发出NS报文,两者的异同在于:

相同点:
NS报文的目标地址都是被请求节点组播地址
不同点:
邻居发现过程中,NS报文的源地址为本机单播地址。NA报文
DAD过程中,NS报文的地址为::/128。当不存在

(8)GUA和ULA的网络前缀中会带有子网ID的字段,子网ID的属性由3个bit来表示,分别为:

000:loopback
010:服务器使用
100-111:用户使用

(9)IPV6路由器请求过程中,RS报文的DIP为FF02:2,指向本地链路的所有路由器节点,RA报文的DIP为FF02:1,指向本地链路的所有终端节点

(10)IPV6地址相同的双方,同时进行DAD的时候,先收到对方NS报文的会先放弃自己的地址

(11)主机上线过程中,LLA生成并经过DAD检测后,紧接着的下一步就是进行路由器发现。主机根据收到的RA报文的标志位(M、O),判断通过哪种方式自动获取IP

(12)对DHCPV6中继进行组播时,DIP为FF02::1:2

(13)DHCPV6客户端掉线后重新上线,会对服务器发送confirm报文,服务器返回reply

(14)DHCPV6客户端需要释放IP地址时,会对服务器发送release报文,服务器返回reply

(15)DHCPV6客户端需要续约IP地址时,会对服务器发送renew报文,服务器返回reply

(16)自动获取生成的IPV6地址,同样要经过DAD流程

三、疑问

(1)IPV6和IPV4的IP地址获取方式有什么异同?

答:IPV4的IP地址获取方式只有两种:手动配置和DHCP
IPV6的IP地址获取方式有三种:手动配置、DHCP、SLAAC

(2)IPV6基本报头的载荷长度,包含了扩展报头吗

答:包括。(扩展报头+上层协议数据单元)的长度

(3)IPV6为什么取消了广播

答:IPV6的组播替代了广播的作用,通过组播实现了本地链路的广播,准确度更高,更节省网络资源。

(4)什么叫被请求节点

答:被请求节点,举个例子当主机不知道邻居的MAC地址,或者不知道自己的IP是否重复的情况下,需要对特定的组进行询问。这个被询问的组就是被请求节点,这个组的地址就是被请求节点组播地址。

(5)IPV6的有状态地址配置过程中,ICMPV6协议起到了什么作用

答:DHCPV6服务器和客户端确认关系后,服务器会对客户端发送RA报文,报文里含有完整的128位IPV6地址。

(6)设备上线后,默认配置的IPV6地址有哪些?

1.LLA
2.GUA(手动配置/DHCPV6/SLAAC)
3.::1/128(环回地址)
4.环回节点的组播地址:FF01:1
5.本地链路的组播地址:FF02:1
6.LLA生成的被请求节点组播地址:FF02::1:FFXX
7.ULA生成的被请求节点组播地址:FF02::1:FFXX

四、配置与实验

五、其他概念

(1)NIS:网络信息服务
用于对域内操作系统的配置管理
(2)SNTP:简单网络时钟协议
有NTP修改而来,用于公网中的时钟同步
(3)支持IPV6的路由协议有:OSPFV3、IS-IS FOR IPV6、BGP4+、PIM

datacom-IPV6相关推荐

  1. 华为Datacom:认识网络设备

    华为Datacom:认识网络设备 伴随着网络的飞速发展,传统的R*S课程也慢慢开始不能适应,datacom至此衍生而出. 网络设备硬件: 1.主控板(MPU):主控板提供了整个系统的控制平面和管理平面 ...

  2. IPv6 与 IPv4现状

    IPv6 与 IPv4现状 一.概述 (1) IPv4可提供bai4,294,967,296个地址,IPv6将原来的32位地址空间增大du到128位,数目是zhi2的128次方.能够对地球上每平方米d ...

  3. DCN-cs6200 ipv6 isatap 隧道

    DCN-cs6200 ipv6 isatap 隧道: SW-1配置: CS6200-28X-EI>enable CS6200-28X-EI#config terminal CS6200-28X- ...

  4. DCN-cs6200 ipv6 6to4隧道

    DCN-cs6200 ipv6 6to4隧道: SW-1配置: CS6200-28X-EI>enable CS6200-28X-EI#config terminal CS6200-28X-EI( ...

  5. IPv6地址分类及表示方法

    对于IPv4地址,我们知道分为A类.B类.C类.组播地址和留用地址,几大类,ABC类地址中还会有不同功能的如广播地址.私有地址等类型.那么IPv6的地址是怎么分类的呢?本文就带大家初步了解一下. 先说 ...

  6. IPV6的设置问题!

    最近一段在研究IPV6,在网上搜了好多资料,但是感觉大部分都不实在,都是泛泛而谈,实用性不强,故决定做点什么!正所谓该出手时就出手,风风火火闯九州哦~~ IPV6设置步骤: 1.首先查看你时候安装了I ...

  7. OSS正式支持IPv6公测

    背景 6月20日阿里云宣布全面支持IPv6, 随后阿里云开放对象存储OSS也逐步开始向用户公测. 公测步骤 正常使用IPv6服务,除了OSS端支持还需要客户端支持,我们做一些检查证明客户端具备访问 I ...

  8. 在全面部署 IPV6 前,你需要了解都在这儿

    IPv6 的发展形势 近日,中办国办印发<推进互联网协议第六版(IPv6)规模部署行动计划>(以下简称<计划>),加快推进基于 IPv6 的下一代互联网规模部署,计划指出到 2 ...

  9. 为什么 IPv6 难以取代 IPv4

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 网络层协议承担了分组(Packet)转发和路由选择两大功能,它能够 ...

  10. IPv6的一些特殊地址

    IPv6地址分为3种类型,它们是: 单播地址,组播地址,任意播地址 单播地址:可聚合全球单播地址,链路本地地址,站点本地地址和其他特殊单播地址 IPv6全球单播地址,格式前缀为2000::/3 ipv ...

最新文章

  1. 高瓴投资,顶配创业团队,dora 诚招前端 / Flutter
  2. ubuntu12.10下安装mysqlworkbench出现“Dependency is not satisfiable: libctemplate0”问题的解决方案...
  3. 目标检测第5步:如何在Windows 10系统下,搭建YOLOv5(5.0)环境?保姆级,没有人比这个更详细了(更新时间2022.3.22)
  4. 移动端(手机端)页面自适应解决方案—rem布局篇
  5. bat ping 返回值_清清楚楚玩游戏!10.10版本,赛娜被动层数可以ping给队友看了
  6. sdut2355Binary Search Heap Construction
  7. java窗口按钮位置设置
  8. 河源戴尔服务器型号,【河源DELL(戴尔)磁盘阵列】河源DELL(戴尔)磁盘阵列报价及图片大全-列表版-ZOL中关村在线...
  9. python 视频清晰度_python识别视频黑屏或者低清晰度
  10. AI智能名片系统源码
  11. cogs 双服务点设置
  12. 抵制微信公众号,从我做起
  13. timer延迟1us_STM32 Systick定时器在实现1us延时的问题与解决
  14. 计算机一级考试瓜果产量,全国计算机等级考试一级B考试(最新样题).doc
  15. 华为服务器BMC方式安装系统-官方文档解读
  16. ATT7022系列STM32F1的HAL库读写操作流程
  17. 南开大学张昊计算机,张昊(东北大学工商管理学院副教授)_百度百科
  18. AI对供应链物流有啥影响 听这位业内大牛给你解释
  19. JavaScript第八课
  20. 怀揣一颗赤子之心,他回国创业,逐步实现自己的产业梦

热门文章

  1. 杭州java好找工作吗_【java】我是学java的应届毕业生,来杭州一个多星期了,还没找到工作,能指点...
  2. 山东大学项目实训——地图圈系统——微信小程序(16)
  3. 【HDOJ】4602 Partition_天涯浪子_新浪博客
  4. 数理逻辑4 -- 公理化集合论18
  5. 夏商与西周》第四十二章之昭王伐楚(二)
  6. 生信常见文件格式 bed
  7. (00)Chronicle Queue 介绍
  8. 代码随想录训练营day60
  9. 代码优化就一个原则-消除冗余
  10. 中芯微随身WIFI破解实体SIM卡槽(不拆机,无需切卡密码)