IPv6 Support in Windows 8 and Windows Server 2012

With the maturity level of IP version 6 (IPv6) rising quickly, the support for IPv6 is a vital component of any networked device. While Microsoft products have supported IPv6 in all of their released Operating Systems (OSes) for the last five years or so, the further support and refinement of their implementation of IPv6 on Windows 8 and Windows Server 2012 is vital for their future. This article will review a few of the main refinements that have been added to the IPv6 as deployed with Windows 8 and Windows Server 2012.

[Editor’s Note: Find out more about IPv6 with our IPv6 Resources for System Administrators resource center.]

So why is IPv6 so important? Microsoft Windows President Steven Sinofsky discussed the importance of IPv6 earlier this year in a post on the Building Windows 8 blog. Here’s an excerpt:

“The most immediate benefit of IPv6 is that it provides more than 3×1038 IP addresses, enough for every person to have billions of addresses all to themselves, or enough to give every star in the universe a unique address. This will allow the Internet to grow and evolve. IPv6 also provides for many security and performance improvements, like built-in support for IPsec.”

Windows Server 2012 and Windows 8 IPv6 Enhancements

While Windows 7 did have rather robust support for IPv6, there were a couple of things that were noticed and reported over its life which have been addressed by Microsoft in their newest OS. This includes enhancements addressing better Internet connectivity, NAT/DNS and Windows PowerShell.

One of the things that can be tricky for any OS IPv4 and IPv6 implementation (dual stack) is when to use IPv4 and when to use IPv6. With the continued evolution of many popular Internet sites using IPv6, an interesting problem can arise when a site has both IPv4 and IPv6 connectivity and DNS entries. If full connectivity exists for both IPv4 and IPv6 then Windows 8 (and other Microsoft OS’s) will prefer the IPv6 connectivity path. However, if IPv6 is implemented on the end device but no path IPv6 path exists a delay can be noticed by the user while the OS figures out that the IPv6 connectivity path is broken. Microsoft has developed a change in their connectivity algorithm that checks for the state of the IPv6 connectivity path at initial configuration (IPv6) and every 30 days afterwards; if no IPv6 connectivity path exists it will be considered unreachable and the IPv4 will be preferred.

A new addition to Windows Server 2012 is the implementation of NAT64/DNS64 which is built in. This provides support for complex environments where IPv6 has been implemented on the internal network but is not supported on the upstream network. When using these technologies in combination both IPv6 IPv4 rewriting and DNSv4 DNSv6 rewriting occur on the intervening server. This change greatly affects the possibilities when running DirectAccess and/or RRAS.

Another important addition to these products is the introduction of a number of different PowerShell cmdlets which support a number of different CLI and script based IPv6 configuration options.


Where to Configure IPv6 and IPv6 Features

The configuration of a dual stack IPv6 implementation on both Windows Server 2012 and Windows 8 is through the use of the Network and Sharing Center. The exact method used to reach this destination differs a bit from Windows 7 and the Windows Server 2012 and Windows 8 platforms. There are multiple ways to get there, but the most basic for Windows 8 is using the Start Menu -> Right-Click -> All Applications -> Control Panel -> Network and Sharing Center path (at least with default settings). With Windows Server 2012, the Control Panel can be access directly from the Start menu (or from Server Manager).

Once the Network and Sharing Center is pulled up go to Change Adapter Settings, select the appropriate networking adapter, and modify the IPv4 and IPv6 settings based on the specific configuration of the network. It should be noted that both IPv4 and IPv6 on Window Server 2012 and Windows 8 are configured as dynamic by default — this means that if an existing DHCPv4 and/or DHCPv6 server exists on the network it is possible to get a dual stack implementation up immediately without any additional configuration. The NAT64/DNS64 features that have been implemented in Windows Server 2012 are configured as part of the Remote Access server role or by using Powershell scripts.

IPv6 and the Future of Windows Networking
The future of the Internet and networks in general is IPv6, and it is in the best interests of Microsoft and all other providers to provide as much support for transition technologies as it occurs and for easy, bug-free, full IPv6 implementations as they are built. These additions certainly increase the usability of the upcoming (and current) product offerings; only time will tell if they are able to keep up with the demands of the more and more commonplace IPv6 user.