IPv6简介和结构以及IPv4到IPv6的过渡技术

IPv6是Internet Protocol Version 6的缩写,其中Internet Protocol译为“互联网协议”。IPv6是IETF(互联网工程任务组,Internet Engineering Task Force)设计的用于替代现行版本IP协议(IPv4)的下一代IP协议

由于IPv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍

推动IPv6发展的主要问题是IPv4地址空间即将耗尽。IPv6也提供了一些新的特性和和改善措施:

1、设计回归简洁、透明,提高实现效率,减少复杂性

2、为新出现的移动业务提供支持

3、重新引入端到端安全和QoS

Ipv6的优点

  • 128位地址结构,提供充足的地址空间
  • 层次化的网络结构,提高了路由效率
  • IPv6报文头简洁,灵活,效率更高,易于扩展

IPv6和IPv4相比,去除了IHL、Identification、Flags、Fragment Offset、Header Checksum、Options、Paddiing域,只增了流标签域Flow Label域,另外,IPv6为了更好支持各种选项处理,提出了扩展头的概念

(4)支持自动配置,即插即用

(5)支持端到端安全(IPSec)

(6)支持移动特性

(7)新增流标签功能,更利于支持QoS

IPv6地址结构

1、IPv6地址表示

IPv6地址包括128比特,由使用由冒号分隔的16比特的十六进制数表示。

另外,对于中间比特连续为0的情况,还提供了简易表示方法―――把连续出现的0省略掉,用::代替(注意::只能出现一次,否则不能确定到底有多少省略的0)

1080:0:0:0:8:800:200C:417A    等价于 1080::8:800:200C:417A

FF01:0:0:0:0:0:0:101           等价于 FF01::101

1080:0:0:0:8:0:0:417A          等价于1080::8:0:0:417A

不同于IPV4地址,IPV6地址需要用[]括起来才可以被浏览器访问,上面一个就要在浏览器中输入http://[2001:cdba:0000:0000:0000:0000:3257:9652]才可以被浏览器识别。另 IE6不认IPV6地址

2、IPv6地址前缀表示

ipv6-address/prefix-length

2001:cdba:0000:0000:0000:0000:3257:9652/64

首码               介面识别字    首码长度

ipv6-address为16进制表示的128比特地址;prefix-length为10进制表示的地址前缀长度。

3、IPv6地址分类

RFC2373中定义了多种IPv6地址类型

IPv6地址分为单播地址、泛播地址、多播地址。和IPv4相比,取消了广播地址类型,以更丰富的多播地址代替,同时增加了泛播地址类型

3.1、IPv6单播地址

所有格式前缀不是多播格式前缀(1111 1111)的IPv6地址都是IPv6单播格式(泛播和IPv6单播格式相同)目前广泛使用的是可聚合全球单播地址、站点本地地址和链路本地地址。

IPv6单播地址由子网前缀和接口ID两部分组成,子网前缀由IANA、ISP和各组织分配。接口标识符目前定义为64比特,可以由本地链路标识生成或采用随机算法生成以保证唯一性

IPv6单播地址有以下六种类型:

1-Aggregate Global Unicast Address   2xxx:xxxxx/3 – 3FFF: :FFFF
2001::/16 IPV6因特网地址
2002::/16 6to4过渡地址
2-Link Local Address              FE80::/10   (前10位以FE80开头)
3-Site Local Address (Private)       FEC0::/10
4-Unspecified Address              0:0:0:0:0:0:0:0/128 => ::/128
5-Loopback Address                0:0:0:0:0:0:0:1/128 => ::1/128
6-IPv4 Compatible Address            ::192.168.30.1 => ::C0A8:1E01

3.2、IPv6泛播地址

IPv6泛播地址格式和IPv6单播地址相同,用来标识一组接口的地址。一般这些接口属于不同的节点。发往泛播地址的报文被送到这组接口中与其最近的接口

3.3、IPv6多播地址(组播)

前缀:FF00::/8   占用了0.38%的IPV6地址空间

Flags域

标志位为0000表示是永久保留的组播地址,分配给各种技术使用
标志位为0001表示是用户可使用的临时组播地址
Scope域

范围段定义了组播地址的范围,其定义如下:
二进制    十六进制    范围类型
0001          1       本地接口范围
0010          2       本地链路范围
0011          3       本地子网范围
0100          4       本地管理范围
0101          5       本地站点范围    类似组播的私网地址
1000          8       组织机构范围
1110          E       全球范围        类似组播的公网地址

group ID域

标识多播组(可能是永久的,也可能是临时的,范围由scope定义)

下面是一些组播指定地址:
(1)        保留的多播地址:

FF00::~FF0F::        (共16个地址)

(2)        所有节点的地址

FF01:0:0:0:0:0:0:1   (节点本地)

FF02:0:0:0:0:0:0:1   (链路本地)

(3)        所有路由器地址

FF01:0:0:0:0:0:0:2   (节点本地)

FF02:0:0:0:0:0:0:2   (链路本地)

FF05:0:0:0:0:0:0:2   (站点本地)

(4)        被请求节点的地址

FF02:0:0:0:0:1:FFXX:XXXX

 

以下IPV6地址比较特殊:

 

■::/96   即0:0:0:0:0:d:d:d:d 兼容IPV4地址

■::/128  即0:0:0:0:0:0:0:0:0  不确定地址。它不能分配给任何节点。它的一个应用示例是初始化主机时,在主机未取得自己的地址以前,可在它发送的任何IPv6包的源地址字段放上不确定地址。不确定地址不能在IPv6包中用作目的地址,也不能用在IPv6路由头中

■::1/128 即0:0:0:0:0:0:0:0:1 回环地址。节点用它来向自身发送IPv6包。它不能分配给任何物理接口。功能很像我们熟悉的127.0.0.1

■2001:db8::/32 即2001:db8:0:0:0:d:d:d:d  可以理解为保留地址,共特殊目的使用。

■ ff01::1/128(或者只是ff01::1)。接口本地作用域的所有节点多播地址。

■ ff02::1/128(或者只是ff02::1)。链路本地作用域的所有节点多播地址,与IPv4中的广播地址类似。

■ ff02::2/128(或者只是ff02::2)。链路本地作用域的所有路由器多播地址。

■ ff05::2/128(或者只是ff05::2)。站点本地作用域的所有路由器多播地址。

■ 2002::/16。该前缀用于6to4寻址。

■ ff00::/8。用于多播地址。

■ fe80::/64。链路本地地址,它是一种自动分配的IP地址,类似于在IPv4中的自动专用IP地址(APIPA)。如果看到接口分配了一个这样的地址,表示DHCPv6服务器不可用。更多信息可参看本小节的”链路本地地址”部分。

■ fc00::/8或fd00::/8。ULA可以在Intranet上路由,不能在Internet上路由。ULA在功能上与私有IPv4网络(10.0.0.0/8,172.16.0.0/12和192.168.0.0/16)类似,因为它们允许创建复杂的内部网络,并且无需分配公共地址空间。

 

IPv6全球单播地址空间分配

因特网分配地址权威机构(IANA)负责IPv6地址空间的分配。目前IANA从整个可聚合全球单播地址空间(格式前缀为001)中取2001::/16进行分配。

RFC2450中描述了推荐的地址分配策略。

上图可聚合全球单播的推荐分配方式

l              FP:格式前缀,对于可聚合全局单播固定为001。

l              TLA ID:顶级聚合标识符。此域由IANA分配给指定的注册机构。

l              Sub-TLA:次顶级聚合标识符。此域由向IANA注册的机构为满足一定条件的组织分配。这些组织一般是具有一定规模的ISP。

l              NLA ID:下一级聚合标识符。此域由地址注册机构或其下分配了Sub-TLA的组织分配。

l              SLA ID:站点级聚合标识符。此域一般为组织或企业内部进行子网划分使用。

IANA指定的注册机构则从地址空间2001::/16分配/23前缀,具体如下:

l              2001:0200::/23 到 2001:0C00::/23 分配给亚太地区(APNIC)

l              2001:0400::/23 分配给美国(ARIN)

l              2001:0600::/23到2001:0800::/23 分配给欧洲和中东(RIPE NCC)

这些注册机构再从IANA得到的地址空间分配/32前缀给IPv6 ISP,IPv6 ISP再从/32前缀中分配/48前缀给每个客户。/48前缀的地址空间还可以进一步分为/64前缀的子网。这样每个客户最大可以有65535个子网。

IPv6基本功能

IPv6基本功能包括IPv6邻居发现协议(邻居发现、路由器发现、无状态地址自动配置、重定向)、IPv6路径MTU发现以及IPv6域名解析。其中路由器发现和无状态地址自动配置是IPv6的新增功能,邻居发现功能类似于IPv4 ARP,但做了改进和增强。

Ipv6的安全性(IPsec)

IPv6规范中对两个安全载荷的描述:身份验证头(AH)和封装安全载荷。一个扩展头提供身份验证,该过程使得分组的接收方可以相信源地址通过身份验证处理,而且分组在传输过程中没有被篡改,另外一个扩展头保证只有合法的接收方能够阅读报文内容。这两个机制都是基于安全关联的概念。

IPv6经过身份验证和加密的分组都能传达一个安全参数 (SPI),

SPI一般是作为秘钥交换过程中的一部分商定。

SPI 由这个接收方进行选定。

多播发送一组接受时,SPI对该组成员有效,成员把组地址和SPI的结合跟秘钥、算法和其他参数相关联。

 

IPv4向IPv6过渡技术

当前,大量的网络是IPv4网络,随着IPv6的部署,很长一段时间是IPv4与IPv6共存的过渡阶段。通常将IPv4向IPv6过渡分为3个阶段:

初始阶段 – 共存阶段 – 主导阶段

 

过渡阶段所采用的过渡技术主要包括:

双栈技术:双栈节点与IPv4节点通讯时使用IPv4协议栈,与IPv6节点通讯时使用IPv6协议栈。

隧道技术:提供了两个IPv6站点之间通过IPv4网络实现通讯连接,以及两个IPv4站点之间通过IPv6网络实现通讯连接的技术。

IPv4/IPv6协议转换技术:提供了IPv4网络与IPv6网络之间的互访技术。

 

 

 

IPv6/IPv4双协议栈

l              双栈

l              DSTM

 

 

 

 

 

 

 

 

 

隧道(tunnel)是指一种协议封装到另外一种协议中的技术。隧道技术只要求隧道两端(也就是两种协议边界的相交点)的设备支持两种协议。IPv6穿越IPv4隧道技术提供了利用现有的IPv4网络为互相独立的IPv6网络提供连通性,IPv6报文被封装在IPv4报文中穿越IPv4网络,实现IPv6报文的透明传输。

 

 

用于IPv6穿越IPv4网络的隧道技术有:

l              IPv6手工配置隧道

l              IPv4兼容地址自动隧道

l              6to4自动隧道

l              ISATAP自动隧道

l              IPv6 over IPv4 GRE隧道

l              隧道代理技术

l              6over4隧道

l              BGP隧道

l              Teredo隧道

 

IPv6与IPv4互通技术

IPv6穿越IPv4技术是为了实现IPv6节点之间的互通,而IPv6/IPv4互通技术是为了实现不同协议之间的互通。也就是使IPv6主机可以访问IPv4主机,IPv4主机可以访问IPv6主机。相关的技术有:

l              SIIT(Stateless IP/ICMP Translation)

l              NAT-PT

l              DSTM(Dual Stack Transition Mechanism)

l              SOCKs64

l              传输层中继(TRT)

l              BIS(Bump in the Stack)

l              BIA(Bump in the API)

 

 

 

 

Ipv6技术白皮书https://wenku.baidu.com/view/c236cb36f111f18583d05a94.html?pn=50

你可能感兴趣的:(网络)