深入分析IPv6(一)

    技术2025-06-10  37

         近期互联网编号分配机构(IANA)宣布IPv4已经分配枯竭,将慢慢过渡到IPv6,微软也在第一时间宣布今年6月份将对Bing试运用IPv6,并进行相应测试,可以看出,IPv4已经慢慢退出舞台,IPv6必将是未来互联网开发行业的方向!后面我将结合《IPv6详解 卷1》进行说明,希望给大家一个很好的学习资料以供参考! 

    一 、IPv6地址

    IPv6地址是一个128位的无符号整数,用来标识一个或多个网络接口。IPv6地址分为下列3种类型。

    ◆单播(unicast)。一个单播IPv6地址标识一个网络接口。目标为一个单播地址的分组会被传送到一个网络接口上去。

    ◆任播(anycast)。任播IPv6地址标识一组网络接口,,但目标为一个任播地址的分组只会被送到那个组中的一个接口中去。IPv6任播地址的语法和单播IPv6地址是一样的,但它们具有不同的语义。由于缺乏足够的、在全球因特网中使用任播的操作经验,设置了几条限制:   1、不能将任播地址作为任意分组的源地址使用。

       2、任播地址只能分配给路由器,不能分配给主机。

    ◆多播(multicast)。IPv6多播地址标识一组网络接口。这些接口可能属于不同的节点。目标为多播地址的分组会被传送给那个组中所有的成员。IPv6多播地址是由它的前8个比特标识的:前8个比特为全1的地址就是多播地址。

     

    需要注意的是:IPv6与IPv4不同,它没有广播地址,做出这样的设计决定原因之一是:网络层的广播地址通常会造成链路级的广播,这会影响到附属链路中的所有设备,甚至包括那些根本不支持特定网络协议的设备。而IPv6网络层的“广播”是通过多播来实现的。

     

     

    二、IPv6地址的文本表示

    IPv6地址传统的文本表示是以十六进制值书写的

    如:x0:x1:x2:x3:x4:x5:x6:x7

    用":"分隔的8个16比特段来表示。典型的例子如下:

    2001 : 0DB8 : 0123 : 4567 : 89AB : CDEF : 0123 : 4567

      x0    x1     x2     x3     x4     x5     x6     x7

    每个十六进制值都是大小写无关的。

     

    从0x到07的每个16比特字段中至少要有一个十六进制数字。字段中不需要写出前导的0.如下:

    2001 :  DB8 :  123 :  1  :  0  :  0  :  0  :  1

      x0    x1     x2    x3    x4    x5    x6    x7

     

    如上所示,字段x1到x7的每个16比特的前导0都没有写出。字段x4、x5和x6为全零,通常可以将连续的全零字段合并,写成压缩的"::"形式。为避免二义性,压缩的"::"字段只能出现一次。这样,通过压缩字段x4、x5和x6可以写成下面这样:

    2001:db8:123:1::1

     

     

    IPv6网络前缀的文本表示为IPv6地址/前缀长度。前缀长度是一个十进制值,用来标识前缀的前导比特长度。例如用上面的地址和前缀长度64表示的网络前缀可以写成下列这样:

    2001:db8:123:1::1/64

     

    IPv4不同,在IPv6地址体系结构中,不允许用不连续的掩码来表示一个网络,因此,用一个数字来指定前导有效比特就足够了,在IPv6地址结构中没有网络掩码的概念。

    IPv6中有两种特殊的单播地址:环回地址和不确定地址。还回地址定义为:

    0:0:0:0:0:0:0:1 或 ::1

    不确定地址为:

    0:0:0:0:0:0:0:0 或 ::

    不确定地址是一个标记值,用来说明一个接口地址的缺失。

     

    IPv4向IPv6转换的过程中,IPv4和IPv6节点可以在一个混合网络环境中共存。为了协助这种转换的进行,定义了一些特殊的IPv6地址。这种特殊的IPv6地址是以IPv4地址作为IPv6地址的低32位比特来构建的。其余的96位用一个预分配的IPv6前缀来填充。

    格式如下:

    x0:x1:x2:x3:x4:x5:a.b.c.d

    从x0到x5是预分配的,格式如下:

    0:0:0:0:0:ffff:a.b.c.d

    压缩后如下:

    ::ffff:a.b.c.d

    例如IPv4地址192.168.0.1在IPv4和IPv6节点混合网络环境中转换到IPv6的地址就为:

    ::ffff:192.168.0.1

    最新回复(0)