この記事では、サーバー ポート 88、464、389、3268 に対して作成された伝送制御プロトコル (TCP) セッションがリセットされる問題の解決策を示します。 ポート 636 および 3269 で Secure Sockets Layer (SSL) またはトランスポート層セキュリティ (TLS) を使用するセッションも影響を受けます。
また、ユーザー データグラム プロトコル (UDP) ポート 88 と 464 の要求が応答を受け取らない場合もあります。
元の KB 番号: 2000061
Windows Server ロール Active Directory ドメイン Services (AD DS) または Active Directory Lightweight Directory Services (AD LDS) を実行している。 散発的に、サーバー ポート 88、464、389、3268 に対して作成された TCP セッションがリセットされる状況が発生します。 ポート 636 および 3269 で Secure Sockets Layer (SSL) またはトランスポート層セキュリティ (TLS) を使用するセッションも影響を受けます。
ネットワーク トラフィックのトレースでは、TCP 3 方向ハンドシェイクを使用してセッションが確立された直後に、TCP RESET (または RST) がサーバーによって送信されたフレームを確認できます。 クライアントは RESET が送信される前に要求データを送信できる可能性がありますが、この要求は応答されず、データは確認されません。
UDP の場合、ポート 88 と 464 の要求が応答を受け取らないことがわかります。
不適切なアイドル 状態のセッション監視
LDAP サーバーと Kerberos キー配布センター (KDC) の TCP セッションを管理するライブラリは、消去スレッドを使用して非アクティブなセッションを監視し、アイドル状態が長すぎる場合はそれらのセッションを切断します。 清掃スレッドは、これらのセッションをクリーンアップするために 30 秒ごとに実行されます。
KDC レジストリ エントリ NewConnectionTimeout
は、既定の 10 秒を使用してアイドル時間を制御します。 ただし、清掃の実装に基づいて、有効間隔は 0 ~ 30 秒です。 そのため、新しく作成されたセッションは、サーバーによって散発的に直ちに切断される可能性があります。
NewConnectionTimeout をリセットする
KDC ポートの場合、Windows Kerberos クライアントを含む多くのクライアントは再試行を実行し、セッションで動作する完全タイマー ティックを取得します。 LDAP アプリケーションでは、接続リセットが致命的な障害であると考える可能性が高くなります。
NewConnectionTimeout
を 40 以上に設定すると、30 ~ 90 秒のタイムアウト期間が表示されます。 70 秒以上を使用すると、タイムアウトに対して 60 ~ 120 秒が発生します。 NewConnectionTimeout
レジストリ値の詳細については、Windows の Kerberos プロトコル レジストリ エントリと KDC 構成キーを参照してください。
KDC が特定の UDP Kerberos 認証要求に応答しない可能性がある
Windows Server ロール AD DS を実行している。 クライアントは、ソース ポート 22528/UDP または 53249/UDP から Kerberos 認証またはパスワード変更要求を送信しますが、KDC が応答しない可能性があります。
Note
Microsoft Kerberos クライアントは、Windows Vista 以降、既定で TCP Kerberos 認証を使用します。 したがって、この問題は、Kerberos 要求に UDP を使用するサードパーティ製品でのみ発生する可能性があります。
KDC には、要求ループに対する保護が組み込まれており、ソース ポート 88/UDP および 464/UDP での Kerberos 認証要求をブロックします。 ただし、実装にはバイト順序のバグがあるため、ソース ポート 22528/UDP と 53249/UDP はブロックされます。
クライアント上の UDP のエフェメラル ポート範囲から 22528/UDP と 53249/UDP を除外する必要があります。