Disabling IPv6 on Server Core and Hyper-V Server

Note: this original KB article from which this guidance was taken has now been removed. Please see the comments below for more information.

I recently posted about the Conflicting Microsoft guidance on IPv6. While you can remove IPv6 from a NIC on a full installation of Windows Server 2008 by un-ticking the IPv6 box in the NIC properties (satisfying the Hyper-V performance guidance), you may have noticed that there’s no obvious way to disable IPv6 in server core or Hyper-V Server. If you looked in to it in a bit more detail you may have noticed a registry “fix” for this. Personally I’m always a bit skeptical of registry fixes until I see Microsoft recommending them, but now Tonyso has posted a link to a Microsoft KB article that endorses this approach (when necessary):

To completely disable IPv6 on a Windows Server 2008-based computer yourself, follow these steps:

  1. Open Registry Editor.
  2. Locate the following registry subkey:
    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6Parameters
  3. In the details pane, click New, and then click DWORD (32-bit) Value.
  4. Type DisabledComponents, and then press ENTER.
  5. Double-click DisabledComponents, and then type 0xffffffff in Hexadecimal or 4294967295 in Decimal.Note The 0xffffffff value or the 4294967295 value disables all IPv6 components except for the IPv6 loopback interface.

A reboot is required before the change will take effect.