web-dev-qa-db-ja.com

SBS 2008 DNSは、.uk、.eu、および米国以外のその他のTLDで1日後に機能を停止します

SBS 2008では、最初にインストールまたは再起動するとDNSクエリは成功しますが、約1日後に、ユーザーは一部のWebサイトにアクセスできないと報告します。調べてみると、アクセスできないWebサイトが.ukおよび.euトップレベルドメイン(TLD)または米国外にある他の特定のTLDにあることに気付く場合があります。

数日間放置すると、問題は自然に解決したように見え、その後1日ほどで再発する場合があります。

DNSサーバーサービスが再起動されるか、サーバーのDNSキャッシュがクリアされると、問題は一時的に解決されますが、1日ほど後に再発します。

3
Tim Long

この問題の原因は、EU諸国(および米国以外の特定の他のTLD)では、ネームサーバーレコードが通常1日以上キャッシュされることです。 SBS2008には、ネームサーバーレコードのキャッシュを許可する最大時間に上限があります。デフォルトは1日です。このデフォルトは米国では正常に機能しますが、.ukおよび.euレコードが古くなると、キャッシュから削除されませんが、有効なレコードとして返されなくなります。したがって、レコードの有効期限が切れてキャッシュから削除されるか、DNSサーバーサービスが再起動されるまで、これらのTLDでのDNSルックアップが成功するのを効果的に防ぎます。

修正は、DNSサーバーの最大存続時間(TTL)設定を増やして、1日より古いレコードを認識するようにすることです。経験上、値を4日に設定するだけで通常は十分ですが、最大設定は30日です。

Workaround

この問題は、DNSサーバーサービスを再起動するか、DNSサーバーのDNSキャッシュをクリアすることで一時的に解決できます。

永続的な解決には、次のものが含まれます-最大DNSキャッシュTTL値を増やします。 -ルートヒントに依存する代わりにDNSフォワーダーを使用するようにDNSサーバーを再構成します。

解決

恒久的な回避策として、MaxCacheTTL値をTLD TTLよりも大きい値に変更する必要があります(デフォルト値は1日、最大値は30日です)。 SBS2008では、これはリソースレコードのキャッシュのTTLであるため、悪影響はありません。これは、DNSサーバーに保存される最大値です。実際のTTLが短い場合は、短い方の値が使用されます。

  1. レジストリエディタ(Regedit.exe)を起動します。
  2. 次のレジストリキーを見つけます。
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
  3. [編集]メニューの[新規]をクリックし、[DWORD(32ビット)値]をクリックして、次の値を追加します。

    値:MaxCacheTtl
    データ型:DWORD
    データ値:0x69780(10進数で432000 = 5日)

  4. [OK]をクリックします。

  5. レジストリエディタを終了します。
  6. DNSサーバーを再起動します。

追加の予防措置として、を使用してDNSリゾルバキャッシュをクリアします

IPCONFIG /FlushDNS

変更後は、サーバーを監視して、問題が再発するかどうかを確認する必要があります。この値はSBS2008の通常の動作に影響を与えないため、問題が解決しない場合は、この値をより大きな値に増やすことができます。

も参照してください

7
Tim Long