组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:党红梅(snowlily danghongmei@263.net)
译文发布时间:2001-4-27
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须
保留本文档的翻译及版权信息。
Network Working Group R. Hinden
Request for Comments: 2373 Nokia
Obsoletes: 1884 S. Deering
Category: Standards Track Cisco Systems
July 1998
IPv6寻址体系结构
(RFC2373: IP Version 6 Addressing Architecture)
本备忘录的状态
本文档讲述了一种Internet社区的Internet标准跟踪协议,它需要进一步进行讨论和建
议以得到改进。请参考最新版的“Internet正式协议标准” (STD1)来获得本协议的标准化
程度和状态。本备忘录的发布不受任何限制。
版权声明
Copyright (C) The Internet Society (1998). All Rights Reserved.
摘要
本技术规范定义I P v 6的寻址体系结构。本文件包括I P v 6 寻址模型、I P v 6 地址的
文字表示、I P v 6 单播地址、任意点播地址和组播地址的定义以及I P v 6 节点需要的地址。
目 录
摘要 1
1.简介 2
2. IPv6 寻址 2
2.1 寻址模型 3
2.2 地址的文本表示 3
2.3 地址前缀的文本表示 4
2.4 地址类型表示 5
2.5 单播地址 5
2.5.1 接口标识符 6
2.5.2 未指定地址 7
2.5.3 回返地址 7
2.5.4 嵌有IPv4 地址的IPv6 地址 7
2.5.5 NSAP 地址 7
2.5.6 IPX 地址 8
2.5.7 可集聚全球单播地址 8
2.5.8 本地用IPv6 单播地址 8
2.6 任意点播地址 9
2.6.1要求的任意点播地址 9
2.7 组播地址 10
2.7.1 预定义的组播地址 11
2.7.2 新IPv6 组播地址的分配 12
2.8 节点要求的地址 12
3. 安全性考虑 13
附录A 创建EUI-64 接口标识符 13
A.1 具有EUI-64 标识符的链路或节点 13
A.2 具有IEEE 802 48 位MAC 地址的链路或节点 13
A.3 具有非全球标识符的链路 14
A.4 无标识符的链路 14
附录B 文本表示的ABNF 描述 15
附录C 对RFC 1884 的修改 15
参考资料 16
作者联系方法 17
版权说明 17
1.简介
本技术规范定义了I P v 6 的寻址体系结构。包括当前定义的I P v 6地址格式的详细描
述。
作者衷心感谢Paul Francis, Scott Bradner, Jim Bound, Brian Carpenter, Matt
Crawford,Deborah Estrin, Roger Fajman, Bob Fink, Peter Ford, Bob Gilligan, Dimitry Haskin,
Tom Harsch,Christian Huitema, Tony Li, Greg Minshall, Thomas Narten, Erik Nordmark, Yakov
Rekhter, Bill S i m p s o n 和Sue Thomson 所做的努力。
2. IPv6 寻址
I P v 6 地址为接口和接口组指定了1 2 8 位的标识符。有三种地址类型:
· 单播。一个单接口有一个标识符。发送给一个单播地址的包传递到由该地址标识的接口
上。
· 任意点播。一般属于不同节点的一组接口有一个标识符。发送给一个任意点播地址的包
传送到该地址标识的、根据选路协议距离度量最近的一个接口上。
· 组播。一般属于不同节点的一组接口有一个标识符。发送给一个组播地址的包传递到该
地址所标识的所有接口上。
在I P v 6 中没有广播地址,它的功能正在被组播地址所代替。在本文中,地址内的字
段给
予一个规定的名字,例如“用户”。当名字后加上标识符一起使用(如“用户I D ”)时,
则用来表示名字字段的内容。当名字和前缀一起使用时(如“用户前缀”)则表示一直到包括
本字段在内的全部地址。
在I P v 6 中,任何全“0 ”和全“1 ”的字段都是合法值,除非特殊地排除在外的。
特别是前缀可以包含“0 ”值字段或以“0 ”为终结。
2.1 寻址模型
所有类型的I P v 6 地址都被分配到接口,而不是节点。一个I P v 6 单播地址属于单个
接口。因为每个接口属于单个节点,多个接口的节点,其单播地址中的任何一个可以用作该
节点的标识符。所有接口至少需要有一个链路本地单播地址(见2 . 8 节额外需要的地址)。
一个单接口可以指定任何类型的多个I P v 6 地址(单播、任意点播、组播)或范围。具有大于
链路范围的单播地址,对这样的接口是不需要的,也就是从非邻居或者到非邻居的这些接口,
不是任何I P v 6包的起源或目的地。这有时适用于点到点接口。对这样的寻址模型有一个
例外:
如果处理多个物理接口的实现呈现在I n t e r n e t 层好像一个接口的话,一个单播地址
或一组单播地址可以分配给多个物理接口。这对于在多个物理接口上负载共享很有用。
目前的I P v 6 延伸了I P v 4 模型,一个子集前缀与一条链路相关联。多个子集前缀可
以指定给同一链路。
2.2 地址的文本表示
用文本串表示的I P v 6 地址有三种规范形式:
(1) 优先选用的形式为x : x : x : x : x : x : x : x :,其中x 是8 个1 6 位地址段的十六进
制值。
例如:
FEDC : BA98 : 7654 : 3210 : FEDC : BA98 : 7654 : 3210
1080 : 0 : 0 : 0 : 8 : 800 : 200C : 417A
个别字段中前面的0 可以不写,但是每段必须至少有一位数字( ( 2 )中描述的情形除
外)。
(2) 在分配某种形式的I P v 6 地址时,会发生包含长串0 位的地址。为了简化包含0 位
地址的书写,指定了一个特殊的语法来压缩0 。使用“::”符号指示有多个0 值的16 位
组。“::”符号在一个地址中只能出现一次。该符号也能用来压缩地址中前部和尾部的0 。
用下面的例子来说明:
1 0 8 0 : 0 : 0 : 0 : 8 : 8 0 0 : 2 0 0 C : 4 1 7 A 单播地址
F F 0 1 : 0 : 0 : 0 : 0 : 0 : 0 : 1 0 1 组播地址
0 : 0 : 0 : 0 : 0 : 0 : 0 : 1 回返地址
0 : 0 : 0 : 0 : 0 : 0 : 0 : 0 未指定地址
可用下面的压缩格式表示:
1 0 8 0 : : 8 : 8 0 0 : 2 0 0 C : 4 1 7 A 单播地址
F F 0 1 : : 1 0 1 组播地址
: : 1 回返地址
: :未指定地址
(3) 当谈到I P v 4 和I P v 6 节点这样一个混合环境时,有时更适合于采用另一种表示
形式:x : x : x : x : x : x : d . d . d . d ,其中x 是地址中6 个高阶1 6 位段的十六进制值,d 是
地址中4 个低价8 位段的十进制值(标准I P v 4 表示)。举例说明:
0 : 0 : 0 : 0 : 0 : 0 : 1 3 . 1 . 6 8 . 3
0 : 0 : 0 : 0 : 0 : F F F F : 1 2 9 . 1 4 4 . 5 2 . 3 8
写成压缩形式为:
: : 1 3 . 1 . 6 8 . 3
: : F F F F. 1 2 9 . 1 4 4 . 5 2 . 3 8
2.3 地址前缀的文本表示
I P v 6 地址前缀的表示方式和I P v 4 地址前缀在C I D R 中的表示方式很相似。一个
I P v 6 地址前缀可以表示为如下的形式:
I P v 6 地址/前缀长度
其中,I P v 6 地址是2 . 2 节中表示的任何形式的I P v 6 地址。而前缀长度是组成前缀
的十进制值,说明地址最左边的连续的地址位的长度。
例如,6 0 位长的前缀1 2 A B 0 0 0 0 0 0 0 0 C D 3 (十六进制)可用下面的合法格式来表
示:
1 2 A B : 0 0 0 0 : 0 0 0 0 : C D 3 0 : 0 0 0 0 : 0 0 0 0 : 0 0 0 0 : 0 0 0 0 / 6 0
1 2 A B : : C D 3 0 : 0 : 0 : 0 : 0 / 6 0
1 2 A B : 0 : 0 : C D 3 0 : : / 6 0
但是,下面的表示方式是不合法的。
1 2 A B : 0 : 0 : C D 3 / 6 0 在任何一个1 6 位段的地址块中,可以省略前部的0 。但
不能省略尾部的0 。
1 2 A B : : C D 3 0 / 6 0 /左边的地址会展开成1 2 A B : 0 0 0 0 : 0 0 0 0 : 0 0 0 0 : 0 0
0 0 : 0 0 0 : 0 0 0 0 : C D 3 0
1 2 A B : : C D 3 / 6 0 /左边的地址会展开成1 2 A B : 0 0 0 0 : 0 0 0 0 : 0 0 0 0 : 0 0 0
0 : 0 0 0 : 0 0 0 0 : 0 C D 3
当书写节点地址和它的子网前缀两者时,可以组合成如下表示:
节点地址:
1 2 A B : 0 : 0 : C D 3 0 : 1 2 3 : 4 5 6 7 : 8 9 A B : C D E F
和它的子网号:
1 2 A B : 0 : 0 : C D 3 0 : : / 6 0
可以缩写成为:
1 2 A B : 0 : 0 : C D 3 0 : 1 2 3 : 4 5 6 7 : 8 9 A B : C D E F / 6 0
2.4 地址类型表示
一个I P v 6 地址的具体类型是由地址的前面几位来指定的。包含这前面几位的可变长
度字段称为格式前缀( F P )。这些前缀的初始分配如下:
分配 前缀(二进制) 占地址空间的百分率
————————————————————————————
保留 0000 0000 1 / 2 5 6
未分配 0000 000 11 / 2 5 6
为N S A P地址保留 0000 001 1 / 1 2 8
为I P X 地址保留 0000 010 1 / 1 2 8
未分配 0000 011 1 / 1 2 8
未分配 0 0 0 0 1 1 / 3 2
未分配 0 0 0 1 1 / 1 6
可集聚全球单播地址 0 0 1 1 / 8
未分配 0 1 0 1 / 8
未分配 0 11 1 / 8
未分配 1 0 0 1 / 8
未分配 1 0 1 1 / 8
未分配 11 0 1 / 8
未分配 111 0 1 / 1 6
未分配 1111 0 1 / 3 2
未分配 1111 10 1 / 6 4
未分配 1111 11 0 1 / 1 2 8
未分配 1111 1110 0 1 / 5 1 2
链路本地单播地址 1111 1110 10 1 / 1 0 2 4
站点本地单播地址 1111 1110 11 1 / 1 0 2 4
组播地址 1111 1111 1 / 2 5 6
注:(1) 未指定地址(见2 . 5 . 2 节)、回返地址(见2 . 5 . 3 节),和嵌入I P v 4 地址的I P
v 6 地址(见2 . 5 . 4 节)的分配在格式前缀空间0 0 0 0 - 0 0 0 0 以外。
(2) 除了组播地址( 1111 1111 )外,格式前缀空间0 0 1 到111 ,在E U I - 6 4 格式中都
要求必须有64 位接口标识符。参见2 . 5 . 1 节中的定义。
这样的分配方案支持可集聚地址、本地用地址和组播地址的直接分配,并有保留给N S
A P地址和I P X 地址的空间。其余的地址空间留给将来用。可用于已有使用的扩展(如附加
可集聚地址等)或者新的用途(如将定位符和标识符分开)。地址空间的1 5 %是初始分配的,
其余8 5 %的地址空间留作将来使用。
单播地址和组播地址是由地址的高阶字节值来区分的:值为F F ( 1111 1111 )标识一个
地址为组播地址,其他值则标识一个地址为单播地址。任意点播地址取自单播地址空间,和
单播地址在语法上是无法区分的。
2.5 单播地址
I P v 6 单播地址是用连续的位掩码集聚的地址,类似于C I D R 的I P v 4 地址。I P v 6
中的单播地址分配有多种形式,包括全部可集聚全球单播地址、N S A P 地址、I P X 分级
地址、站点本地地址、链路本地地址以及运行I P v 4 的主机地址。将来还可以定义另外的
地址类型。
I P v 6 节点对I P v 6 地址的内部结构可能知之甚多或知之甚少,这是由节点的作用决
定的(例如,主机还是路由器)。在最简单的情况下,节点把单播地址(包括它本身)看成是无
内部结构的、如下图所表示的1 2 8 位地址。
| 128 bits |
+-----------------------------------------------------------------+
| 节点地址 |
+-----------------------------------------------------------------+
一个稍完善但仍很简单的主机可能还知道它所连接的链路的子网前缀,在这种场合下,
不同地址可能有不同值。更完善的主机可能知道单播地址中其他分级边界。虽然一个非常简
单的路由器可能对I P v 6单播地址的内部结构一无所知,但为了运行选路协议,路由器对
一个或多个分级边界要有更为普遍的知识。知道边界随路由器不同而不同,是由路由器在选
路分级中所处的位置决定的。
2.5.1 接口标识符
在I P v 6 单播地址中接口标识符用来标识链路的接口。标识符在该链路上应是唯一的。
也可能在较宽范围内是唯一的。在许多情况下,一个接口标识符与该接口的链路层地址相同。
在一个单节点上,同一个接口标识符可以用在多个接口上。在一个单节点的多个接口上,
用同样的接口标识符不会影响接口标识符的全球唯一性,或由接口标识符创建的每个I P v 6
地址的全球唯一性。
在许多格式前缀中(见2 . 4 节),接口标识符要求6 4 位长,并构成IEEE EUI-64 格式。
基于E U I - 6 4 的接口标识符,当全球令牌可用时(如IEEE 48 位M A C ),具有全球范围的
意义。当全球令牌不可用时(如串行链路、隧道终点等),则只具有本地范围的意义。当由E U
I - 6 4 形成接口标识符时,若u 位(IEEE EUI-64 术语中称全球/本地位)置1 ,则表示全球
范围;若u 位置0 ,则表示本地范围。一个E U I - 6 4 标识符的头三个字节的二进制表示
如下所示。
0 0 0 1 1 2
|0 7 8 5 6 3|
+----+----+----+----+----+----+
|cccc|ccug|cccc|cccc|cccc|cccc|
+----+----+----+----+----+----+
按I n t e r n e t 标准中的位序,其中u 是全球/本地位,g 是个体/团体位,c 是公司标
识符。“附录A 创建基于E U I - 6 4 接口标识符”为不同的基于E U I - 6 4 接口标识符的创
建提供了实例。
当形成接口标识符时,使用u 位的动机是当硬件令牌不可用,即在串行链路、隧道终
点等情况下,便于系统管理员人工配置本地范围标识符。另一种方法是用0 2 0 0 : 0 : 0 : 1 、
0 2 0 0 : 0 : 0 : 2等形式代替十分简单的: : 1 、: : 2 等形式。
在IEEE EUI-64 标识符中使用全球/本地位的目的是为了将来技术的发展能利用具有全
球范围的接口标识符所带来的好处。
形成接口标识符的细节定义在IP over<link>技术规范中,诸如IP over Ethernet[ E T H E
R ] 、I P over FDDI[ F D D I ]等。
2.5.2 未指定地址
地址0 : 0 : 0 : 0 : 0 : 0 : 0 : 0 称为未指定地址。它不能分配给任何节点。意思是没有这
个地址。它的一个应用示例是初始化主机时,在主机未取得自己的地址以前,可在它发送的
任何I P v 6 包的源地址字段放上未指定地址。
未指定地址不能在I P v 6 包中用作目的地址,也不能用在I P v 6 选路头中。
2.5.3 回返地址
单播地址0 : 0 : 0 : 0 : 0 : 0 : 0 : 1 称为回返地址。节点用它来向自身发送I P v 6 包。它
不能分配给任何物理接口。可以设想它正在与一个虚拟接口相关联(如回返接口)。
发送到单节点外的I P v 6 包回返地址必须用作源地址。具有一个目的地址为回返地址
的包不应发送出单节点之外,I P v 6 路由器也不会转发这样的包。
2.5.4 嵌有IPv4 地址的IPv6 地址
I P v 6 过渡机制[ T R A N ] 包括一种技术,使主机和路由器能在I P v 4 选路基础设施
上动态地以隧道方法传送I P v 6 包。使用该技术的I P v 6 节点要指定特殊的I P v 6 单播
地址,它在低阶3 2 位上携带I P v 4 地址。这种地址类型称其为“与I P v 4 兼容的I P v 6
地址”,并具有下面的格式:
| 80 位 | 16 | 32 位 |
+--------------------------------------+--------------------------+
|0000..............................0000|0000| IPv4 地址 |
+--------------------------------------+----+---------------------+
第二种类型的I P v 6 地址嵌有I P v 4 地址。该地址用来表示只支持I P v 4 ,而不支
持I P v 6 的节点的I P v 6 地址。这种地址类型称为“与I P v 4 映射的I P v 6 地址”,并具
有下面的格式:
| 80 位 | 16 | 32 位 |
+--------------------------------------+--------------------------+
|0000..............................0000|FFFF| IPv4 地址 |
+--------------------------------------+----+---------------------+
2.5.5 NSAP 地址
N S A P 地址到I P v 6 地址的映射定义在[ N S A P ]中。对于已经规划或应用OSI NSAP
寻址计划,并希望应用I P v 6 或向I P v 6 过渡的网络实现者,该文件应该重新设计成I P v
6 寻址计划来满足他们的需要。另外还定义了一套机制,用来在I P v 6 网络中支持OSI
NSAP 寻址。如果需要这种支持的话,则必须要有这样的机制。该文件还定义了O S I 地址
格式内I P v 6 地址的映射,这应该是必需的。
2.5.6 IPX 地址
I P X 地址到I P v 6 地址的映射表示如下:
| 7 | 121位 |
+-------+---------------------------------------------------------+
|0000010| 待定义 |
+-------+---------------------------------------------------------+
本草案的定义、动机和使用正在研究中。
2.5.7 可集聚全球单播地址
全部可集聚全球单播地址定义在[ A G G R ]中。设计这样的地址格式为了既支持基于当
前供应商的集聚,又支持被称为交换局的新的集聚类型。其组合使高效的选路集聚可用于直
接连接到供应商和连接到交换局两者的站点上。站点可以选择连接到两种类型中的任何一种
集聚点。
I P v 6 可集聚全球单播地址格式如下所示:
| 3| 13 | 8 | 24 | 16 | 64 位 |
+--+-----+---+--------+--------+--------------------------------+
|FP| TLA |RES| NLA | SLA | 接口号 |
| | ID | | ID | ID | |
+--+-----+---+--------+--------+--------------------------------+
其中:
0 0 1 ( F P )用于可集聚全球单播地址的格式前缀( 3 位);
TLA ID 为顶级集聚标识符;R E S 保留将来用;
NLA ID 为下一级集聚标识符;SLA ID 为站点级集聚标识符;
I N T E R FA C EI D 为接口标识符。
在[ A G G R ]中,还规定了内容、字段长度和分配规则。
2.5.8 本地用IPv6 单播地址
规定了链路本地和站点本地两种类型的本地使用单播地址。链路本地地址用在单链路
上,而站点本地地址用在单站点上。链路本地地址格式表示如下:
| 10 位 | 54 位 | 64 位 |
+----------+-------------------------+----------------------------+
|1111111010| 0 | 接口号 |
+----------+-------------------------+----------------------------+
设计链路本地地址的目的是为了用于诸如自动地址配置、邻居发现或无路由器存在的单
链路的寻址。
路由器不能将带有链路本地源地址或目的地址的任何包转发到其他链路上去。
站点本地地址具有下面的地址格式:
| 10位 | 38 位 | 16 位 | 64 位 |
+----------+-------------+-----------+----------------------------+
|1111111011| 0 | 子网号 | 接口号 |
+----------+-------------+-----------+----------------------------+
站点本地地址的设计目的是为了用于无需全球前缀的站点内部寻址。
路由器不应转发站点外具有站点本地源或目的地址的任何包。
2.6 任意点播地址
I P v 6 任意点播地址是分配给一般属于不同节点的多个接口。根据这个特性,发送给
任意点播地址的包,总是发送到具有该地址并按照选路协议测得距离为最近的接口。
任意点播地址从单播地址空间分配而来,可用任何一种规定的单播地址格式。这样,任
意点播地址和单播地址在语法上是无法区别的。当一个单播地址分配给多个接口时,如果把
它转为任意点播地址,那么被分配该地址的节点,必须显式地配置,以便知道这是一个任意
点播地址。
对于任何已分配的单播地址,有一个最长的地址前缀P 用于标识拓扑地区。在该地区
中,所有接口均属于该任意点播地址。在由P 标识的区域内,任意点播组的每个成员,被
告知在选路系统中作为一个独立实体(通常称之为“主机路由”)。在P 标识的区域以外,任
意点播地址可以集合在前缀P 的选路通告中。
在最坏情况下,一个任意点播组的前缀P 可以是0 前缀,那组成员可能没有拓扑位置。
在这种情况下,任意点播地址在整个I n t e r n e t 中,必须被告知作为一个分离的选路实体,
这就为可以支持多少这样的全球任意点播组,带来严格的规模限制。因此,期望支持全球任
意点播组似乎是不可能的或者说是非常受限制的。
任意点播地址的用途之一是标识一组路由器,该组路由器是属于提供I n t e r n e t 服务
的一个组织的。这样的地址在I P v 6 选路头中可用作直接地址,造成包的传递通过一个特
定的集聚或集聚系列。其他可能的用途是标识连到一个特定子网的一组路由器,或者标识提
供入口到一个特定选路域的一组路由器。
I n t e r n e t 任意点播地址在广泛传播及随意使用方面经验不多,然而已知使用它们所
带来的复杂性和麻烦却很普遍[ A N Y C S T ] 。在获得更多的经验,并对一些问题有一致的
解决方案之前,I P v 6 任意点播地址的下列限制始终存在。
· 任意点播地址不能用作I P v 6 包的源地址。
· 任意点播地址不能指定给I P v 6 主机,只能指定给I P v 6 路由器。
2.6.1要求的任意点播地址
预定的子网路由器任意点播地址,其格式如下:
| n 位 | 128-n 位 |
+------------------------------------------------+----------------+
| 子网前缀 | 00000000000000 |
+------------------------------------------------+----------------+
在任意点播地址中,子网前缀用来标识一条特定链路。对于接口标识符置0 的链路上
的一个接口,其任意点播地址和单播地址语法上是相同的。
发送给子网路由器任意点播地址的包会传递到子网上的一个路由器。与子网有接口的所
有路由器需要支持子网路由器任意点播地址。子网路由器任意点播地址企图用在某些应用场
合,即一个节点需要和远程子网上一组路由器中的一个进行通信的场合。例如当移动主机要
和一个位于本子网的移动代理通信的场合。
2.7 组播地址
I P v 6 组播地址是一组节点的标识符。一个节点可以归属于任意数量的组播组。组播
地址具有下面的格式:
| 8 | 4 | 4 | 112 位 |
+------ -+----+----+---------------------------------------------+
|11111111|flgs|scop| 组号 |
+--------+----+----+---------------------------------------------+
地址开始的1111 1111 标识该地址为组播地址。标志由4 位组成:
+-+-+-+-+
|0|0|0|T|
+-+-+-+-+
前面3 位为保留位,初始设置为0 。
T = 0 指示一个永久分配的(熟知的)组播地址,由全球I n t e r n e t 编号机构进行分配。
T = 1 指示一个非永久分配(临时)的组播地址。
4 位的组播范围值用来限制组播组的范围。该字段的可能值如下表:
0 保留 8 组织本地范围
1 节点本地范围 9 (未分配)
2 链路本地范围 A (未分配)
3 (未分配) B (未分配)
4 (未分配) C (未分配)
5 站点本地范围 D (未分配)
6 (未分配) E 全球范围
7 (未分配) F 保留
组标识符字段标识给定范围内的组播组,可以是永久的,也可以是临时的。
永久分配的组播地址,意思是独立于范围值。例如,如果为N T P 服务器组指定一个
组标识符为1 0 1 (十六进制)的永久组播地址,于是:
F F 0 1 : 0 : 0 : 0 : 0 : 0 : 0 : 1 0 1 指在同一节点上的所有N T P 服务器。
F F 0 2 : 0 : 0 : 0 : 0 : 0 : 0 : 1 0 1 指在同一链路上的所有N T P 服务器。
F F 0 5 : 0 : 0 : 0 : 0 : 0 : 0 : 1 0 1 指在同一站点上的所有N T P 服务器。
F F 0 E : 0 : 0 : 0 : 0 : 0 : 0 : 1 0 1 指I n t e r n e t 上的所有N T P 服务器。
非永久分配的组播地址仅在给定范围内才有意义。例如,在某个站点由非永久的站点本
地组播地址F F 1 5 : 0 : 0 : 0 : 0 : 0 : 0 : 1 0 1 标识的组与一个不同站点中使用同一个组标识
符的组没有关系,与不同范围内使用同一个组标识符分配非永久地址的组也没有关系,与具
有同一个组标识符的永久组也没有关系。
组播地址在I P v 6 包中不能用作源地址或出现在任何选路头中。
2.7.1 预定义的组播地址
下面为熟知的预定义的组播地址。
保留的组播地址:
FF00:0:0:0:0:0:0:0
FF01:0:0:0:0:0:0:0
FF02:0:0:0:0:0:0:0
FF03:0:0:0:0:0:0:0
FF04:0:0:0:0:0:0:0
FF05:0:0:0:0:0:0:0
FF06:0:0:0:0:0:0:0
FF07:0:0:0:0:0:0:0
FF08:0:0:0:0:0:0:0
FF09:0:0:0:0:0:0:0
FF0A:0:0:0:0:0:0:0
FF0B:0:0:0:0:0:0:0
FF0C:0:0:0:0:0:0:0
FF0D:0:0:0:0:0:0:0
FF0E:0:0:0:0:0:0:0
FF0F:0:0:0:0:0:0:0
上面列出的是保留的组播地址,且永远不能分配给任何组播组。
所有节点地址:
FF01:0:0:0:0:0:0:1
FF02:0:0:0:0:0:0:1
上面列出的组播地址标识了范围1 (节点本地)或范围2 (链路本地)内的所有I P v 6 节点
的组。
所有路由器地址:
FF01:0:0:0:0:0:0:2
FF02:0:0:0:0:0:0:2
FF05:0:0:0:0:0:0:2
以上的组播地址标识了范围1 (节点本地)、范围2 (链路本地)或范围5 (站点本地)内的所
有I P v 6 路由器的组。
请求节点地址:F F 0 2 : 0 : 0 : 0 : 0 : 1 : F F X X : X X X X
上面的组播地址是从节点的单播和任意点播地址计算而得的。取单播或任意点播地址的
低2 4 位,并将其附加到前缀F F 0 2 : 0 : 0 : 0 : 0 : 1 : F F 0 0 : : / 1 0 4 上形成一个请求节点
组播地址,其范围在F F 0 2 : 0 : 0 : 0 : 0 : 1 : F F 0 0 : 0 0 0 0 至F F 0 2 : 0 : 0 : 0 : 0 : 1 : F F F
F : F F F F 之间。
例如,对应I P v 6 地址4 0 3 7 : : 0 1 : 8 0 0 : 2 0 0 E : 8 C 6 C 的请求节点组播地址是
FF02::1:FF0E:8C6C 。I P v 6 地址差别仅在高位,譬如,由于与不同的集聚相关联的多个高
位前缀,将映射到同一个请求节点地址,因此减少了一个节点必须加入的组播地址数。
对每个指定的单播和任意点播地址,一个节点需要计算并加入相关的请求节点组播地
址。
2.7.2 新IPv6 组播地址的分配
目前将I P v 6 组播地址映射到IEEE 802 MAC 地址的方法是用I P v 6 组播地址的低阶
3 2 位来创建M A C 地址。值得提出的是令牌网有不同的处理方法,定义见[ TO K E N ]。3
2 位组标识符将生成唯一的MAC 地址。由于新IPv6 组播地址应当分配,所以组标识符总
是在低阶32 位上,如下图所示:
| 8 | 4 | 4 | 80 bits | 32 bits |
+------ -+----+----+---------------------------+-----------------+
|11111111|flgs|scop| reserved must be zero | group ID |
+--------+----+----+---------------------------+-----------------+
尽管将永久I P v 6 组播组数限制在23 2 ,但在将来不可能成为极限。如果将来必须要
超过这个限度,组播仍然能工作,只是处理稍慢而已。
其他I P v 6 组播地址的定义和注册由I A N A[ M A S G N ] 完成。
2.8 节点要求的地址
主机需要识别下面的地址以辨识它自身:
· 它的每个接口的链路本地地址。
· 分配的单播地址。
· 回返地址。
· 所有节点的组播地址。
· 每一个分配的单播和任意点播地址的请求节点组播地址。
· 主机所属的所有其他组的组播地址。
主机需要识别的所有地址,要求路由器都能识别,路由器还要能识别用来识别其本身的
下列地址:
· 配置路由器工作的接口所用的子网路由器任意点播地址。
· 完成路由器配置要用的所有其他任意点播地址。
· 所有路由器组播地址。
· 路由器归属于所有其他组的组播地址。
在实现中应该预定义的地址前缀包括:
· 未指定地址。
· 回返地址。
· 组播前缀( F F )。
· 本地用前缀(链路本地和站点本地)。
· 预定义的组播地址。
· IPv4 兼容的前缀。
实现时除非专门配置(如任意点播地址),应假设所有其他地址均为单播地址。
3. 安全性考虑
I P v 6 寻址文件对I n t e r n e t 基础设施的安全性没有任何直接影响。I P v 6 包身份验
证的定义见[ A U T H ]。
附录A 创建EUI-64 接口标识符
根据特定链路或节点的特性,有不少方法可以创建E U I - 6 4 接口标识符。本附录介绍
了其中的某些方法。
A.1 具有EUI-64 标识符的链路或节点
将一个E U I - 6 4 标识符转换成一个接口标识符,只需改变u 位的值。例如,一个全
球唯一的E U I - 6 4 标识符具有下面的形式:
|0 1|1 3|3 4|4 6|
|0 5|6 1|2 7|8 3|
+----------------+----------------+----------------+----------------+
|cccccc0gcccccccc|ccccccccmmmmmmmm|mmmmmmmmmmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+----------------+
其中,c 位是分配给公司的标识符;0 是全球/本地位的值,此处指本地范围;m 是生
产商选择的扩展标识符。I P v 6 接口标识符的形式如下:
|0 1|1 3|3 4|4 6|
|0 5|6 1|2 7|8 3|
+----------------+----------------+----------------+----------------+
|cccccc1gcccccccc|ccccccccmmmmmmmm|mmmmmmmmmmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+----------------+
唯一改变的是转变全球/本地位的值。
A.2 具有IEEE 802 48 位MAC 地址的链路或节点
[ E U I 6 4 ]规定了从一个IEEE 48 位M A C 标识符创建一个E U I - 6 4 标识符的方法。
就是将以十六进制表示的两个字节O x F F 和O x F E 插入到4 8 位M A C 地址中间(公司
标识符与厂商配给的标识符之间)。下面的例子是一个具有全球范围的4 8 位M A C 地址。
|0 1|1 3|3 4|
|0 5|6 1|2 7|
+----------------+----------------+----------------+
|cccccc0gcccccccc|ccccccccmmmmmmmm|mmmmmmmmmmmmmmmm|
+-----------------------+----------------------+-----------------------+
其中,c 位是分配给公司的标识符;0 是指示全球范围的全球/本地位值;g 是个体/团
体位;m 是生产厂选择的扩展标识符。这样,接口标识符便具有下面的形式:
|0 1|1 3|3 4|4 6|
|0 5|6 1|2 7|8 3|
+----------------+----------------+----------------+----------------+
|cccccc1gcccccccc|cccccccc11111111|11111110mmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+----------------+
当接口或节点上IEEE 892 48 位M A C 地址可用时,由于它们具备的可用性和唯一性
特性,就可以用它来实现创建接口标识符。
A.3 具有非全球标识符的链路
有许多链路类型,当多个接入时,例如包括L o c a l Ta l k 和A r c n e t ,就无全球唯一
的链路标识符。创建E U I - 6 4 格式化标识符的方法是取链路标识符(如L o c a l Talk 8 位
节点标识符),并在其前面填充0 。下面就是一个具有十六进制值O x 4 F 的L o c a l Talk 8
位节点标识符生成的接口标识符的例子。
|0 1|1 3|3 4|4 6|
|0 5|6 1|2 7|8 3|
+----------------+----------------+----------------+----------------+
|0000000000000000|0000000000000000|0000000000000000|0000000001001111|
+----------------+----------------+----------------+----------------+
注意其中的全球/本位置为0 ,以指示本地范围。
A.4 无标识符的链路
有一些链路无任何类型内置标识符。最普遍的就是一些串行链路和配置的隧道。为链路
选择的接口标识符必须是唯一的。
当一条链路上无内置标识符可用时,最好是用从另一个接口的,或分配给节点本身的,
一个全球接口标识符。使用这种方法就不会有连接同一链路的同一节点的其他的接口会用同
样的标识符。
如果在链路上无全球接口标识符可使用时,就需要创建一个本地范围接口标识符。唯一
的要求就是在该链路上是唯一的。有许多可能的方法用来选择一条链路唯一的接口标识符,
包括如下方法:
· 人工配置。
· 生成随机数。
· 节点串行号(或其他节点特殊令牌)。
链路唯一接口标识符的生成方法应该使一个节点启动后或者接口从节点中删除或加入
时都不应该有变化。
合适算法的选择,取决于链路和实现。形成接口标识符的细节规定在相应的IPv6 over<
l i n k >技术规范中。建议在任何自动算法中要实现冲突检测算法。
附录B 文本表示的ABNF 描述
本附录定义了A B N F[ A B N F ] 中的I P v 6 地址及前缀的文本表示,仅供参考用。
IPv6address = hexpart [ ":" IPv4address ]
IPv4address = 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT
IPv6prefix = hexpart "/" 1*2DIGIT
hexpart = hexseq | hexseq "::" [ hexseq ] | "::" [ hexseq ]
hexseq = hex4 *( ":" hex4)
hex4 = 1*4HEXDIG
附录C 对RFC 1884 的修改
对RFC 1884(IPv6 寻址体系结构)作了如下的修改:
1:增加了一个描述文本表示的A B N F 的附录。
2:澄清了链路唯一标识符在自举或其他接口重新配置后不会改变。
3:阐述了评议后的地址模型。
4:改变了集聚格式术语,以便和集聚草案一致。
5:增加了在同一节点上,接口标识符可用于多个接口的文字说明。
6:增加了定义新组播地址的规则。
7:增加了创建基于E U I - 6 4 接口标识符的描述过程
8:增加了定义I P v 5 前缀的标记方法。
9:用一个长的前缀改变请求节点组播的定义。
10:增加了站点范围所有路由器组播地址。
11:规定可集聚全球单播地址用0 0 1 格式前缀。
12:将0 1 0 (基于供应商的单播)和1 0 0 (保留为地理上的)格式前缀改成未指定的格式
前缀。
13:增加了对单播地址的接口标识符的定义部分;对单播地址增加了接口标识符定义的
选择。要求在格式前缀范围内使用E U I - 6 4 以及在E U I - 6 4 中置全球/本地范围位的规
则。
14:更新了N S A P 文本部分以反映RFC 1888 的工作。
15:删去协议特定的I P v 6 组播地址(如D H C P ),并参考了I A N A 中的定义。
16:删去了“单播地址例子”部分,变成O B E 。
17:增加了新参考文献,并更新了参考文献。
18:对少量文字说明进行了澄清和改进。
参考资料
[ABNF] Crocker, D., and P. Overell, "Augmented BNF for
Syntax Specifications: ABNF", RFC 2234, November 1997.
[AGGR] Hinden, R., O'Dell, M., and S. Deering, "An
Aggregatable Global Unicast Address Format", RFC 2374, July
1998.
[AUTH] Atkinson, R., "IP Authentication Header", RFC 1826, August
1995.
[ANYCST] Partridge, C., Mendez, T., and W. Milliken, "Host
Anycasting Service", RFC 1546, November 1993.
[CIDR] Fuller, V., Li, T., Yu, J., and K. Varadhan, "Classless
Inter-Domain Routing (CIDR): An Address Assignment and
Aggregation Strategy", RFC 1519, September 1993.
[ETHER] Crawford, M., "Transmission of IPv6 Pacekts over Ethernet
Networks", Work in Progress.
[EUI64] IEEE, "Guidelines for 64-bit Global Identifier (EUI-64)
Registration Authority",
http://standards.ieee.org/db/oui/tutorials/EUI64.html,
March 1997.
[FDDI] Crawford, M., "Transmission of IPv6 Packets over FDDI
Networks", Work in Progress.
[IPV6] Deering, S., and R. Hinden, Editors, "Internet Protocol,
Version 6 (IPv6) Specification", RFC 1883, December 1995.
[MASGN] Hinden, R., and S. Deering, "IPv6 Multicast Address
Assignments", RFC 2375, July 1998.
[NSAP] Bound, J., Carpenter, B., Harrington, D., Houldsworth, J.,
and A. Lloyd, "OSI NSAPs and IPv6", RFC 1888, August 1996.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[TOKEN] Thomas, S., "Transmission of IPv6 Packets over Token Ring
Networks", Work in Progress.
[TRAN] Gilligan, R., and E. Nordmark, "Transition Mechanisms for
IPv6 Hosts and Routers", RFC 1993, April 1996.
作者联系方法
Robert M. Hinden
Nokia
232 Java Drive
Sunnyvale, CA 94089
USA
Phone: +1 408 990-2004
Fax: +1 408 743-5677
EMail: hinden@iprg.nokia.com
Stephen E. Deering
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706
USA
Phone: +1 408 527-8213
Fax: +1 408 527-8254
EMail: deering@cisco.com
版权说明
Copyright (C) The Internet Society (1998). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
RFC2373: IP Version 6 Addressing Architecture (IPv6寻址体系结构)
1
China-pub RFC中文翻译计划