IPv6 Traffic Between Nodes in Different Sites Across the Internet (6to4)
A version of this page is also available for
4/8/2010
When the 6to4 tunneling technique is used, the IPv6 traffic is encapsulated with an IPv4 header before it is sent over an IPv4 internetwork such as the Internet.
6to4 uses the global address prefix of 2002:WWXX:YYZZ::/48, where WWXX:YYZZ is both the Next Level Aggregator (NLA) portion of a global address and the colon-hexadecimal representation of a public IPv4 address (w.x.y.z) that is assigned to the site or host. The complete 6to4 address of a 6to4 host is 2002:WWXX:YYZZ:[SLA ID]:[Interface ID].
The 6to4 tunneling technique is described in RFC 3056. The following table shows the terms defined in RFC 3056.
Term | Definition |
---|---|
6to4 host |
An IPv6 host that is configured with at least one 6to4 address. |
6to4 router |
An IPv4/IPv6 router that forwards 6to4-addressed traffic between the 6to4 hosts within a site and the devices shown in the following list:
|
6to4 relay router |
An IPv4/IPv6 router that forwards 6to4-addressed traffic between 6to4 routers on the Internet and hosts on the test Internet (6bone). |
The following illustration shows how 6to4 is used to communicate between two 6to4 sites.
This illustration shows 6to4 hosts using the IPv6 protocol, 6to4 addresses, and 6to4 tunneling to communicate across an IPv4 intranet or the Internet. Each site requires a 6to4 router, which could be a computer running Windows XP Professional with Internet Connection Sharing (ICS) enabled or a Windows Embedded CE-based device configured as a gateway. A host computer running Windows XP Professional or Windows CE .NET 4.0 or later on a private network segment sends an IPv6 packet with a 6to4 address to the 6to4 router. The other host computer receives the Router Advertisement that contains the 6to4 address prefix. As the result, two 6to4 hosts can communicate by using 6to4 addresses over the Internet.
Note
Unlike IPv4, IPv6 does not use the network address translation (NAT) functionality to connect to the external network.
Note
To avoid exposing internal devices directly on the external public network, you must configure the IP firewall on the gateway.
The following table shows the types of communication that are possible when you use 6to4 hosts, an IPv6 routing infrastructure within 6to4 sites, a 6to4 router at site boundaries, and a 6to4 relay router. All of these types of communication use IPv6 traffic without the requirement of obtaining either a direct connection to the test Internet (6bone)) or an IPv6 global address prefix from an Internet service provider (ISP).
6to4 host communication | Description |
---|---|
With another 6to4 host within the same site |
This type of communication is available through the IPv6 routing infrastructure, which provides reachability to all hosts within the site. |
With 6to4 hosts in other sites across the IPv4 Internet |
This type of communication occurs when a 6to4 host forwards IPv6 traffic that is destined to a 6to4 host in another site to the local site 6to4 router. The router encapsulates the IPv6 traffic with an IPv4 header and sends it to the 6to4 router at the destination site on the Internet. The router at the destination site removes the IPv4 header and then forwards the IPv6 packet to the appropriate 6to4 host by using the IPv6 routing infrastructure of the destination site. |
With hosts on the test Internet (6bone) |
This type of communication occurs when a 6to4 host forwards IPv6 traffic that is destined for a 6bone host to the local site 6to4 router. The local site 6to4 router encapsulates the IPv6 traffic with an IPv4 header and sends it to a 6to4 relay router that is connected to both the IPv4 Internet and the 6bone. The router removes the IPv4 header and then forwards the IPv6 packet to the appropriate 6bone host by using the IPv6 routing infrastructure of the 6bone. |
Support for 6to4 hosts and routers is provided in the IPv6 Helper service that is included with the IPv6 protocol for Windows Embedded CE.
IPv6 Helper Service
By using automatic IPv6 Helper service, any host that is running the IPv6 protocol and is configured with an IPv4 public address is automatically configured as a 6to4 host. A 6to4 host can perform its own tunneling to reach either 6to4 hosts in other sites or hosts on the test Internet (6bone). The following list shows the tasks IPv6 Helper service performs automatically:
- The service configures 6to4 addresses on the interface that is named 6to4 Tunneling Pseudo-Interface (interface ID 3) for all public IPv4 addresses that are assigned to interfaces on the device.
- The service creates a 2002::/16 route that forwards all 6to4 traffic with the 6to4 Tunneling Pseudo-Interface (interface ID 3). It also encapsulates all traffic forwarded by this host to 6to4 destinations with an IPv4 header.
- The service performs a Domain Name System (DNS) query for the name 6to4.ipv6.microsoft.com to obtain the IPv4 address of the Microsoft 6to4 relay router on the Internet.
By enabling Internet Connection Sharing (ICS), you can use a computer running the IPv6 protocol for Windows XP as a 6to4 router. This computer can both encapsulate and forward 6to4 traffic to other 6to4 hosts or sites on the Internet, and can forward 6bone traffic to a 6to4 relay router on the Internet. The following list shows the tasks the IPv6 Helper service performs if ICS is enabled on an interface that is assigned a public IPv4 address:
- The service enables routing on the private interface.
- The service sends Router Advertisements that contain 6to4 address prefixes based on the public IPv4 address of the public interface. The SLA ID in the 6to4 address prefix is set to the interface ID of the interface on which the advertisements are sent.
See Also
Concepts
IPv6 Implementations
Connecting to the Test Internet (6bone)