IPv6 - 地址类型和格式

  • 十六进制数系统

    在介绍 IPv6 地址格式之前,我们先了解一下十六进制数字系统。十六进制是使用基数(基数)为 16 的位置数字系统。为了以可读格式表示值,该系统使用 0-9 符号表示从 0 到 9 的值,使用 AF 表示从 10 到 15 的值。十六进制中的每个数字都可以表示 0 到 15 之间的值。
    [图片:换算表]
  • 地址结构

    IPv6 地址由 128 位组成,分为八个 16 位块。然后将每个块转换为由冒号分隔的 4 位十六进制数。
    例如,下面给出的是一个以二进制格式表示的 128 位 IPv6 地址,并分为八个 16 位块:
    0010000000000001 0000000000000000 0011001000111000 1101111111100001 0000000001100011 0000000000000000 0000000000000000 1111111011111011
    然后将每个块转换为十六进制并用“:”符号分隔:
    2001:0000:3238:DFE1:0063:0000:0000:FEFB
    即使转换为十六进制格式后,IPv6 地址仍然很长。IPv6 提供了一些规则来缩短地址。规则如下:
    Rule.1: 丢弃前导零:
    Block 5, 0063,前两个0可以省略,如(5th block):
    2001:0000:3238:DFE1:63:0000:0000:FEFB
    Rule.2: 如果两个以上的块包含连续的零,则将它们全部省略并替换为双冒号 ::,例如(第 6 块和第 7 块):
    2001:0000:3238:DFE1:63::FEFB
    连续的零块只能被 :: 替换一次,所以如果地址中还有零块,它们可以缩小为单个零,例如(第二个块):
    2001:0:3238:DFE1:63::FEFB
  • 接口标识

    IPv6 具有三种不同类型的单播地址方案。地址的后半部分(最后 64 位)始终用于接口 ID。系统的 MAC 地址由 48 位组成,以十六进制表示。MAC 地址被认为是全球唯一分配的。接口 ID 利用了 MAC 地址的这种唯一性。主机可以使用 IEEE 的扩展唯一标识符 (EUI-64) 格式自动配置其接口 ID。首先,主机将自己的 MAC 地址分成两个 24 位的一半。然后 16 位十六进制值 0xFFFE 被夹在 MAC 地址的这两半中,从而产生 EUI-64 接口 ID。
    [图片:EUI-64 接口 ID ]
    Conversion of EUI-64 ID into IPv6 Interface Identifier
    要将 EUI-64 ID 转换为 IPv6 接口标识符,需对 EUI-64 ID 的最高有效第 7 位进行补码。例如:
    [图片:IPV6 接口 ID ]
  • 全球单播地址

    此地址类型等效于 IPv4 的公共地址。IPv6 中的全球单播地址是全球可识别和唯一可寻址的。
    [图片:全球单播地址]
    全局路由前缀:最高有效的 48 位被指定为全局路由前缀,分配给特定的自治系统。全局路由前缀的三个最高有效位始终设置为 001。
  • 链路本地地址

    自动配置的 IPv6 地址称为链路本地地址。该地址始终以 FE80 开头。链路本地地址的前 16 位始终设置为 1111 1110 1000 0000 (FE80)。接下来的 48 位设置为 0,因此:
    [图片:链接本地地址]
    链路本地地址仅用于链路(广播段)上 IPv6 主机之间的通信。这些地址是不可路由的,因此路由器永远不会将这些地址转发到链路之外。
  • 唯一本地地址

    这种类型的 IPv6 地址是全球唯一的,但应该在本地通信中使用。该地址的后半部分包含接口 ID,前半部分分为前缀、本地位、全局 ID 和子网 ID。
    [图片:唯一本地地址]
    前缀始终设置为 1111 110。L 位,如果地址是本地分配的,则设置为 1。到目前为止,L 位为 0 的含义尚未定义。因此,唯一本地 IPv6 地址始终以“FD”开头。

    IPv6 单播地址的范围:

    [图片:IPv6 单播地址范围]
    链路本地地址的范围仅限于段。唯一本地地址在本地是全球性的,但不通过 Internet 路由,因此将其范围限制在组织的边界内。全球单播地址是全球唯一且可识别的。他们将制作 Internet v2 寻址的本质。