IPv6介绍
32位的IPv4地址不够用,地址即将耗尽,为了解决IPv4地址耗尽问题,采用了以下措施:
-
采用无类别比编址CIDR,使IP地址的分配更加合理
-
采用网络地址转换NAT技术,将内网和外网地址分开
-
选用地址空间更大的IPv6技术,从根本上解决
下面是ipv6与ipv4的不同之处:
-
更大的地址空间,ipv6地址从32bit变为128bit
-
扩展性更加,允许协议继续扩充
-
支持自动配置
-
支持资源预分配
-
向ipv4兼容
-
提供高级的控制功能
IPv6基本首部和扩展首部
ipv6数据报首部
首部长度固定为40字节,称为基本首部
取消不必要功能,字段减少到8个
取消首部校验和
允许在基本首部有0或n个扩展首部
所有的扩展首部和数据合起来叫做payload(有效载荷)
基本首部 |扩展首部1 扩展首部2 … 扩展首部n | 数据部分
版本介绍ip使用的协议,ipv6的此字段总为6
通信量类用于标识数据报的重要性程度,相当于优先级(业务类型)
流标号类似于ipv4的数据报编号
有效载荷长度即除去基本首部以后的长度
下一个首部相当于ipv4的协议字段或可选字段(将分段功能放入了扩展首部中)
跳数限制相当于ipv4的TTL字段,路由器转发数据报时,将此值减去1
源地址和目的地址都为128bit
ipv6数据报扩展首部
扩展首部的基本功能如下:
-
分片 源站保证最小MTU,源站封装。端到端分片方式(不容易灵活地改变路由路径)
分片采用隧道技术传送长数据报,当路径途中的路由器需要对数据报进行分片时,将创建一个全新的数据报,全新封装原来的数据报。 -
路由
-
认证
-
高层协议TCP/UDP
-
时间戳
IPv6地址空间
1)IPv6数据报的目的地址可以是一下三种基本类型之一:
- 单播
- 多播
- 任播 目的地址是一组计算机,交付时一般给最近的计算机
2)ipv6地址表示法
- 点分十进制
- 冒号十六进制
- 冒号十六进制/十进制混合
ipv6还规定了两条简化地址规则:
-
组前缀为0可省略
如果某一组的前缀为0,则这些0可以被省略,如:
2001:0da8:0215:3c01:0001:02fa:00ad:83bb
2001:da8:215:3c01:1:2fa:ad:83bb -
冒号压缩表示
如果某一组全部为0,这些0可以省略,且出现连续的几组都为0时,包含的冒号也可以省略,用::表示。但是一个地址中只能出现一次:: ,因为无法确定每个::应该扩展多少个0,如:
2001:9da8:6215:3c01:0000:12fa:efad:83bb
2001:9da8:6215:3c01::12fa:efad:83bb2001:9da8:6215:0000:0000:0000:efad:83bb
2001:9da8:6215::efad:83bb
3)ipv6地址分配
前缀为0000 0000的地址, 是保留一小部分地址与ipv4兼容的,因为有的节点不支持ipv6,因此数据报在这两类节点之间转发时,必须进行地址转换。
IPv4向IPv6过渡
IPv6过渡采取逐步演进,必须兼容IPv4.主要有以下过渡技术:
- 双栈技术
- 隧道技术
- 协议转换技术
双栈技术
一部分主机(或路由器)同时支持v4和v6两个协议栈,双栈协议主机(路由器)既能够和v6系统通信,又能够和v4系统通信。
隧道技术
一种封装技术,用一个协议将另一种协议的数据报封装,数据报作为了内核。通过手工配置隧道的出口和入口地址,在入口节点处将v6数据包封装在v4数据包中,通过v4网络传输到出口处,出口节点进行v4数据包的解封,取出v6的数据包。
协议转换技术
主要有SIIT和NAT-PT等技术。
ICMPv6
icmpv6报文分为两大类:
- 差错报文(目的站点不可达、分组太长、超时、参数问题)
- 提供信息的报文 (回送请求、回送应答)