コンピューター名に大文字がある場合、Windows DNS は DC の重複する SRV レコードを登録します

この記事は、コンピューター名に大文字がある場合に、Windows DNS によってドメイン コントローラーの重複するサーバーの場所 (SRV) レコードが登録される問題を解決するのに役立ちます。

適用対象:Windows Server 2019、Windows Server 2016
元の KB 番号: 4496901

現象

AD DS 統合 DNS ゾーンを使用する展開には、1 つ以上の Windows Server 2019 ベースまたはWindows Server 2016 ベースのドメイン コントローラー (DC) があります。 少なくとも 1 つの DC に、大文字を含むコンピューター名があります。

この状況では、ドメインの DNS レコードに、コンピューター名に大文字を含む DC の重複サーバーの場所 (SRV) レコードが含まれていることがわかります。 1 つのレコードには、すべての小文字で RDATA のコンピューター名が含まれており、1 つのレコードには、コンピューター名と同じ文字ケースの RDATA のコンピューター名が含まれます。

原因

この動作は、Windows Server DNS 機能が SRV レコードの RDATA セグメントを管理する方法が変更されたために発生します。 R2 以前のバージョンWindows Server 2012、RDATA セグメントには小文字のみが含まれています。 コンピューター名に大文字が含まれている場合、DNS 機能によって小文字に変換されます。 ただし、Windows Server 2016 (またはそれ以降のバージョン) DNS 機能では、大文字と小文字を使用できます。

DNS サーバーが、コンピューター名に既に関連付けられている SRV レコードがあるかどうかを確認する場合、そのサーバーは変更を考慮しません。 そのため、アドレスが異なるとWinServ16.contoso.comwinserv16.contoso.comなされます。

このため、次の構成を使用すると予期しない効果が発生する可能性があります。

  • ドメイン内のすべての DNS サーバーと DC は、Windows Server 2012 R2 (またはそれ以前のバージョン) からWindows Server 2016 (またはそれ以降のバージョン) にアップグレードされています。 DNS データベースは、コンピューター名に大文字を含む DC に対して追加の SRV レコードを生成できます。

  • ドメイン内のすべての DNS サーバーと DC は、Windows Server 2012 以前に実行されます。 DNS サーバーロールをWindows Server 2016メンバー サーバーにインストールし、そのメンバー サーバーを同じドメイン内の DC に昇格させます。 Windows Server 2016 DC のコンピューター名に大文字が含まれている場合は、DNS に追加の SRV レコードが含まれます。

  • さまざまなバージョンの Windows Server を実行する DC と DNS サーバーを含むドメインがあります。 プライマリ DNS サーバーは、Windows Server 2012 以前に実行される DC であり、セカンダリ DNS サーバーは Windows Server 2016 DC です。 プライマリ DNS サーバーが使用できなくなり、Windows Server 2016 DC を新しいプライマリ DNS サーバーに変更します。 この変更の後、DNS データベースは、コンピューター名に大文字を含む任意の DC に対して追加の SRV レコードを生成する可能性があります。

解決方法

Microsoft は、この問題を軽減する更新プログラムをリリースしました。 次の表に、影響を受けるバージョンの Windows の関連するバージョンの更新プログラムを示します。

バージョン リリース
Windows Server 2019 バージョン 1903 2020 年 3 月 24 日-KB4541335 (OS ビルド 18362.752 および 18363.752)
Windows Server 2019 バージョン 1809 2020 年 3 月 17 日-KB4541331 (OS ビルド 17763.1131)
Windows Server 2016 2020 年 3 月 17 日-KB4541329 (OS ビルド 14393.3595)

この更新プログラムでは、NETLOGON に新しいグループ ポリシー ポリシー設定が導入されています。ADMX ファイル。次の表で説明します。

ポリシー名 ドメイン コントローラー SRV レコードを登録するときに小文字の DNS ホスト名を使用する
ポリシー パス コンピューターの構成\Policies\管理用テンプレート\System\Net Logon\DC ロケーター DNS レコード\
ポリシー値
  • 1 (既定値)。 このポリシーは有効になっています。 このポリシーでは、重複する DNS SRV レコードが消去されます。 DC に更新プログラムをインストールすると、その DC の既定のローカル構成の一部になります。
  • 0. ポリシーが無効になっています。 この設定では、問題のある動作が続き、大文字を含むコンピューター名を持つ DC は、それらの大文字を含む SRV レコードを登録し続けます。 値 0 は、緊急またはテストでのみサポートされます。 一般的な条件下では使用しないでください。
ポリシーが構成されていない場合、または値が見つからない場合、DC は新しい既定のローカル構成にフォールバックし、ポリシーを有効として扱います。

この更新プログラムは、このポリシーに関連付けられている次のレジストリ エントリを追加します。 (この情報は参考用にのみ提供されます)。

  • レジストリ サブキー: HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Netlogon\Parameters
  • レジストリ エントリ: DnsSrvRecordUseLowerCaseHostNames
  • データ型: REG_DWORD

更新プログラムをインストールした後

注:

更新プログラムをインストールしたり、手動でレコードをクリーンしたり、ポリシーを無効にしたりするときに、Netlogon サービスを再起動または無効にする必要はありません。 更新プログラムをインストールした後、コンピューターを再起動する必要はありません。

更新プログラムをインストールする (またはポリシーが無効になっている環境でポリシーを有効にする) 場合、Netlogon サービスは大文字を持つ既存の DNS レコードを削除することをベスト エフォートで試みます。

この修正プログラムをインストールするか、ポリシーを有効にしてから、Netlogon が新しい設定を取得して適用するまで 1 日または 2 日待つようお勧めします。 その後、変更が環境全体でレプリケートされるまで十分な時間待ちます。 その後、残りの重複がないか DNS レコードを調べます。 ポリシーが重複するレコードを見逃す可能性があります。 その場合は、それらのレコードを手動で削除する必要があります。

次のWindows PowerShell コマンドを使用して、レコードを確認できます。

Get-DnsServerResourceRecord -ZoneName "contoso.com" -RRType Srv

注:

このコマンドでは、 contoso.com はプレースホルダー ドメイン名です。

残りの重複レコードを削除するには、次の PowerShell コマンドを実行します。

Remove-DnsServerResourceRecord -ZoneName "contoso.com" -RRType Srv -Name "<hostname of record to delete>" -RecordData "<recorddata of record to delete>"​

ポリシーを無効にしてもクリーンアップは必要ありません。

重要

Microsoft は、この問題を解決し、定期的な問題を回避するための更新プログラムをリリースしました。 問題を回避するのではなく、更新プログラムをインストールすることをお勧めします。

回避策 1: 重複する SRV レコードを防止する

Windows DNS で重複する SRV レコードが作成されないようにするには、次の方法を使用します。

  • メンバー サーバーを DC に昇格させる前、または DC を Windows Server 2016 以降のバージョンにアップグレードする前に、そのコンピューター名に小文字のみが含まれていることを確認してください。

  • コンピューター名を作成、変更、または使用するすべての内部ビルド プロセス、ツール、スクリプトでも小文字が使用されていることを確認します。

  • DC の名前を変更できない場合 (または、それに時間がかかる場合)、Windows Server 2016以降を実行する DC がWindows Server 2016以降を実行する DNS サーバーを使用するように DNS トポロジを構成します。 同様に、R2 以前Windows Server 2012実行する DC を、R2 以前Windows Server 2012実行する DNS サーバーを使用するように構成します。

回避策 2: 重複する SRV レコードを削除する

この問題が発生した後でこの問題を回避するには、すべての小文字を使用して DC の名前を変更する必要があります。 デプロイの詳細によっては、手動で設定を再構成したり、ファイルを削除したりする必要がある場合があります。 このセクションでは、複雑さの順に次の回避策を示します。

重要

これらの方法のいずれかを使用する前に、次の記事を確認してください。 これらの記事では、DC の名前を変更するための詳細な手順について説明します。 また、DC を降格または名前変更した後に実行する必要があるその他のクリーンアップ タスクに関する情報も提供されます。

注:

DC の名前を変更した後に問題が発生した場合は、DC 名を元のコンテンツに戻します。

方法 1: 単一 DC ドメインの DC の名前を変更する

DC が 1 つの場合は、「 ドメイン コントローラーの名前を変更 する」の手順を使用して、DC のコンピューター名を小文字のみを含む新しい名前に変更します。 1 つの DC の場合、降格して再現する必要はありません。

重要

任意のドメインに少なくとも 2 つの DC が含まれていることを強くお勧めします。 DC が 1 つしかない場合、DC で問題が発生するたびに、ドメインが使用できなくなる可能性があります。

方法 2: マルチ DC ドメイン内の DC の名前を変更する

ドメインに複数の DC がある場合は、影響を受ける DC ごとに次の手順に従います。

  1. DC を降格し、関連するメタデータをクリーンします。 詳細については、「 ドメイン コントローラーとドメインの降格」およびAD フォレストの回復 - 削除された書き込み可能なドメイン コントローラーのメタデータのクリーニング」を参照してください。

  2. コンピューターの名前を変更し、小文字のみを含む名前を付けます。

  3. コンピューターをもう一度 DC に昇格させます。

すべての DC がオンラインに戻る頃には、重複する (大文字と小文字が混在する) SRV レコードは失われます。

方法 3: DC の名前を変更し、格納されているすべての SRV レコードを削除する

方法 1 と方法 2 で十分な結果が得られない場合は、影響を受ける DC ごとに次の手順に従います。

  1. DC を降格し、関連するメタデータをクリーンします。 詳細については、「 ドメイン コントローラーとドメインの降格」およびAD フォレストの回復 - 削除された書き込み可能なドメイン コントローラーのメタデータのクリーニング」を参照してください。

  2. 降格されたコンピューターで、次の手順に従います。

    1. コンピューターの名前を変更し、小文字のみを含む名前を付けます。
    2. netlogon サービスを停止します。 これを行うには、管理者特権のコマンド プロンプト ウィンドウを開き、 を実行 net stop netlogonします。
    3. C:\Windows\System32\config\ フォルダー内の次のファイルを削除します。
      • netlogon.dnb
      • netlogon.dns
  3. 他のいずれかの DC で、サーバー マネージャーを開き、[ツール] を選択し、[DNS] を選択します

  4. DNS マネージャーで、 前方参照ゾーン の下のコンテナーを検査し、降格した DC の SRV レコードを削除します。

  5. 名前が変更されたコンピューターで、netlogon サービスを開始します。 これを行うには、管理者特権のコマンド プロンプト ウィンドウを開き、 を実行 net start netlogonします。

  6. 名前が変更されたコンピューターをもう一度 DC に昇格します。