Please Whitelist This Site?
I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)
If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.
If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK.
Thanks for your understanding!
Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide
|
NOTE: Using software to mass-download the site degrades the server and is prohibited. If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.
|
|
|
|
IPv6 Autoconfiguration and Renumbering
One of the most interesting and potentially
valuable addressing features implemented in IPv6 is a facility to allow
devices on an IPv6 to actually configure themselves independently. In
IPv4 hosts were originally configured manually. Later, host
configuration protocols like DHCP enabled
servers to allocate IP addresses to hosts that joined the network. IPv6
takes this a step further, by defining a method for some devices to
automatically configure their IP address and other parameters without
the need for a server. It also defines a method whereby the IP addresses
on a network can be renumbered (changed en masse). These are the sorts
of features that make TCP/IP network administrators drool.
The IPv6 autoconfiguration and renumbering
feature is defined in RFC 2462, IPv6 Stateless Address Autoconfiguration.
The word stateless contrasts this method to the server-based
method using something like DHCPv6,
which is called stateful. (Another
word like classful that makes me cringe.)
This method is called stateless because it begins from a
dead start with no information (or state) at
all for the host to work with, and has no need for a DHCP server.
IPv6 Stateless Autoconfiguration
Stateless autoconfiguration exploits
several other new features in IPv6, including link-local
addresses, multicasting,
the
Neighbor Discovery (ND) protocol, and
the
ability to generate the interface identifier of an address from the
underlying data link layer address. The
general idea is to have a device generate a temporary address until
it can determine the characteristics of the network it is on, and then
create a permanent address it can use based on that information. In
the case of multi-homed devices, autoconfiguration is performed for
each interface separately, as you would expect.
The following is a summary of the
steps a device takes when using stateless autoconfiguration:
- Link-Local Address Generation:
The device generates a link-local address. Recall that this is one of
the two types of local-use
IPv6 addresses. Link-local addresses have
1111 1110 10 for the first ten bits. The generated address
uses those ten bits followed by 54 zeroes and then the 64 bit interface
identifier. Typically this will be derived from the data link layer
(MAC) address as explained in the
topic on interface identifiers, or it
may be a token generated in some other manner.
- Link-Local Address Uniqueness Test:
The node tests to ensure that the address it generated isn't for some
reason already in use on the local network. (This is very unlikely to
be an issue if the link-local address came from a MAC address but more
likely if it was based on a generated token.) It sends a Neighbor
Solicitation message using the Neighbor
Discovery (ND) protocol. It then listens
for a Neighbor Advertisement in response that indicates that
another device is already using its link-local address; if so, either
a new address must be generated, or autoconfiguration fails and another
method must be employed.
- Link-Local Address Assignment:
Assuming the uniqueness test passes, the device assigns the link-local
address to its IP interface. This address can be used for communication
on the local network, but not on the wider Internet (since link-local
addresses are not routed).
- Router Contact: The node next
attempts to contact a local router for more information on continuing
the configuration. This is done either by listening for Router Advertisement
messages sent periodically by routers, or by sending a specific Router
Solicitation to ask a router for information on what to do next.
This
process is described in the section on the IPv6 Neighbor Discovery protocol.
- Router Direction: The router
provides direction to the node on how to proceed with the autoconfiguration.
It may tell the node that on this network stateful autoconfiguration
is in use, and tell it the address of a DHCP server to use. Alternately,
it will tell the host how to determine its global Internet address.
- Global Address Configuration:
Assuming that stateless autoconfiguration is in use on the network,
the host will configure itself with its globally-unique Internet address.
This address is generally formed from a network prefix provided to the
host by the router, combined with the device's identifier as generated
in the first step.
Clearly, this method has numerous
advantages over both manual and server-based configuration. It is particularly
helpful in supporting mobility of IP devices, as they can move to new
networks and get a valid address without any knowledge of local servers
or network prefixes. At the same time, it still allows management of
IP addresses using the (IPv6-compatible) version of DHCP if that is
desired. Routers on the local network will typically tell hosts which
type of autoconfiguration is supported using special flags in ICMPv6
Router Advertisement messages.
Key Concept: IPv6 includes an interesting feature called stateless address autoconfiguration, which allows a host to actually determine its own IPv6 address from its layer two address by following a special procedure. |
IPv6 Device Renumbering
Renumbering of devices is a method
related to autoconfiguration. Like host configuration, it can be implemented
using protocols like DHCP, through the use of IP address leases
that expire after a period of time. Under IPv6, networks can be renumbered
by having routers specify an expiration interval for network prefixes
when autoconfiguration is done. Later, they can send a new prefix to
tell devices to regenerate their IP addresses. Devices can actually
maintain the old deprecated address for a while and then
move over to the new address.
A similar technique was also defined
for renumbering router addresses, in RFC 2894. It
uses special ICMPv6 messages and is described in a topic in that section.
If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support! |
|
|
Home -
Table Of Contents - Contact Us
The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005
© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.
|