IPv6地址格式和分类详解

IPv6地址格式详解

  • IPv6地址格式
  • IPv6地址表示
  • IPv6地址分类
    • 单播地址
      • 全局单播地址
      • 本地链路单播地址
      • 单一本地单播地址
    • 多播地址
    • 任意播地址
      • 任意播示例

IPv6地址格式

和IPv4地址不同,每个IPv6地址有16个字节,即128位组成。
假如某个IPv6地址全部为0,表示如下:

00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

显然,这样表示太冗长、太麻烦了,合法的IPv6地址表示采用16进制表示法,每4位用一个16进制数字来代替,而每4个十六进制数字被归为1组,一共8组。
来看一下windows下的IPv6地址:windowsIPv6地址
这里的2001:da8:215:3c01::83bb就是一个合法的IPv6地址。

IPv6地址表示

此时我们观察上个IPv6地址:
2001:da8:215:3c01::83bb
这里只出现了5组数字,那么是地址分配出了问题吗?答案是否定的,这里涉及到了IPv6地址的省略表示。
IPv6规定了两条简化的地址表示规则:

  1. 如果某一组的前缀为0,可以被省略:
    eg:
    2001:0da8:0215:3c01:0001:02fa:00ad:83bb将所有的前缀0省略,可以表示为:
    2001:da8:215:3c01:1:2fa:ad:83bb

  2. 如果某一组全部为0,那么可以省略:
    eg:
    2001:9da8:6215:3c01:0000:12fa:efad:83bb将为0的组省略,可以表示为:
    2001:9da8:6215:3c01::12fa:efad:83bb
    – (特殊的)连续的几组都为0,那么包含的冒号也可以省略:
    eg:
    2001:9da8:6215:0000:0000:0000:efad:83bb将0和中间的冒号省略,可以表示为:
    2001:9da8:6215::efad:83bb

这里需要注意几种特殊情况:

  • 每组后缀的0不可省略:
    eg:
    2001:9da8:6215:3c01:1000:12fa:efad:83bb这里的第五组假如省略了后缀的0就变成了:
    2001:9da8:6215:3c01:1:12fa:efad:83bb地址的值被改变,显然是不可行的
  • 非连续的0分组不能同时省略:
    eg:
    2001:0000:0000:3c01:0000:0000:0000:83bb假如把5个全是0的组都省略,就变成:
    2001::3c01::83bb这里会有歧义,因为不确定第一个::中间和第二个::中间分别有几个0组。

IPv6地址分类

单播地址

IPv6地址格式和分类详解_第1张图片

全局单播地址

在这里插入图片描述

本地链路单播地址

本地链路单播地址

单一本地单播地址

单一本地单播地址

多播地址

IPv6地址格式和分类详解_第2张图片

  • 多播地址格式多播地址
  • T Flag
    • 0:被预定义的,IANA定义的公认的请求节点多播地址
    • 1:非永久分配的多播地址
  • Scope
    • 0:保留
    • 1:接口本地范围
    • 2 :链路本地范围
    • 3:保留
    • 4:管理本地范围
    • 5:本地站点范围
    • 6:未分配
    • 7:未分配
    • 8:本地组织范围
    • 9:未分配
    • E:全局范围
    • F:保留

任意播地址

IPv6地址格式和分类详解_第3张图片

任意播示例

IPv6地址格式和分类详解_第4张图片

你可能感兴趣的:(IPv6)