IPv4协议是目前广泛部署的因特网协议。在因特网发展初期,IPv4以其协议简单、易于实现,互操作性好的优势而得到快速发展。但随着因特网的迅猛发展,IPv4设计的不足也日益明显,IPv6的出现,解决了IPv4的些弊端
一,IPv6基础
1.IPv6介绍
IPv6是 Internet Protocol Version6的缩写,其中 Internet Protocol译为“互联网协议”。IPv6是ETF设计的用于替代现行版本IP协议的下一代IP协议,号称可以为全世界的每一粒沙子编上一个网址。
由于IPV4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍。
虽然IPv6在全球范围内还仅仅处于研究阶段,许多技术问题还有待进一步解决。但总体来说,全球IPv6技术的发展不断进行着,并且随着|Pw4消耗殆尽,许多国家已经意识到了|Pv6技术所带来的优势,特别是中国,通过一些国家级的项目,推动了IPv6下一代互联网全面部署和大规模商用。随着|Pv6的各项技术日趋完美
成本过高、发展缓慢、支持度不够等问题将很快淡出人们的视野。
二,IPv6地址规划
IPv6的地址长度为128比特,是IPV4地址长度的4倍。于是IPv4点分十进制格式不再适用,采用十六进制表示
IPv6有3种表示方法
(1)冒号分隔十六进制表示法,格式为 X: X:X:X:X:X:X:X:,其中每个X表示地址中的16比特,以十六进制表示
例如
ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
这种表示法中,每个X的前导0是可以省略的,例如
2001:0DB8:0000:0023:0008:0800:200c:417A→2001:D880:23:8:800:200c:417A
(2)0位压缩表示法,在某些情况下,一个|Pv6地址中间可能包含很长的一段0,可以把连续的段0
压缩为:: 。但为保证地址解析的唯一性,地址中::只能出现一次,例如:
FF01:0:0:0:0:0:0:1101→FF01::1101
00:0:0:0:0:0:1→::1
0:0:0:0:0:0:0→::
(3)内嵌IPv4地址表示法,为了实现IPv4IPv6互通,IPv4地址会嵌入IPv6地址中,此时地址常表示为
X:X:X:X:X:d.d.d.d,前96比特采用冒号分隔十六进制表示,而最后32比特地址则使用IPv4的点分十进制表示。例如,:192.168.0.1与:FFF:1921680.1就是两个典型的例子,注意在前96比特中,压缩0位的方
法依旧适用。
IPv6协议主要定义了3种地址类型:单播地址( Unicast Address)、组播地址( Multicast Address)
和任播地址( Anycast Address)。与原来的IPv4地址相比,新增了“任播地址”类型,取消了原来IPv4地址中的广播地址,因为在|PV6中的广播功能是通过组播来完成的。
单播地址:IPv6单播地址标识了一个接口,由于每个接口属于一个节点,因此每个节点任何接口上的单播
地址都可以标识这个节点。发往单播地址的报文,由此地址标识的接口接收。
组播地址:用来标识一组接口(通常这组接口属于不同的节点),类似于PV4中的组播地址。发送到组
播地址的数据报文被传送给此地址所标识的所有接口。
任播地址:任播地址标识一组网络接口(通常属于不同的节点)。目标地址是任播地址的数据包将发送给
其中路由意义上最近的一个网络接口
三,IPv6报文格式
IPv6报文由IPv6基本报头、IPv6扩展报头以及上层协议数据单元3部分组成。上层协议数据单元一般由上层协议报文和它的有效载荷构成,有效载荷可以是一个ICMPv6报文、一个TCP报文或一个UDP报文
1.基本报头
IPv6基本报头有8个字段,固定大小为40字节,每一个IPv6数据报都必须包含报头。基本报文提供报文转发的基本信息,会被转发路径上面的所有设备解析。
IPv6主机无状态自动配置过程如下。
(1)根据接口标识产生链路本地地址,。
(2)发出邻居请求,进行重复地址检测。
(3)如地址冲突,则停止自动配置,需要手工配置
4)如不冲突,链路本地地址生效,节点具备本地链路通信能力
(5)主机会发送RS报文(或接收到设备定期发送的RA报文)
(6)根据RA报文中的前缀信息和接口标识得到PV6地址