![]()
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.
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, called "interface identifier", and information received from the routers that are used as prefixes in order to identify the subnet\s.

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 can use stateless
autoconfiguration to configure its own addresses, but use stateful
autoconfiguration to obtain other information.
When would we use each approach?
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, on the other hand, 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.
The lifetime of an IPv6 address:
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 correctly, an address goes through two distinct phases while assigned to an interface:
- At first, the address is "preferred", meaning that it's available for use in arbitrary communication.
- Later, the address becomes "deprecated" in anticipation that its current interface binding will become invalid.
While in a deprecated state, the use of the 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, explained later on this tutorial, is performed on all addresses, independent of whether they are obtained via stateless or stateful autoconfiguration.
The autoconfiguration process specified in this
tutorial 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 tutorial. In addition, routers are expected to successfully
pass the Duplicate Address Detection procedure described in this tutorial on all
addresses prior to assigning them to an interface.