web-dev-qa-db-ja.com

Windows 8x64のIPHLPSVC高CPU

私はWindows8 Prox64で一貫して高いCPU使用率を経験していました。原因は、アイドル状態であっても、svchostが一定の25%CPUで実行されていることでした。 svchostが実行しているサービスを確認し、原因が見つかるまでオンとオフを切り替えました。

1つのサービスであるIPHLPSVC(IP Helper)がすべてのCPU使用率を担当していることがわかりました。サービスを停止すると、CPUはアイドル時に0-1%に低下しました。

調査を行ったところ、IPHLPSVはIPv6への移行用のようです。私はまだIPv4を使用しており、タスクが停止しても問題は発生しません。タスクを無効にする必要がありますか?誰かが問題を引き起こしている可能性があるものについて何か考えを持っていますか?

8
kyryx

IPHLPSVCは、IPv6移行テクノロジーを担当します。ただし、これらはそのままでは機能せず、追加の構成が必要です(または、2016年にはまったく機能しません)。

Microsoftは、ISATAPの使用を推奨しておらず(IPv6の理解、第3版、p。302)、代わりにネイティブIPv6を使用する必要があると述べています。パブリック6to4サービスは正式に非推奨になりました(RFC 7526; BCP196)。また、Teredoには、一般的な使用を推奨しない問題の長いリストがあります(推測可能なIPv6アドレスは1つだけ、制限付きNATトラバーサルサポート、さまざまな接続の問題))。

残念ながら、Windowsには、これらすべてをデフォルトで有効にするという悪い習慣がありました。

IPv6移行テクノロジを故意に使用していない場合は、明示的に無効にする必要があります。

コマンドプロンプトを右クリックし、[管理者として実行]を選択します。次に、次のコマンドを貼り付けます。

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

これらをPowerShellで無効にすることもできます(これも管理者として)。

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

次に、コンピューターを再起動します。

8
Michael Hampton

次の手順を実行すると、そのプラグインを無視できる場合があります。

  • Startをクリックし、Computerを右クリックして、Propertiesをクリックします。
  • Advancedタブで、Environment Variablesをクリックします。
  • System variablesの下で、Newをクリックします。
  • Variable nameフィールドにMIG_UPGRADE_IGNORE_PLUGINSと入力します。
  • Variable valueフィールドにIphlpsvcMigPlugin.dllと入力します。
  • OKを3回クリックして、ダイアログボックスを閉じます。

再起動が必要になる場合があります。

現時点でテストするWindows8システムマシンがないため、これはテストされていませんです。この情報はWindows7で見つかりました。これは、Windows7からWindows8システムをアップグレードした場合に直接関係する可能性があります。

2
vgoff