Windows Vista IPv6
IPv6 is installed and active by default in Microsoft
Windows Vista.
The IPv6 stack was completely rewritten from Windows XP
as part of the Next Generation TCP/IP stack
for Vista (and Windows Server Longhorn).
It contains several significant enhancements and new features:
IPv6 is now supported as part of a Dual IP Layer
;
DHCPv6 and PPPv6 are integrated into the base system.
The Vista IPv6 implementation is, from an end-user viewpoint, one of the most complete and functional IPv6 stacks available today. Additionally, the IPv6 documentation from Microsoft is very extensive and well founded.
Content from | 12/2006-1/2007, updated April 2009 |
---|---|
Current version | Windows Vista SP1 |
Tested version | Windows Vista RC1 |
Documentation for | Windows Vista SP1, RC1 |
Basic IPv6 functions
Overview
IPv6 is active in a default installation. No manual steps are needed for activation — if attached to an IPv6 link, Vista automatically performs stateless autoconfiguration and creates local and global addresses.
Preference
Windows Vista prefers IPv6 if a DNS query results in IPv4 and IPv6 addresses being sent back (A and AAAA RRs).
(However, the shipped Internet Explorer at least on the tested RC1 sometimes preferred IPv4 over IPv6 at various tested IPv6 sites, due to unknown reasons.)
Privacy Extensions
Privacy addresses are enabled and used by default. Windows Vista generates automatically random interface IDs for every attached IPv6 interface and uses them for privacy addresses.
Packet Filter/Firewall
The integrated Windows Vista firewall can filter stateful IPv6.
Tunnelling IPv4/IPv6
Configured tunnels
It seems the final Vista versions and SP1 apparently support configured tunnels again.2 (Windows Vista RC1 dropped support for configured tunnels — the necessary command line commands were not available in the tested system.1)
6to4
When IPv6 is active and the system has a public IPv4 address, Windows Vista automatically activates 6to4 if the interface does not have a global IPv6 address.
In our tests, no further configuration was needed. However, it could be necessary to allow tunnelled 6to4 traffic through the integrated packet filter from Vista (which was deactivated in our tests).
Other tunnels
Windows Vista also supports the Teredo and ISATAP tunnelling mechanisms. Teredo is apparently (as is 6to4) active by default.
DHCPv6
Windows Vista integrates an DHCPv6 client by default. DHCPv6 is selected by default in the network configuration panel. Supported are stateful and stateless operation, with the following options used (and received) in tests:
- Stateless DHCPv6: reception of nameserver addresses and own domain name.
- Stateful: DHCPv6 reception of an own global address, nameserver addresses and own domain name.
The DHCPv6 client also supports Prefix delegation when the system is configured not as a network endpoint — when for example Internet Connection Sharing (ICS) is enabled the DHCPv6 client asks for, and can receive, Prefix delegations (PDs). 4
PPPv6
PPPv6 is supported in Windows Vista and was tested successfully with IPv6 on DSL (via PPPoE). On PPP connection establishment, PPP tries to negotiate IPv6 when establishing the PPP link (IPv6CP) and successfully creates a link-local address for the PPP interface. The IPv6 stack afterward receives RAs on the PPP link, configures an global address on the PPP interface and sets the IPv6 default route.
PPPv6/IPv6 is selected by default on PPP/dial-up connections.
Supported IPv6 RFCs & IDs
This list is probably not exhaustive and may not includes all IPv6 RFCs.
Document | Title |
---|---|
RFC 1981 | Path MTU discovery for IP version 6 |
RFC 2460 | Internet protocol, version 6 (IPv6) specification |
RFC 2461 | Neighbor discovery for IP version 6 (IPv6) |
RFC 2462 | IPv6 stateless address autoconfiguration |
RFC 2464 | Transmission of IPv6 packets over Ethernet networks |
RFC 2467 | Transmission of IPv6 packets over FDDI networks |
RFC 2472 | PPPv6 |
RFC 2710 | Multicast Listener Discovery (MLD) for IPv6 |
RFC 3041 | Privacy Extensions |
RFC 3056 probably |
6to4 |
RFC 3315 | Stateful DHCPv6 |
RFC 3484 | Default Address selection |
RFC 3596 | DNS Extensions to support IPv6 |
RFC 3810 | Multicast Listener Discovery Version 2 (MLDv2) |
RFC 4007 | IPv6 Scoped Address Architecture |
RFC 4193 | Unique Local IPv6 Unicast Addresses |
RFC 4213 | Transition Mechanisms for IPv6 Host and Routers |
RFC 4214 probably |
ISATAP |
RFC 4291 | IPv6 Addressing Architecture |
RFC 4380 probably |
Teredo |
RFC 4443 | Internet Control Message Protocol (ICMPv6) for the Internet ProtoVersion 6 (IPv6) Specification |
References
- See also: News of 2006: Windows Vista support: non-existant due to missing proto-41 support (SiXXS - IPv6 Deployment & Tunnel Broker: July 2006. Accessed 28.9.2006)↑
- News of 2006: Windows Vista configured tunnels, back in build 5744 (SiXXS - IPv6 Deployment & Tunnel Broker: October 2006. Accessed 31.1.2007) ↑
-
Special Interoperability Test Certification of Microsoft Windows Vista, Service
Pack 1, Operating System [...] for Internet Protocol Version 6 Capability
(Defense Information Systems Agency/Joint Interoperability Test Command (JITC): October 2008. Accessed April 2009) and
Microsoft Windows Vista SP1 IPv6 Letter of Compliance for DISA/JITC (Microsoft Corporation: August 2008. Accessed April 2009) ↑ - DHCPv6 Prefix Delegation in Windows Vista (Microsoft Corporation - Microsoft Windows DHCP Team Blog: February 2007. Accessed April 2009) ↑