IPv6 Routing

Applies To: Windows 7, Windows Server 2008 R2

Routing is the process of forwarding packets between connected network segments. For Internet Protocol version 6 (IPv6)-based networks, routing provides forwarding capabilities between hosts that are located on separate segments within a larger IPv6-based network.

An IPv6 packet contains both the source address of the sending host and the destination address of the receiving host. Unlike link-layer (layer 2) addresses, IPv6 addresses in the IPv6 header typically remain the same as the packet travels across an IPv6 network.

Routing is the primary function of IPv6. IPv6 packets are exchanged and processed on each host by using IPv6 at the Internet layer.

Above the IPv6 layer, transport services on the source host pass data in the form of TCP segments or UDP messages down to the IPv6 layer. The IPv6 layer creates IPv6 packets with source and destination address information that is used to route the data through the network. The IPv6 layer then passes packets down to the link layer, where IPv6 packets are converted into frames for transmission over network-specific media on a physical network. This process occurs in reverse order on the destination host.

IPv6 layer services on each sending host examine the destination address of each packet, compare this address to a locally maintained routing table, and then determine what additional forwarding is required. IPv6 routers are attached to two or more IPv6 network segments that are enabled to forward packets between them.

IPv6 routers

IPv6 network segments, also known as links or subnets, are connected by IPv6 routers, which are devices that pass IPv6 packets from one link to another. A simple IPv6 network consisting of three links connected by routers is shown in the following figure.

IPv6 routers provide the primary means for joining together two or more physically separated IPv6 links. All IPv6 routers have the following characteristics:

  • IPv6 routers are physically multihomed hosts. A physically multihomed host is a network host that has two or more network adapters to connect to each physically separated link.

  • IPv6 routers provide packet forwarding for other IPv6 hosts. IPv6 routers are distinct from other hosts that use multihoming. An IPv6 router must be able to forward IPv6-based communication between networks for other IPv6 network hosts.

You can implement IPv6 routers by using a variety of hardware and software products, including a computer running Windows Server 2008 R2 with the IPv6 protocol. Routers that are dedicated hardware devices running specialized software are common. Regardless of the type of IPv6 routers that you use, all IPv6 routing relies on a routing table to communicate between network segments.

IPv6 routing table

Every computer that runs IPv6 determines how to forward packets based on the contents of the IPv6 routing table. To display the IPv6 routing table, at the command prompt, type netsh interface ipv6 show route.

Entries in the IPv6 routing table include:

  • An address prefix.

  • The interface over which packets matching the address prefix are sent.

  • A forwarding or next-hop address.

  • A preference value used to select between multiple routes with the same prefix.

  • The lifetime of the route.

  • The specification of whether the route is published (advertised in a Routing Advertisement).

  • The specification of how the route is aged.

  • The route type.

The IPv6 routing table is built automatically, based on the current IPv6 configuration of your computer. When forwarding IPv6 packets, the routing table is searched by your computer for an entry that is the most specific match to the destination IPv6 address. A route for the link-local prefix (FE80::/64) is not displayed.

The default route (a route with a prefix of ::/0) is typically used to forward an IPv6 packet to a default router on the local link. Because the router that corresponds to the default router contains information about the network prefixes of the other IPv6 subnets within the larger IPv6 network, it forwards the packet to other routers until it is eventually delivered to the destination.

Additional references