📄 rfc1971.txt
字号:
Network Working Group S. Thomson
Request for Comments: 1971 Bellcore
Category: Standards Track T. Narten
IBM
August 1996
IPv6 Stateless Address Autoconfiguration
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
This document specifies the steps a host takes in deciding how to
autoconfigure its interfaces in IP version 6. The autoconfiguration
process includes creating a link-local address and verifying its
uniqueness on a link, determining what information should be
autoconfigured (addresses, other information, or both), and in the
case of addresses, whether they should be obtained through the
stateless mechanism, the stateful mechanism, or both. This document
defines the process for generating a link-local address, the process
for generating site-local and global addresses via stateless address
autoconfiguration, and the Duplicate Address Detection procedure. The
details of autoconfiguration using the stateful protocol are
specified elsewhere.
Table of Contents
1. INTRODUCTION............................................. 2
2. TERMINOLOGY.............................................. 4
2.1. Requirements........................................ 7
3. DESIGN GOALS............................................. 8
4. PROTOCOL OVERVIEW........................................ 9
4.1. Site Renumbering.................................... 11
5. PROTOCOL SPECIFICATION................................... 11
5.1. Node Configuration Variables........................ 12
5.2. Autoconfiguration-Related Variables................. 12
5.3. Creation of Link-Local Addresses.................... 13
5.4. Duplicate Address Detection......................... 13
5.4.1. Message Validation............................. 15
5.4.2. Sending Neighbor Solicitation Messages......... 15
5.4.3. Receiving Neighbor Solicitation Messages....... 15
Thomson & Narten Standards Track [Page 1]
RFC 1971 IPv6 Stateless Address Autoconfiguration August 1996
5.4.4. Receiving Neighbor Advertisement Messages...... 16
5.4.5. When Duplicate Address Detection Fails......... 16
5.5. Creation of Global and Site-Local Addresses......... 17
5.5.1. Soliciting Router Advertisements............... 17
5.5.2. Absence of Router Advertisements............... 17
5.5.3. Router Advertisement Processing................ 17
5.5.4. Address Lifetime Expiry........................ 19
5.6. Configuration Consistency........................... 19
SECURITY CONSIDERATIONS...................................... 19
REFERENCES................................................... 20
AUTHORS' ADDRESSES........................................... 21
APPENDIX: LOOPBACK SUPPRESSION & DUPLICATE ADDRESS DETECTION. 22
1. INTRODUCTION
This document specifies the steps a host takes in deciding how to
autoconfigure its interfaces in IP version 6. The autoconfiguration
process includes creating a link-local address and verifying its
uniqueness on a link, determining what information should be
autoconfigured (addresses, other information, or both), and in the
case of addresses, whether they should be obtained through the
stateless mechanism, the stateful mechanism, or both. This document
defines the process for generating a link-local address, the process
for generating site-local and global addresses via stateless address
autoconfiguration, and the Duplicate Address Detection procedure. The
details of autoconfiguration using the stateful protocol are
specified elsewhere.
IPv6 defines both a stateful and stateless address autoconfiguration
mechanism. Stateless autoconfiguration requires no manual
configuration of hosts, minimal (if any) configuration of routers,
and no additional servers. The stateless mechanism allows a host to
generate its own addresses using a combination of locally available
information and information advertised by routers. Routers advertise
prefixes that identify the subnet(s) associated with a link, while
hosts generate an "interface token" that uniquely identifies an
interface on a subnet. An address is formed by combining the two. In
the absence of routers, a host can only generate link-local
addresses. However, link-local addresses are sufficient for allowing
communication among nodes attached to the same link.
In the stateful autoconfiguration model, hosts obtain interface
addresses and/or configuration information and parameters from a
server. Servers maintain a database that keeps track of which
addresses have been assigned to which hosts. The stateful
autoconfiguration protocol allows hosts to obtain addresses, other
configuration information or both from a server. Stateless and
stateful autoconfiguration complement each other. For example, a host
Thomson & Narten Standards Track [Page 2]
RFC 1971 IPv6 Stateless Address Autoconfiguration August 1996
can use stateless autoconfiguration to configure its own addresses,
but use stateful autoconfiguration to obtain other information.
Stateful autoconfiguration is described in [DHCPv6].
The stateless approach is used when a site is not particularly
concerned with the exact addresses hosts use, so long as they are
unique and properly routable. The stateful approach is used when a
site requires tighter control over exact address assignments. Both
stateful and stateless address autoconfiguration may be used
simultaneously. The site administrator specifies which type of
autoconfiguration to use through the setting of appropriate fields in
Router Advertisement messages [DISCOVERY].
IPv6 addresses are leased to an interface for a fixed (possibly
infinite) length of time. Each address has an associated lifetime
that indicates how long the address is bound to an interface. When a
lifetime expires, the binding (and address) become invalid and the
address may be reassigned to another interface elsewhere in the
Internet. To handle the expiration of address bindings gracefully, an
address goes through two distinct phases while assigned to an
interface. Initially, an address is "preferred", meaning that its use
in arbitrary communication is unrestricted. Later, an address becomes
"deprecated" in anticipation that its current interface binding will
become invalid. While in a deprecated state, the use of an address is
discouraged, but not strictly forbidden. New communication (e.g.,
the opening of a new TCP connection) should use a preferred address
when possible. A deprecated address should be used only by
applications that have been using it and would have difficulty
switching to another address without a service disruption.
To insure that all configured addresses are likely to be unique on a
given link, nodes run a "duplicate address detection" algorithm on
addresses before assigning them to an interface. The Duplicate
Address Detection algorithm is performed on all addresses,
independent of whether they are obtained via stateless or stateful
autoconfiguration. This document defines the Duplicate Address
Detection algorithm.
The autoconfiguration process specified in this document applies only
to hosts and not routers. Since host autoconfiguration uses
information advertised by routers, routers will need to be configured
by some other means. However, it is expected that routers will
generate link-local addresses using the mechanism described in this
document. In addition, routers are expected to successfully pass the
Duplicate Address Detection procedure described in this document on
all addresses prior to assigning them to an interface.
Thomson & Narten Standards Track [Page 3]
RFC 1971 IPv6 Stateless Address Autoconfiguration August 1996
Section 2 provides definitions for terminology used throughout this
document. Section 3 describes the design goals that lead to the
current autoconfiguration procedure. Section 4 provides an overview
of the protocol, while Section 5 describes the protocol in detail.
2. TERMINOLOGY
IP - Internet Protocol Version 6. The terms IPv4 and IPv6
are used only in contexts where necessary to avoid
ambiguity.
node - a device that implements IP.
router - a node that forwards IP packets not explicitly
addressed to itself.
host - any node that is not a router.
upper layer - a protocol layer immediately above IP. Examples are
transport protocols such as TCP and UDP, control
protocols such as ICMP, routing protocols such as OSPF,
and internet or lower-layer protocols being "tunneled"
over (i.e., encapsulated in) IP such as IPX, AppleTalk,
or IP itself.
link - a communication facility or medium over which nodes can
communicate at the link layer, i.e., the layer
immediately below IP. Examples are Ethernets (simple
or bridged); PPP links; X.25, Frame Relay, or ATM
networks; and internet (or higher) layer "tunnels",
such as tunnels over IPv4 or IPv6 itself.
interface - a node's attachment to a link.
packet - an IP header plus payload.
address - an IP-layer identifier for an interface or a set of
interfaces.
unicast address
- an identifier for a single interface. A packet sent to
a unicast address is delivered to the interface
identified by that address.
multicast address
- an identifier for a set of interfaces (typically
belonging to different nodes). A packet sent to a
multicast address is delivered to all interfaces
Thomson & Narten Standards Track [Page 4]
RFC 1971 IPv6 Stateless Address Autoconfiguration August 1996
identified by that address.
anycast address
- an identifier for a set of interfaces (typically
belonging to different nodes). A packet sent to an
anycast address is delivered to one of the interfaces
identified by that address (the "nearest" one,
according to the routing protocol's measure of
distance). See [ADDR-ARCH].
solicited-node multicast address
- a multicast address to which Neighbor Solicitation
messages are sent. The algorithm for computing the
address is given in [DISCOVERY].
link-layer address
- a link-layer identifier for an interface. Examples
include IEEE 802 addresses for Ethernet links and E.164
addresses for ISDN links.
link-local address
- an address having link-only scope that can be used to
reach neighboring nodes attached to the same link. All
interfaces have a link-local unicast address.
site-local address
- an address having scope that is limited to the local
site.
global address
- an address with unlimited scope.
communication
- any packet exchange among nodes that requires that the
address of each node used in the exchange remain the
same for the duration of the packet exchange. Examples
are a TCP connection or a UDP request-response.
tentative address
- an address whose uniqueness on a link is being
verified, prior to its assignment to an interface. A
tentative address is not considered assigned to an
interface in the usual sense. An interface discards
received packets addressed to a tentative address, but
accepts Neighbor Discovery packets related to Duplicate
Address Detection for the tentative address.
Thomson & Narten Standards Track [Page 5]
RFC 1971 IPv6 Stateless Address Autoconfiguration August 1996
preferred address
- an address assigned to an interface whose use by upper
layer protocols is unrestricted. Preferred addresses
may be used as the source (or destination) address of
packets sent from (or to) the interface.
deprecated address
- An address assigned to an interface whose use is
discouraged, but not forbidden. A deprecated address
should no longer be used as a source address in new
communications, but packets sent to deprecated
addresses are delivered as expected. A deprecated
address may continue to be used as a source address in
communications where switching to a preferred address
causes hardship to a specific upper-layer activity
(e.g., an existing TCP connection).
valid address
- a preferred or deprecated address. A valid address may
appear as the source or destination address of a
packet, and the internet routing system is expected to
deliver packets sent to a valid address.
invalid address
- an address that is not assigned to any interface. A
valid address becomes invalid when its valid lifetime
expires. Invalid addresses should not appear as the
destination or source address of a packet. In the
former case, the internet routing system will be unable
to deliver the packet, in the later case the recipient
of the packet will be unable to respond to it.
preferred lifetime
- the length of time that a valid address is preferred
(i.e., the time until deprecation). When the preferred
lifetime expires, the address becomes deprecated.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -