Thursday, July 21, 2011

The 6to4 Tunneling Protocol

The 6to4 protocol provides for automatic address assignment and tunneling of IPv6 across the IPv4 Internet. The protocol is detailed in IETF RFC3056. The 6to4 protocol uses the prefix 2002::/16—otherwise known as a 6to4 address. The global address prefix for a given organization takes the form 2002:WWXX:YYZZ::/48, where WWXX:YYZZ is the colon hexadecimal format of the organization’s public IPv4 dotted decimal address w.x.y.z assigned to the router.

The 6to4 protocol only supports IPv6 computer to IPv6 computer communications. It does not support communications between IPv6 and IPv4 computers. Both endpoints must support IPv6.

The 6to4 protocol allows organizations to assign globally routable IPv6 address without needing to connect to the IPv6 Internet or to request an assigned range of IPv6 addresses. Because the IPv6 address is derived from the public assigned IPv4 address, it is guaranteed to be unique.

In addition, the 6to4 address supports a subnet field for organizations with IPv4 subnet address ranges. The format of the 6to4 IPv6 address is shown in Figure 10.23. For example, the public IPv4 address 12.155.166.101 with subnet 255.255.255.128 would automatically generate the global IPv6 prefix 2002:C9B:A665:80::/64.

The 6to4 protocol defines several components that participate in the transmission of packets. These are as follows:

» 6to4 host—A IPv6 device that is configured with a 6to4 address (that is, a 2002::/16 prefix).

» 6to4 router—Routes IPv6 traffic over the IPv4 Internet using 6to4 tunneling.

» 6to4 host/router—An IPv6 device that is configured with a 6to4 address and can also use 6to4 tunneling to communicate with other 6to4 devices over the IPv4 Internet. However, it does not route traffic to other devices.

» 6to4 relay—Forwards 6to4 traffic between the IPv4 Internet and pure IPv6 devices.

Essentially, 6to4 and its components allow IPv6 devices to communicate while residing in the IPv4 world. Figure 10.24 shows the components of 6to4.

Windows Server 2008 R2, Windows 2008, Windows 7, and Windows Vista can function as a 6to4 host/router or a 6to4 router. By default, these operating systems operate as 6to4 host/router components. The Windows IPv6 protocol automatically does the following if there is a public IPv4 address assigned to a network interface:

1. Creates a 6to4 tunnel adapter and assigns it a 6to4 address in the form 2002:WWXX:YYZZ::WWXX:YYZZ for each of the public addresses.

2. Creates a 2002::/16 route to forward all 6to4 addresses to the tunnel adapter.

3. Does a lookup of the FQDN 6to4.ipv6.microsoft.com will give a 6to4 relay address. That address is set as the next hop for the 6to4 tunnel adapter.

The FQDN 6to4.ipv6.microsoft.com is the address of the 6to4 relay that is operated by
Microsoft and allows 6to4 access to the IPv6 Internet. This is a service that Microsoft provides to help with the integration of Microsoft operating systems with IPv6.

To have a system operate as a 6to4 router component, the Internet Connection Sharing
(ICS) feature must be enabled. If ICS is enabled on network interface with an IPv4 address, the IPv6 protocol automatically does the following:

1. Enables IPv6 forwarding on the 6to4 tunneling adapter and on any private network interfaces.

2. Assigns a 6to4 subnet prefix of the form 2002:WWXX:YYZZ:I::/64, where WWXX:YYZZ is the colon hexadecimal form of the IPv4 public IP address and I is the interface index of the private network interface.

3. Sends router advertisements on the private network interface. For any traffic forwarded to other 6to4 sites, the Windows 6to4 router uses the default 2002::/16 route.

Source of Information : Sams - Windows Server 2008 R2 Unleashed (2010)

No comments: