DNS レコードが DNS ゾーンから消える原因の累積リスト

この記事では、DNS レコードが DNS ゾーンに表示されない問題の原因を示します。

適用対象: Windows Server 2012 R2
元の KB 番号: 2985877

現象

正常に登録された DNS レコードが DNS ゾーンに存在しなくなりました。

原因

複数の根本原因が存在し、次の表に示します。

原因 問題 概要
1 DNS の清掃が正しく構成されていません。 1 つ以上の DNS サーバーの清掃機能は、過度に積極的な設定を持つよう構成されており、AD 統合 DNS ゾーンの DNS レコードを途中で削除しています。
2 DNS ゾーンは、Active Directory で CNF または競合が発生します。 Active Directory の DNS ゾーンを表すコンテナーが CNF になったか、競合が発生しました。 これは、最初に空であるか、ゾーンの前のインスタンスに含まれるレコードのサブセットを含む別のコンテナーに置き換えられました。
3 グループ ポリシー オブジェクト (GPO) で定義されている DnsAvoidRegisterRecord。 DC グループ ポリシー設定で登録されていない DC ロケーター DNS レコードを使用して SRV レコードの登録を除外すると、コードの欠陥が発生します。 レジストリ サブキーの下にある DnsAvoidRegisterRecords レジストリ設定を hklm\software\policies\microsoft\netlogon\parameters 変更します。
4 Windows Server 2008 ゾーン転送の削除バグ。 このバグにより、ゾーン転送後に Windows Server 2008 DNS サーバーのセカンダリ ゾーンからレコードが削除されます。
5 ホスト "A" レコードは、IP アドレスが変更されると削除されます。 これは、Windows Vista、Windows Server 2008、Windows 7、または Windows Server 2008 R2 で発生します。 DNS サーバー IP が変更されると、タイミング バグによってホスト "A" レコードが早期に削除されます。
6 オプション 81 で構成された DHCP クライアントは、ホスト "AAAA" 登録中にホスト "A" レコードを登録解除します。 DHCP 割り当てアドレスを受信する Windows 7 および Windows Server 2008 R2 ベースのコンピューターには、DHCP サーバーでオプション 81 が定義されています。 "AAAA" レコード登録中にホスト "A" レコードを登録解除します。
7 KB2520155がインストールされていない限り、DNS サーバー IP を変更するときに発生するタイミングの問題。 DNS クライアントの DNS ホスト レコードは、同じクライアントで DNS サーバーの IP アドレスを変更した後に削除されます。
8 レコード登録エラーにより、レコードは清掃プロセスに対して脆弱になります。 既存のレコードの DNS 動的更新プロトコルの更新が失敗します。 そのため、レコードのタイムスタンプは更新されません。 これにより、正しく構成された DNS 清掃プロセスによるレコードの削除が脆弱になります。
9 特定の Windows クライアントの動的リースが予約に変更されると、DNS レコードが削除されます。 DHCP 対応 Windows クライアントによって現在登録されている DNS レコードは、DHCP サーバーによって削除されます。 削除は、クライアントの動的リースが予約に移行され、次の設定が有効になっている場合に発生します。
  • "常に DNS A レコードと PTR レコードを動的に更新する"
  • "リースが削除されたときに A レコードと PTR レコードを破棄する"
  • "更新を要求しない DHCP クライアントの DNS A レコードと PTR レコードを動的に更新する"
影響を受ける DNS レコードには、ホスト "A"、ホスト "AAAA"、および PTR レコードが含まれます。

解決方法

原因 1: DNS の清掃が正しく構成されていません

DNS レコードが DNS ゾーンから欠落している場合、清掃は最も一般的な原因です。 サーバーが静的に割り当てられている Windows ベースのコンピューターでも、24 時間ごとにレコードが登録されます。 NoRefresh と Refresh の間隔が低すぎることを確認します。 たとえば、これらの値の両方が 24 時間未満の場合、DNS レコードは失われます。

TechNet: DNS のエージングと清掃の使用

原因 2: DNS ゾーンが CNF であるか、Active Directory で競合が発生する

例外を除き、Active Directory では、書き込み可能なディレクトリ パーティションにオブジェクトを作成するドメイン コントローラーを作成できます。 2 つのドメイン コントローラーがレプリケーション ウィンドウ内に同じオブジェクトまたはコンテナーを作成すると、ディレクトリによって競合解決ロジックが適用され、以下が決定されます。

  • どのオブジェクトが残る必要があります。
  • どのオブジェクトを検疫する必要があります。

オブジェクトのレプリケーションによって名前の競合が発生した場合 (2 つのオブジェクトが同じコンテナー内で同じ名前を持っているか、同じコンテナー名を持つ) 場合、ディレクトリはオブジェクトの 1 つの名前を一意の名前に自動的に変更します。 具体的には、作成されたオブジェクトの DN パスに "*CNF:<GUID>" 文字列が追加されます。 最後のライター ドメイン コントローラーによって作成されたインスタンスは残ります。

DNS ゾーン (または下位コンテナー) を表すコンテナーが競合を回避した場合、DNS ゾーンのより完全なコピーを表すコンテナーは、(最初は) 完全ではない、または空の名前のコンテナーに置き換えることができます。

残るゾーンのコピーを決定します。 ゾーンの 不適切な コピーを削除します。これは、CNF 以外の DN パスを持つ可能性があります。 必要に応じて、ゾーンの CNF-mangled コピーの名前を変更します。 次に、DNS サーバー サービスを再起動するか、ゾーンを再読み込みします。

原因 3: GPO で定義されている DnsAvoidRegisterRecord

原因 3 は、GPO の DnsAvoidRegisterRecords 設定を使用して SRV レコードが除外されるコードの欠陥に関連しています。 Windows クライアントを対象とする DNS サーバーは、5 分ごとにレコード更新プログラムを受け取ります。 dnsRecord のタイムスタンプとバージョン番号は常に増加します。 SRV レコードは、リンクされていない複数値属性である dnsRecord 属性に格納されます。 ドメイン コントローラー、または正しくない更新プログラムを受け取る DNS サーバーは、常に競合解決に勝ちます。 一部の更新プログラムは失われ、他の削除されたレコードは不思議なことに戻ってきます。

一括再起動に関連する SRV レコードの損失には、リンクされていない複数値属性に対する最終ライター優先動作に関して同じ問題があります。 ただし、GPO によって引き起こされるバージョンチャーンは、登録のソースには移動しません。 多数のドメイン コントローラーの一括再起動が同時登録の原因です。 一部の管理者は、SRV 登録ウィンドウを下げることで、この動作を回避しています。

この問題の適切な解決策は、ドメイン コントローラー上の DNS クライアントが、名前解決のプライマリとしてオフボックスの DNS サーバー アドレスをポイントするように構成することです。 リージョンごとにローカル ハブの DNS サーバーを指定し、そのリージョン内のすべての DNS サーバーが 1 つの DNS サーバーを指すようにします。 ハブレット DNS サーバーはすべて、階層化されたハブアンドスポーク モデル内の 1 つの DNS サーバーを指します。 すべての DNS サーバーは、自身をセカンダリサーバーとして指すことができますが、プライマリを指すものではありません。 Windows Updateによってトリガーされる再起動は通常、タイム ゾーンごとに 1 つのハブレット DNS サーバーしかない限り、03:00 に発生するため、この問題は発生しません。

不足しているレコードを含む dnsNode オブジェクトの Active Directory オブジェクトのバージョンを確認します。 数値が多い場合は、問題になる可能性があります。 SRV レコードの除外をローカル ポリシーに移動して、一定の登録解除を停止する可能性があります。

ただし、新しい動作に問題があります。 新しい動作では、SRV レコードは 1 回だけ削除されます。特に、ポリシーが初めて適用されるときに削除されます。 レコードはリンクされていない複数値属性であるため、次の条件が発生する可能性があります。

複数のドメイン コントローラーは、ゾーンの Active Directory カバレッジの前に、異なる DNS サーバー上の SRV レコードを削除します。

基になる属性が完全に収束した場合、削除を受け取る最後の DNS サーバーは、保持されている唯一のバージョンです。 その DNS サーバーで削除されたレコードのみが SRV レコードから削除されます。 他の DNS サーバーで削除された SRV レコードが戻ってくるようです。 すべてのドメイン コントローラーが GPO を適用し、影響を受ける SRV レコードが完全に収束した後、手動クリーンアップが必要になる場合があります。

原因 4: Windows Server 2008 ゾーン転送の削除のバグ

この問題は、Windows Server 2008 Service Pack 2 または KB953317をインストールすることで解決されます。 この問題は、DNS ゾーンのセカンダリ コピーをホストしている Windows Server 2008 DNS ゾーンに固有です。 他のバージョンの Windows を実行しているコンピューターに Microsoft DNS Server ロールがインストールされている場合は発生しません。

原因 5: IP アドレスが変更されたときにホスト "A" レコードが削除される

Windows Server 2008 または Windows Server 2008 R2 の TCP/IP ネットワーク スタック上の DNS サーバーの IP アドレスを変更することを想定しています。 次に、コンピューターを再起動します。 このシナリオでは、新しく構成された DNS サーバー IP アドレス (Active Directory 統合 DNS) にホスト A レコードを登録した後に、元の DNS サーバーでホスト "A" レコードが削除されることがあります。 ユーザーの観点からは、名前解決に依存するものは何でも壊れています。

クライアントで DNS サーバー IP が変更されると、クライアントは SOA 更新プログラムを送信して、古い DNS サーバーから "A" レコードを削除します。 また、"A" レコードを新しい DNS サーバーに登録するための別の更新プログラムが送信されます。

この DCR は、古いホスト "A" レコードの数を減らすために設計されています。 Active Directory 統合ゾーンで問題が発生します。

この問題は、クライアントで DNS サーバー IP が変更されたときに発生します。 変更されると、クライアントは新しいサーバーに登録要求を送信し、古いサーバーに要求を削除します。 両方のサーバーが既に同期されているため、レジスタは発生しません。 ただし、削除は古いサーバーで行われ、Active Directory が原因で両方のサーバーで削除されます。

原因 6: オプション 81 で構成された DHCP クライアントは、ホスト "AAAA" 登録中にホスト "A" レコードを登録解除します

この問題は、オプション 81 が定義されていて、ISATAP または 6to4 インターフェイスが存在する場合に発生します。 DNS 動的更新プロトコルの更新によって TTL が 0 に誤って設定され、IPv6 レコード登録のレコード削除がトリガーされます。

原因 7: KB2520155がインストールされていない限り、DNS サーバーの IP を変更するときに発生するタイミングの問題

この問題は、DNS クライアント サービスの問題が原因で発生します。 クライアントで DNS サーバー構成情報が変更されると、DNS クライアント サービスは、古い DNS サーバーからクライアントの DNS ホスト レコードを削除します。 次に、レコードを新しい DNS サーバーに追加します。 DNS レコードは、同じドメインの一部である新しいサーバーに存在します。 そのため、レコードは更新されません。 ただし、古い DNS サーバーは、削除操作を新しい DNS サーバーと他の DNS サーバーにレプリケートします。 そのため、新しい DNS サーバーはレコードを削除し、レコードはドメイン全体で削除されます。

Windows Vista、Windows 7、Windows Server 2008、および Windows Server 2008 R2 コンピューターにKB2520155 をインストールします。

原因 8: 既存のレコードに対する DNS 動的更新プロトコルの更新が失敗し、古いレコードとして清掃プロセスによって削除される

DNS レコード登録エラーには、複数の根本原因が存在します。

NETLOGON イベント 577X イベントは、NETLOGON サービスによる SRV レコードのレコード登録エラーに関してログに記録されます。

ホスト A レコードと PTR レコードの登録エラーに関して、その他のイベントがログに記録されます。 これらのエラーがないか、システム ログを確認します。 このようなイベントは、これらのレコードを登録するクライアントによってログに記録される場合があります。 または、クライアントの代わりにレコードを登録する DHCP サーバーによってログに記録される場合もあります。

原因 9: アクティブな動的リースを予約に変換すると、そのクライアントの A レコードと PTR レコードが削除されます

この動作は仕様です。 DNS レコード (A record/PTR) は、クライアントからの次の DHCP 更新要求中に自動的に更新されます。

詳細

KB306602 クライアントのサイトの外部に存在するドメイン コントローラーまたはグローバル カタログの場所を最適化する方法

KB953317 プライマリ DNS ゾーン ファイルが Windows Server 2008 のセカンダリ DNS サーバーに転送されない場合があります