Guidance for configuring IPv6 in Windows for advanced users

Windows Vista, Windows Server 2008, and afterward versions of Windows implement RFC 3484 and use a prefix table to make up one's mind which accost to apply when multiple addresses are available for a Domain Proper name System (DNS) name.

By default, Windows favors IPv6 global unicast addresses over IPv4 addresses.

Applies to: Windows 10 - all editions, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Original KB number: 929852

Summary

It is mutual for IT administrators to disable IPv6 to troubleshoot networking-related issues such every bit name resolution issues.

Of import

Internet Protocol version six (IPv6) is a mandatory part of Windows Vista and Windows Server 2008 and newer versions. We exercise non recommend that you disable IPv6 or its components. If you practice, some Windows components may not function.

Nosotros recommend using Prefer IPv4 over IPv6 in prefix policies instead of disabling IPV6.

Use registry key to configure IPv6

Important

Follow the steps in this section carefully. Serious bug might occur if yous modify the registry incorrectly. Before yous modify it, back up the registry for restoration in example issues occur.

The IPv6 functionality tin be configured past modifying the following registry key:

Location: HKEY_LOCAL_MACHINE\Arrangement\CurrentControlSet\Services\Tcpip6\Parameters\
Proper noun: DisabledComponents
Type: REG_DWORD
Min Value: 0x00 (default value)
Max Value: 0xFF (IPv6 disabled)

IPv6 Functionality Registry value and comments
Prefer IPv4 over IPv6 Decimal 32
Hexadecimal 0x20
Binary xx1x xxxx

Recommended instead of disabling IPv6.

Disable IPv6 Decimal 255
Hexadecimal 0xFF
Binary 1111 1111

Run into startup filibuster occurs after you disable IPv6 in Windows if y'all see startup delay after disabling IPv6 in Windows 7 SP1 or Windows Server 2008 R2 SP1.

Additionally, arrangement startup will be delayed for five seconds if IPv6 is disabled by incorrectly, setting the DisabledComponents registry setting to a value of 0xffffffff. The correct value should be 0xff. For more data, meet Internet Protocol Version 6 (IPv6) Overview.

The DisabledComponents registry value doesn't touch the state of the check box. Even if the DisabledComponents registry key is prepare to disable IPv6, the check box in the Networking tab for each interface can be checked. This is an expected behavior.

You cannot completely disable IPv6 equally IPv6 is used internally on the system for many TCPIP tasks. For case, y'all will still exist able to run ping ::ane after configuring this setting.

Disable IPv6 on all nontunnel interfaces Decimal 16
Hexadecimal 0x10
Binary xxx1 xxxx
Disable IPv6 on all tunnel interfaces Decimal 1
Hexadecimal 0x01
Binary xxxx xxx1
Disable IPv6 on all nontunnel interfaces (except the loopback) and on IPv6 tunnel interface Decimal 17
Hexadecimal 0x11
Binary xxx1 xxx1
Prefer IPv6 over IPv4 Binary xx0x xxxx
Re-enable IPv6 on all nontunnel interfaces Binary xxx0 xxxx
Re-enable IPv6 on all tunnel interfaces Binary xxx xxx0
Re-enable IPv6 on nontunnel interfaces and on IPv6 tunnel interfaces Binary xxx0 xxx0

Notation

  • Administrators must create an .admx file to expose the registry settings of below table in a Grouping Policy setting.
  • You must restart your figurer for these changes to have effect.
  • Values other than 0 or 32 causes the Routing and Remote Admission service to fail after this alter takes effect.

By default, the 6to4 tunneling protocol is enabled in Windows when an interface is assigned a public IPv4 address (Public IPv4 accost ways any IPv4 address that isn't in the ranges x.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16). 6to4 automatically assigns an IPv6 accost to the 6to4 tunneling interface for each address, and 6to4 dynamically registers these IPv6 addresses on the assigned DNS server. If this behavior isn't desired, we recommend disabling the IPv6 tunnel interfaces on the afflicted hosts.

You can also follow these steps to modify the registry key:

  1. Open an administrative Control Prompt window.

  2. Run the following control:

                      reg add "HKEY_LOCAL_MACHINE\Organization\CurrentControlSet\Services\Tcpip6\Parameters" /5 DisabledComponents /t REG_DWORD /d <value> /f                                  

    Annotation

    Replace the <value> with the corresponding value.

How to calculate the registry value

Windows use bitmasks to check the DisabledComponents values and determine whether a component should be disabled.

To acquire which component each bit (from depression to high) controls, refer to the following table.

Proper noun Setting
Tunnel Disable tunnel interfaces
Tunnel6to4 Disable 6to4 interfaces
TunnelIsatap Disable Isatap interfaces
Tunnel Teredo Disable Teredo interfaces
Native Disable native interfaces (also PPP)
PreferIpv4 Prefer IPv4 in default prefix policy
TunnelCp Disable CP interfaces
TunnelIpTls Disable IP-TLS interfaces

For each bit, 0 means false and 1 ways true. Refer to the following table for an example.

Setting Prefer IPv4 over IPv6 in prefix policies Disable IPv6 on all nontunnel interfaces Disable IPv6 on all tunnel interfaces Disable IPv6 on nontunnel interfaces (except the loopback) and on IPv6 tunnel interface
Disable tunnel interfaces 0 0 1 ane
Disable 6to4 interfaces 0 0 0 0
Disable Isatap interfaces 0 0 0 0
Disable Teredo interfaces 0 0 0 0
Disable native interfaces (besides PPP) 0 1 0 1
Adopt IPv4 in default prefix policy. 1 0 0 0
Disable CP interfaces 0 0 0 0
Disable IP-TLS interfaces 0 0 0 0
Binary 0010 0000 0001 0000 0000 0001 0001 0001
Hexadecimal 0x20 0x10 0x01 0x11

Using the network properties GUI to disable IPv6 is not supported

This registry value doesn't bear on the state of the following check box. Even if the registry key is set to disable IPv6, the bank check box in the Networking tab for each interface can be selected. This is an expected beliefs.

The Internet Protocol Version 6 (TCP/IPv6) option in Network properties.

Reference

For more data almost RFC 3484, see Default Accost Selection for Net Protocol version 6 (IPv6).

For more than data about how to fix IPv4 precedence over IPv6, encounter Using SIO_ADDRESS_LIST_SORT.

For information almost RFC 4291, see IP Version 6 Addressing Compages.

For more information about the related issues, meet the articles below:

  • Example 1: On Domain Controllers, you might run into where LDAP over UDP 389 will terminate working. Meet How to use Portqry to troubleshoot Active Directory connectivity issues
  • Case two: Exchange Server 2010, you might run into issues where Commutation will stop working. See Arguments against disabling IPv6 and Disabling IPv6 And Substitution – Going All The Way.
  • Case 3: Failover Clusters See What is a Microsoft Failover Cluster Virtual Adapter anyway? and Failover Clustering and IPv6 in Windows Server 2012 R2.

Tools to assistance with network trace: Microsoft Network Monitor 3.4 (archive)

Alert

Netmon iii.4 isn't compatible with Windows Server 2012 or newer OS when LBFO NIC teaming is enabled. Use Message Analyzer instead.