What Is IPv6?
Updated: March 28, 2003
Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
What Is IPv6?
In this section
Introduction to IPv6
IPv6 in Windows Server 2003
Transitioning from IPv4 to IPv6
Limitations of IPv4
IPv6 Features that Fix IPv4 Limitations
Differences Between IPv4 and IPv6
Related Information
Introduction to IPv6
Microsoft is delivering support for the emerging update to the Internet Protocol, commonly referred to as IP version 6 — or
simply IPv6 ﴾RFC 2460﴿. This protocol suite is based on a standard from the Internet Engineering Task Force ﴾IETF﴿, and it is
designed to significantly increase the size of the address space used to identify communication endpoints in the Internet,
thereby allowing it to continue its tremendous growth rate. As a core networking protocol in Windows Server 2003, IPv6 serves
as one of two Internet protocols that enable computers running Windows to communicate on intranets and over the Internet.
The recent broad adoption of always‐on technologies such as Digital Subscriber Line ﴾DSL﴿ and cable modems, coupled with the
pending integration of personal data assistants ﴾PDAs﴿ and cellular phones into always‐addressable Mobile Information
Appliances, significantly elevates the urgency to expand the address space that Internet‐connected systems use to communicate.
The address space currently used is defined as part of the Internet Protocol, or IP ﴾the network layer of the TCP/IP protocol suite﴿.
The version of IP commonly used today, Version 4 ﴾IPv4﴿, has not been substantially changed since RFC 791 was published in
1981. Since then, IPv4 has proven to be robust, easily implemented, and interoperable. It has withstood the test of scaling an
internetwork ﴾a network of networks﴿ to a global utility the size of today’s Internet.
IPv6 will continue the tradition of the IPv4 protocol, which gained much of its acceptance by defining mechanisms to tie systems
together over a wide variety of disparate networking technologies. Already defined link‐layer mappings for transporting IPv6
include Ethernet, Point‐to‐Point Protocol ﴾PPP﴿, Fiber Distributed Data Interface ﴾FDDI﴿, Token Ring, Asynchronous Transfer Mode
﴾ATM﴿, Frame Relay, and IEEE 1394. From an architectural perspective, an IPv4‐based infrastructure appears to systems that are
enabled for IPv6 as a single segment non‐broadcast multi‐access ﴾NBMA﴿ network. The capability to send IPv6 traffic over
existing IPv4 networks will provide an initial reach as broad as the current Internet, limited only by the endpoints’ ability and
readiness to make use of it.
New capabilities that are expected to drive rapid adoption include scoped addresses; stateless autoconfiguration, which lowers
complexity and management burden; and mandatory IP security ﴾IPSec﴿, which permits end‐to‐end data authentication and
integrity and increases privacy of connections. In addition, technologies that extend the lifetime of IPv4 ﴾such as network address
translation, or NATs﴿ frequently do not work with existing applications, and those technologies are already restricting the
flexibility to deploy new applications. NATs are popular today because they allow multiple systems to share a single public IPv4
address. However, they tend to enforce a client/server usage model where the client uses private address space with only the
server existing in public address space. IPv6 brings back the capability of “end‐to‐end control of communications,” making
networking applications simpler as the network again becomes transparent.
IPv6 in Windows Server 2003
Wireless technologies are emerging in ways that make ad‐hoc networks between personal devices more feasible. Setting up
systems to work in an ad‐hoc mode is challenging enough, but many of these personal devices will also need to perform in the
managed environment of the workplace. Switching between these modes is frequently frustrating and is significantly more
involved than using either mode on its own. To reduce the complexity, IPv6 has defined an architectural principle that systems
are required to simultaneously support multiple addresses. Coupling this capability with scoped addresses results in the ability to
move easily and automatically between ad‐hoc and managed environments. Tthe IPv6 implementation will automatically adapt
itself to the current needs, be it ad‐hoc, home, or business connections.
To address concerns about security and privacy, the Microsoft IPv6 implementation includes IPSec, which provides data
authenticity, data integrity, and data confidentiality across the array of protocols used by the various applications. Providing the
capability at the network layer frees developers from having to add specific security capabilities to every application.
In addition, Microsoft helped standardize temporary addresses. To make stateless autoconfiguration work well and to ensure
global uniqueness, the standards community chose the underlying hardware address ﴾the MAC address﴿ for use as part of an
IPv6 address. The side effect of this approach is that all communications are traceable to the specific hardware device.
Although it is technically necessary to have a published ﴾over some scope﴿, globally unique address to receive incoming
connections, the address of an originator requires only current global uniqueness ﴾not publication﴿. To alleviate this potential
privacy concern, Microsoft has authored RFC 3041 to define a locally generated address mechanism where the result is valid only
for a period that the local system or application determines. The ability of IPv6 systems to simultaneously support multiple
addresses allows each application to use an independent address, an application to use a different address for each service to
which it connects, or both.
Peer‐to‐peer applications that are made easier using IPv6 include IP telephony and video tele‐conferencing. These and similar
applications are likely to take advantage of the Quality of Service ﴾QoS﴿ features defined for IPv6. Although many QoS features
have also been defined as add‐ons for IPv4, the mechanism selected was to redefine the meaning for the Type of Service field of
the IP header, which caused collisions with historical implementations. The effort to provide QoS for IPv4 has been a struggle
due to differing models of deployment. This effort is not wasted though, because it is forcing many details to be worked through
— from hardware capabilities to business practices. Systems that are enabled for IPv6 will be able to leverage this effort to
provide an array of service levels that are consistent from end to end.
Transitioning from IPv4 to IPv6
The conversion from IPv4 to IPv6 will be a larger task for the industry than was the preparation for year 2000. This protocol
change will affect nearly all networked applications, end systems, infrastructure systems, and network architectures. This change
must be approached with responsibility to prevent the costly, unproductive missteps that often result from broad, premature
availability of technologies. Unlike the year 2000 issue, the conversion to IPv6 has no specific timeline. However, as noted earlier,
the rate of IPv4 address consumption is rapidly increasing. Simplicity of deployment will be the key to rapid adoption.
Like IPv4 ﴾where early deployments frequently transited X.25 networks﴿, IPv6 deployment will start at the edge of the network,
taking advantage of framing within any available network technology. Internet service providers ﴾ISPs﴿ will deploy native IPv6
routing based on customer demand. However, this conversion may be slow because ISPs will need several years to replace
network equipment. Microsoft is taking the approach that encapsulating IPv6 packets within IPv4 will allow incremental
deployments of end systems that will, in turn, demonstrate the demand to the ISPs.
To stay on the high performance path of the existing routers, computers that are running Windows and that are enabled for IPv6
will default to tunneling over IPv4 unless the ISP provides a specific indication to do otherwise and a native IPv6 path exists end
to end. The only requirement is that systems that are directly connected to an ISP must receive at least one public IPv4 address.
﴾The address ranges specified in RFC 1918 are not public.﴿ Other systems in a home or business will receive 6to4 ﴾RFC 3056﴿
prefix Router Advertisement messages from the directly connected system.
In the presence of NATs that are not enabled for IPv6 where only private addresses are available, a supplementary technology
will be used. This technology will tunnel IPv6 traffic over NATs by including a User Datagram Protocol ﴾UDP﴿ header that can be
used to provide a mechanism for 6to4‐type tunneling across the IPv4 Internet. In enterprise environments, an incremental
upgrade to IPv6 is possible using the Intra‐Site Automatic Tunnel Addressing Protocol ﴾ISATAP﴿. ISATAP allows IPv6‐only hosts
and subnets to fully co‐exist and interoperate with IPv4 hosts and subnets in an intranet. In partnership with 6to4 technology, a
comprehensive incremental migration solution is available to businesses that are taking their corporate networks through this
transition.
Despite these approaches, the transition will not be easy. Most manufacturers will produce systems that support both IPv4 and
IPv6 so that, if connections are not possible using IPv6, the systems can fall back and succeed using IPv4 ﴾if IPv4 connectivity
existed before the introduction of IPv6﴿. The overall goal is to ensure a smooth transition and deployments where updated
applications can take advantage of the new protocol without breaking existing functionality. To this end, new Windows APIs have
been defined to specifically isolate the legacy applications from unintentional exposure to protocol differences, including the
larger IPv6 addresses.
Microsoft has taken four key steps to deliver IPv6:
In 1998, Microsoft Research released an IPv6 implementation to help the community that was developing standards for
IPv6 understand and test the protocol during its definition.
In March 2000, a technology preview was released for computers that were running Windows 2000. This release helped
developers become familiar with the concepts and capabilities they would encounter when they enabled their
applications to use IPv6.
In October 2001, Windows XP was released with a developer preview IPv6 stack and key components of the system
enabled for IPv6 so developers could begin the task of enabling their applications for IPv6. It is also expected that early
adoption customers will start using IPv6 in test labs. This testing will allow those customers to have better visibility into
managing their eventual rollout, and it will help identify any issues that need to be addressed in networked products.
In November 2001, beta 3 for Windows Server 2003 was released with the first edition of the Microsoft production stack
and components enabled for IPv6.
Current releases, including both Windows Server 2003 and Windows XP with Service Pack 1, provide general availability of this
stack. Customers can begin production rollout of systems and applications that take advantage of this protocol.
The Microsoft implementation of IPv6 is easy to deploy because it includes stateless address autoconfiguration ﴾including
temporary addresses﴿, automatic tunneling over existing IPv4 networks, and appropriate use of scoped addresses.
Because IP is a fundamental and pervasive technology within the operating system, it is not feasible to retrofit versions of
Windows prior to Windows Server 2003 and Windows XP. However, to maintain backwards compatibility, versions of Windows
that are enabled for IPv6 will also provide the capability to natively communicate using IPv4 for the foreseeable future. Although
translation between IPv4 and IPv6 will be necessary in some cases ﴾such as late in a transition when new IPv6‐only devices need
to access yet‐to‐be‐retired IPv4‐only systems﴿, it is not expected to be the norm for early deployments. Whenever the IPv6‐only
devices arrive, the issues that surround address translation are typically specific to a given application. Thus as they arise, these
scenarios will require targeted development on a case‐by‐case basis.
Limitations of IPv4
IPv4’s initial design did not anticipate the following:
The recent exponential growth of the Internet and the impending exhaustion of the IPv4 address space.
Because IPv4 addresses have become relatively scarce, some organizations have been forced to use NATs to map multiple
private addresses to a single public IP address. NATs promote reuse of the private address space, but they do not support
standards‐based network‐layer security or the correct mapping of all upper layer protocols. NATs can also create
problems when they connect two organizations that use the private address space.
Additionally, the rising prominence of Internet‐connected devices and appliances ensures that the public IPv4 address
space will eventually be depleted.
The requirement for security at the Internet layer.
Private communication over a public medium such as the Internet requires encryption services that protect the data being
sent from being viewed or modified in transit. IPSec provides security for IPv4 packets, but this standard is optional, and
proprietary solutions prevail.
7The growth of the Internet and the ability of Internet backbone routers to maintain large routing tables.
Because of the way that IPv4 network IDs have been and are currently allocated, the routing tables of Internet backbone
routers routinely contain more than 85,000 routes. The routing infrastructure of the IPv4 Internet combines both flat and
hierarchical routing.
The need to better support real‐time delivery of data — also called quality of service ﴾QoS﴿.
QoS standards exist for IPv4, but real‐time traffic support relies on the IPv4 Type of Service ﴾TOS﴿ field and the
identification of the payload, which is typically done using a UDP or TCP port. Unfortunately, the IPv4 TOS field has limited
functionality, and various local interpretations developed over time. In addition, payload identification using a TCP and
UDP port is not possible when the payload is encrypted.
IPv6 Features that Fix IPv4 Limitations
IPv6 includes the following features:
New header format
Larger address space
Efficient and hierarchical addressing and routing infrastructure
Stateless and stateful address configuration
Built‐in security
Better support for QoS
New protocol for neighboring node interaction
Extensibility
The following subsections discuss each of these new features in detail.
New Header Format
The IPv6 header has a new format that is designed to minimize header overhead. This optimization is achieved by moving both
non‐essential fields and optional fields to extension headers that appear after the IPv6 header. Intermediate routes can process
the streamlined IPv6 header more efficiently.
IPv4 headers and IPv6 headers do not interoperate. IPv6 is not a superset of functionality that is backward compatible with IPv4.
A host or router must use an implementation of both IPv4 and IPv6 to recognize and process both header formats. The IPv6
header is only twice as large as the IPv4 header, even though IPv6 addresses are four times as large as IPv4 addresses.
Larger Address Space
IPv6 has 128‐bit ﴾16‐byte﴿ source and destination IP addresses. Although 128 bits can express over 3.4×1038 possible
combinations, the large address space of IPv6 has been designed for multiple levels of subnetting and address allocation from
the Internet backbone to the individual subnets within an organization.
Even though only a small number of the possible addresses are currently allocated for use by hosts, plenty of addresses are
available for future use. With a much larger number of available addresses, address‐conservation techniques, such as the
deployment of NATs, are no longer necessary.
Efficient and Hierarchical Addressing and Routing Infrastructure
IPv6 global addresses that are used on the IPv6 portion of the Internet are designed to create an efficient, hierarchical, and
summarizable routing infrastructure that is based on the common occurrence of multiple levels of Internet service providers.
Stateless and Stateful Address Configuration
To simplify host configuration, IPv6 supports both stateful address configuration ﴾as in the presence of a DHCP server﴿ and
stateless address configuration ﴾as in the absence of a DHCP server﴿. With stateless address configuration, hosts on a link
automatically configure themselves with IPv6 addresses for the link ﴾called link‐local addresses﴿ and with addresses that they
derive from prefixes that local routers advertise. Even in the absence of a router, hosts on the same link can configure themselves
with link‐local addresses and communicate without manual configuration.
Built-in Security
The IPv6 protocol suite requires support for IPSec. This requirement provides a standards‐based solution for network security
needs and promotes interoperability between different IPv6 implementations.
Better Support for QoS
New fields in the IPv6 header define how traffic is handled and identified. Traffic identification ﴾using a Flow Label field in the
IPv6 header﴿ allows routers to identify and provide special handling for packets belonging to a flow, which is a series of packets
between a source and a destination. Because the IPv6 header identifies the traffic, QoS can be supported even when the packet
payload is encrypted through IPSec.
New Protocol for Neighboring Node Interaction
The Neighbor Discovery protocol for IPv6 is a series of Internet Control Message Protocol for IPv6 ﴾ICMPv6﴿ messages that
manage the interaction of nodes on the same link ﴾known as neighboring nodes﴿. Neighbor Discovery replaces the broadcast‐
based Address Resolution Protocol ﴾ARP﴿, ICMPv4 Router Discovery, and ICMPv4 Redirect messages with efficient multicast and
unicast Neighbor Discovery messages.
Extensibility
IPv6 can easily be extended by adding extension headers after the IPv6 header. Unlike options in the IPv4 header, which can
support only 40 bytes of options, the size of IPv6 extension headers is constrained only by the size of the IPv6 packet.
Differences Between IPv4 and IPv6
The following table highlights some of the key differences between IPv4 and IPv6.
Differences between IPv4 and IPv6
IPv4 IPv6
Source and destination addresses are 32 Source and destination addresses are 128 bits ﴾16 bytes﴿ in length. For more
bits ﴾4 bytes﴿ in length. information, see “IPv6 Addressing” in “How IPv6 Works.”
IPSec support is optional. IPSec support is required.
IPv4 header does not identify packet flow IPv6 header contains Flow Label field, which identifies packet flow for QoS
for QoS handling by routers. handling by router.
Both routers and the sending host Only the sending host fragments packets; routers do not.
fragment packets.
Header includes a checksum. Header does not include a checksum.
Header includes options. All optional data is moved to IPv6 extension headers.
Address Resolution Protocol ﴾ARP﴿ uses Multicast Neighbor Solicitation messages resolve IP addresses to link‐layer
broadcast ARP Request frames to resolve addresses. For more information, see “Neighbor Discovery” in “How IPv6 Works.”
an IP address to a link‐layer address.
Internet Group Management Protocol Multicast Listener Discovery ﴾MLD﴿ messages manage membership in local
﴾IGMP﴿ manages membership in local subnet groups.
subnet groups.
ICMP Router Discovery is used to ICMPv6 Router Solicitation and Router Advertisement messages are used to
determine the IPv4 address of the best determine the IP address of the best default gateway, and they are required. For
default gateway, and it is optional. more information, see “Neighbor Discovery” in “How IPv6 Works.”
Broadcast addresses are used to send IPv6 uses a link‐local scope all‐nodes multicast address.
traffic to all nodes on a subnet.
Must be configured either manually or Does not require manual configuration or DHCP.
through DHCP.
Uses host address ﴾A﴿ resource records in Uses host address ﴾AAAA﴿ resource records in DNS to map host names to IPv6
Domain Name System ﴾DNS﴿ to map host addresses.
names to IPv4 addresses.
Uses pointer ﴾PTR﴿ resource records in the Uses pointer ﴾PTR﴿ resource records in the IP6.ARPA DNS domain to map IPv6
IN‐ADDR.ARPA DNS domain to map IPv4 addresses to host names.
addresses to host names.
Must support a 576‐byte packet size Must support a 1280‐byte packet size ﴾without fragmentation﴿.
﴾possibly fragmented﴿.
Related Information
For more information about TCP/IP, see “TCP/IP Technical Reference.”
Community Additions
© 2017 Microsoft