Routing in IPv6 is almost identical to IPv4 routing under Classless Inter-Domain Routing
(CIDR). The only difference is that the addresses are 128-bit IPv6 addresses instead
of 32-bit IPv4 addresses. With very straightforward extensions, all of IPv4's routing algorithms,
such as OSPF, RIP, IDRP, and IS-IS, can be used to route IPv6.
IPv6 also includes simple routing extensions that support powerful new routing capabilities. The
following list describes the new routing capabilities:
Provider selection that is based on policy, performance, cost, and so on
Host mobility, route to current location
Auto-readdressing, route to new address
You obtain the new routing capabilities by creating sequences of IPv6 addresses that
use the IPv6 routing option. An IPv6 source uses the routing option to
list one or more intermediate nodes, or topological group, to be visited on
the way to a packet's destination. This function is very similar in function
to IPv4's loose source and record route option.
To make address sequences a general function, IPv6 hosts are required, in most
instances, to reverse routes in a packet that a host receives. The packet
must be successfully authenticated by using the IPv6 authentication header. The packet must
contain address sequences in order to return the packet to its originator. This
technique forces IPv6 host implementations to support the handling and reversal of source
routes. The handling and reversal of source routes is the key that enables
providers to work with hosts that implement the new IPv6 capabilities such as
provider selection and extended addresses.
On multicast-capable links and point-to-point links, each router periodically sends to the multicast
group a router advertisement packet that announces its availability. A host receives router
advertisements from all routers, building a list of default routers. Routers generate router
advertisements frequently enough so that hosts learn of their presence within a few
minutes. However, routers do not advertise frequently enough to rely on an absence of
advertisements to detect router failure. A separate detection algorithm that determines neighbor unreachability
provides failure detection.
Router Advertisement Prefixes
Router advertisements contain a list of subnet prefixes that is used to determine
if a host is on the same link (on-link) as the router.
The list of prefixes is also used for autonomous address configuration. Flags that
are associated with the prefixes specify the intended uses of a particular prefix.
Hosts use the advertised on-link prefixes to build and maintain a list that
is used to decide when a packet's destination is on-link or beyond a
router. A destination can be on-link even though the destination is not covered
by any advertised on-link prefix. In such instances, a router can send a
redirect. The redirect informs the sender that the destination is a neighbor.
Router advertisements, and per-prefix flags, enable routers to inform hosts how to perform
stateless address autoconfiguration.
Router Advertisement Messages
Router advertisement messages also contain Internet parameters, such as the hop limit, that
hosts should use in outgoing packets. Optionally, router advertisement messages also contain link
parameters, such as the link MTU. This feature enables the centralized administration of
critical parameters. The parameters can be set on routers and automatically propagated to
all hosts that are attached.
Nodes accomplish address resolution by sending to the multicast group a neighbor solicitation
that asks the target node to return its link-layer address. Multicast neighbor solicitation
messages are sent to the solicited-node multicast address of the target address. The
target returns its link-layer address in a unicast neighbor advertisement message. A single
request-response pair of packets is sufficient for both the initiator and the target
to resolve each other's link-layer addresses. The initiator includes its link-layer address in the