IPv6 Operating Systems

All current operating systems for host computers and end users support IPv6 in their
base installation.
Functionality and support for the basic IPv6 features is solid
and either activated by default or requires only few manual configuration.
The following table summarizes the basic support:

Support for newer IPv6 subprotocols and features (tunnels, various forms of auto configuration)
and streamlined IPv6 support in system services and software is more mixed, however.
The state of documentation varies as well:
quite good in the commercial systems (Unix, Cisco’s IOS and newer Windows) but
almost non-existent in the various Linux and BSD-based (includes OS X) systems (which
is quite sad since it does not mirror their IPv6 stacks’ quality).

Linux IPv6

IPv6 support in the vanilla/baseline Linux kernel is based on USAGI. Functionality is quite extensive,
integral parts build into the main kernel and utilities; more complex IPv6 subprotocols need separate
software and/or kernel patching.

BSD (KAME) IPv6

All of the four listed BSD operating systems integrate
the KAME IPv6 stack. However, different levels of the kernel/network parts
are implemented and the utilities from KAME for the various subprotocols
are not distributed with the base operating systems.

Basic IPv6 support is available by default on all KAME-based systems. Support
for subprotocols as e.g. DHCPv6, newer tunnelling mechanisms or Mobile IP needs
separate software and partially kernel patching.

There is almost no current and/or useful IPv6 documentation in the BSD projects.

Unix IPv6

The IPv6 stacks of the commercial Unixes are mostly own developments
of the respective vendors.
Integration into the base system varies between vendors and operating system
releases. The newer versions mostly include basic IPv6 support in the base
operating system.