本文共 3228 字,大约阅读时间需要 10 分钟。
华为HCIA-datacom 学习笔记17——IPv6基础
IPv6基础
1、ipv4与ipv6 地址长度32bit IPv6:IP地址长度128bit IPv4包头(20byte~60byte) IPv6基本包头(40byte)
2、IPv4的局限性 公网地址枯竭 包头设计不合理 路由表过大,查表效率低 对ARP的依赖,导致广播泛滥
3、Pv6的优势 “无限”地址 地址层次化分配 即插即用 简化的报文头部 IPv6安全特性 保证端到端通信完整性 对移动性的支持 增强的QoS特性
4、IPv6基本包头相对于IPv4包头 删去的字段:Identification \ Fragment Offset \ Head Checksum \ Options \ Padding 保留的字段:Version \ Source Address \ Destination Address 新增的字段:Flow Label
5、IPv6基本包头字段解释 Version: 版本号,长度4bit。对于IPv6,该值为6。 Traffic Class: 流类别,长度8bit。等同于IPv4的ToS字段,表示IPv6数据包的类或优先级,主要用于QoS。 Flow Label: 流标签,长度20bit。IPv6中新增的字段,用于区分实时流量,不同的流标签+源地址可以唯一确定一条数据流,中间网络设备可以根据这些信息更加高效率的区分数据流。 Payload Length: 有效载荷长度,长度16bit。有效载荷是指紧跟IPv6包头的数据包的其他部分(即扩展包头和上层协议数据单元)。 Next Header: 下一包头,长度8bit。该字段定义紧跟IPv6包头后面的第一个扩展包头的类型,或者上层协议数据单元中的协议类型(类似于IPv4的Protocol字段)。 Hop Limit: 跳数限制,长度8bit。该字段类似于IPv4中的Time to Live字段,它定义了IP数据包所能经过的最大跳数。每经过一个路由器,该数值减一当该字段为0时,数据包将被丢弃。 Source Address: 源地址,长度128bit。表示发送方地址。 Destination Address: 目的地址,长度128bit。表示接送方地址。
6、IPv6扩展包头 Extension Header Length:扩展包头长度,长度8bit。表示扩展包头的长度(不包含Next Header 字段)。 Extension Header Data:扩展包头数据,长度可变。扩展包头的内容,为一系列选项字段和填充字段的组合。
7、IPv6地址分类 根据IPv6地址前缀,可以分为单播地址、组播地址和任播地址。 7.1 单播地址 全球单播地址(GUA):2000::/3 唯一本地地址(ULA):FD00::/8 链路本地地址(LLA):FE80::/10 单播地址(UA):标识一个接口。在IPv6中,一个接口拥有多个IPv6地址是非常常见的现象。 7.2 特殊的单播地址 7.2.1 未指定地址 0:0:0:0:0:0:0:0/128。该地址作为某些报文的源地址,比如作为重复地址检测时发送的邻居请求报文(NS)的源地址,或者DHCPv6初始化过程中客户端所发送的请求报文的源地址。 7.2.2 环回地址 0:0:0:0:0:0:0:1/128,与IPv4中的127.0.0.1作用相同,用于本地环回,可用于本地协议栈环回测试。 7.3 组播地址(MA) 标识多个接口,只有加入相应组播组的设备才会侦听发往该组播地址的报文。 组播地址一般用于“一对多”,只能作为IPv6报文的目的地址; IPv6组播地址各字段值对应的组播组类型和范围; Flags: 0000表示永久分配或众所周知 0001表示临时的
Scope:
0:预留 1:节点本地范围;单个接口有效,仅用于loop back通讯 2:链路本地范围;例如FF02::1 5:站点本地范围 8:组织本地范围 E:全球范围 F:预留 7.4 被请求节点组播地址 当一个节点具有单薄或任播地址,就会对应的生成一个被请求节点组播地址,并加入组播组。该地址主要用于邻居的发现机制和地址重复检测功能。被请求节点组播地址的有效范围为本地链路范围。 7.5 任播地址(AA) 任播地址标识一组网络接口(通常属于不同节点)。目的地址是任播地址的数据包将发送给其中路由意义上最近的一个网络接口。 任播地址可以作为IPv6报文的源地址,也可以作为目的地址。 任播报文的发起方通常为请求某一服务的主机;任播地址与单播地址在格式上无任何差异,唯一的区别是一台设备可以给多台具有相同地址的设备发送报文。7.6 网络中使用任播地址的优势
7.6.1 业务冗余 当一台服务器发生故障,任播报文的发起方能过自动与使用相同地址的另一台服务器通信,从而实现业务冗余。 7.6.2 优质服务 提供更优质的服务,任播过程涉及一个任播报文发起方和一个或多个响应方。 IPv6没有定义广播地址。在IPv6网络中,所有广播的应用层场景将被IPv6组播所取代。8、IPv6单播地址业务流程 一个接口在发送IPv6报文之前要经历地址配置、DAD。地址解析三个阶段。 8.1 地址配置 全球单播地址和链路本地地址是接口上最常见的IPv6单播地址,一个接口上可以配置多个IPv6地址。 8.2 DAD (重复地址检测)类似于IPv4中的免费ARP检测,用于检测当前地址是否与其他接口冲突。 8.3 地址解析 类似于IPv4中的ARP请求,通过ICMPv6报文形成IPv6地址与数据链路层地址(一般是MAC地址)的映射关系。 8.4 NDP(邻居发现协议) 无状态自动配置是IPv6的一个亮点功能,它使得IPv6主机能够非常便捷地接入到IPv6网络中,即插即用。无状态自动配置机制使用到了ICMPv6中的路由器请求报文(RS)及路由器通告报文(RA)。 地址解析过程中使用了两种ICMPv6报文:邻居请求(NS)和邻居通告(NA)。 重复地址检测使用ICMPv6 NS和ICMPv6 NA报文确保网络中无两个相同的单播地址,所有接口在使用单播地址前都需要做DAD。
9、IPv6动态地址配置 IPv6支持地址有状态和无状态两种自动配置方式,通过ICMPv6 RA报文中的M标记和O标记来控制终端自动获取地址的方式。
10、有状态地址配置(DHCPv6)M=1,O=0 采用DHCPv6协议,IPv6客户端将从DHCPv6服务器端获取完整的128 bit IPv6地址,同时包括DNS、SNTP服务器等地址参数。 DHCPv6服务器端将会记录该地址的分配情况。 对DHCPv6服务器端的性能要求较高。 有状态地址配置多用于公司内部有线终端的地址分配,便于对地址进行管理。
11、无状态地址配置,M=0,O=0 11.1采用ICMPv6协议 使用了ICMPv6 RA功能的路由器会周期性的通告该链路上的IPv6地址前缀。 主机发送路由器查询(ICMPv6 RS)报文,路由器回府RA报文告知该链路IPv6地址前缀 主机根据路由器回应的RA报文,获得IPv6地址前缀信息,使用该地址前缀,加上本地产生的接口标识,形成单播IPv6地址。
12、DAD 重复地址检测 配置IPv6单播地址,主机和路由器都会通过ICMPv6报文进行DAD,仅当DAD通过后才会使用该单播地址。
13、地址解析 IPv6 使用ICMPv6的NS和NA报文来取代IPv4中的地址解析功能。 IPv6的地址解析不再使用ARP,也不再使用广播方式,而是采用和DAD相同的NS和NA报文解析数据链路层地址。
整理: 毛尚杰、陈诺、江泽明、梁文婷 排版: 梁汉荣 审核: 蔡宗唐
点击下方“正月十六工作室”查看更多学习资源
转载地址:https://jan16.blog.csdn.net/article/details/115545991 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!