この記事では、リモート デスクトップ プロトコル (RDP) を使用してコンピューターに接続すると、コンピューターがフリーズしたり、ユーザーのログオンが遅くなったりする問題の解決策を示します。
元の KB 番号: 4021856
現象
Windows Server 2012 R2 を実行しているコンピューターへの RDP 接続を作成すると、コンピューターがフリーズします。
それ以外の場合は、新しいユーザーログオンがハングしているように見える程度に遅くなる場合があります。 ユーザーが資格情報を入力する前に遅延が発生する場合もあります。
原因
この問題は、リモート デスクトップ サービス (RDS) (termsrv.dll)、lsass (kerberos)、およびリダイレクターが関係するデッドロック状態が原因で発生します。 RDS サービスがドメイン コントローラーへのリモート レジストリ呼び出しを発行してユーザー構成データを読み込もうとすると、デッドロックが発生します。
ログオンが遅くなったりハングしたりする場合、RDS サービスはドメイン コントローラーに対して API を呼び出し、これらのラウンド トリップによって大幅な遅延が発生します。 これは、次の理由で発生する可能性があります。
- ドメイン コントローラーへのネットワーク リンクが低速で混雑し、フレーム損失が発生し、データ転送の再試行にかなりの時間が費やされます。
- ドメイン コントローラーでは、ローカルのパフォーマンスの問題が発生し、要求に応答が遅くなります。
解決方法
ユーザーのログオン中にドメイン コントローラー要求をオフにするオプションが追加されました。 これにより、デッドロックのウィンドウが回避され、パフォーマンスの問題が修正されます。
Windows Server 2012 R2 で、次の手順に従って、 fQueryUserConfigFromLocalMachine レジストリ エントリを作成します。
重要
慎重にこのセクションの手順に従います。 レジストリを正しく変更しないと、重大な問題が発生する可能性があります。 変更する前に、問題が発生した場合に復元するためにレジストリをバックアップします。
レジストリを変更するには、次の手順に従います。
レジストリ エディターを起動します。 (Windows ロゴ キーを押しながら R キーを押し、[開く] ボックスに「regedit.exe」と入力し、[OK] をクリックします)。
レジストリ エディターで、次のいずれかのレジストリ サブキーを見つけてクリックします。
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\Terminal Services
HKEY _LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\<Connection Name>
Note
既定では、 <Connection Name> の値は RDP-Tcp です。 この値 RDP-Tcp は、名前を変更したり、別のものに構成したりできます。
[編集] メニューの [新規] で [DWORD 値] を選択します。
「 fQueryUserConfigFromLocalMachine」と入力します。
長押し (または fQueryUserConfigFromLocalMachineを右クリックし、 Modify を選択します。
[値] データ ボックスに「1」と入力し、[OK] を選択します。
レジストリ エディターを終了します。
Windows Server 2016 にアップグレードして、この問題を解決することもできます。
Note
Windows Server 2016 ではレジストリ キーを更新する必要はありません。更新された動作が既定です。