IPHLPSVC High CPU in Windows 8 x64

Solution 1:

IPHLPSVC is responsible for IPv6 transition technologies. However, these do not work out of the box and require additional configuration (or just do not work at all in 2016).

Microsoft recommends against using ISATAP (in Understanding IPv6, Third Edition, p. 302) and says that native IPv6 should be used instead. Public 6to4 service is officially deprecated (RFC 7526; BCP 196). And Teredo has a long list of issues (only one IPv6 address which is guessable, limited NAT traversal support, various connectivity problems) which recommend against its use generally.

Unfortunately Windows had a bad habit of enabling all of these by default.

If you aren't knowingly using IPv6 transition technologies, you should explicitly disable them.

Right-click on Command Prompt and choose Run as Administrator. Then paste in the following commands:

netsh int ipv6 isatap set state disabled
netsh int ipv6 6to4 set state disabled
netsh int teredo set state disabled

You can also disable these with PowerShell (again, as Administrator):

Set-NetIsatapConfiguration -State Disabled
Set-Net6to4Configuration -State Disabled
Set-NetTeredoConfiguration -Type Disabled   

Then restart your computer.

Solution 2:

You may be able to ignore that plugin by doing the following steps.

  • Click Start, right-click Computer, and then click Properties.
  • On the Advanced tab, click Environment Variables.
  • Under System variables, click New.
  • Type MIG_UPGRADE_IGNORE_PLUGINS in the Variable name field.
  • Type IphlpsvcMigPlugin.dll in the Variable value field.
  • Click OK three times to close the dialog boxes.

You may need to restart.

This has not been tested by me, as I do not have a Windows 8 system machine to test on at the moment. This information was found for Windows 7, which may be directly relevant if you have an upgraded Windows 8 system from Windows 7.