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-clickComputer
, and then clickProperties
. - On the
Advanced
tab, clickEnvironment Variables
. - Under
System variables
, clickNew
. - 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.