推奨されるDNS SOAレコードTTLデフォルト?


43

現在、stackoverflow.comのDNS SOAレコードは次のように設定されています。

    primary name server = ns1.p19.dynect.net
    serial  = 2009090909
    refresh = 3600 (1 hour)
    retry   = 600 (10 mins)
    expire  = 604800 (7 days)
    default TTL = 60 (1 min)

1日あたり1M近くのページビューを受け取るstackoverflow.comのようなサイトの更新/再試行/期限切れ/デフォルトTTLのより良い選択肢はありますか?

回答:


48

サイトへの実際のトラフィックレートは無関係です。

これらのすべての設定(「デフォルトTTL」を除く)は、ドメインのセカンダリDNSサーバーが更新のためにプライマリDNSサーバーをポーリングする頻度にのみ影響します。

ゾーンの変更頻度が低い場合(あなたのゾーンの変更はそうだと思います)、「リフレッシュ」の値は現在少し下側にあります。通常、プライマリがNOTIFYゾーンファイルをすぐに取得する時点で更新があるたびに、プライマリは各セカンダリにメッセージを送信する必要があります。最近では、「更新/再試行/期限切れ」メカニズムは、それに対するバックストップにすぎません。

いずれにしても、DNSプロバイダーは、DNSの組み込みの同期メカニズムを使用せずに、関連するすべてのDNSサーバーへの変更をその場で自動的に同期している可能性が高いため、実際の値はおそらく無関係です。

「デフォルトTTL」フィールドは、それが言うことを意味しないことに注意してください。実際のデフォルトTTLは(少なくともBINDで)$TTLディレクティブで設定され、各レコードに明示的なTTLが設定されていない場合にのみ使用されます。

「デフォルトTTL」フィールドの意味はRFC 2308で変更され、実際にはネガティブキャッシングのヒントになっています。サーバーが否定的な応答(NXDOMAINまたはNODATA)を返す場合、リモートサーバーが再試行するまで待機する時間です。

現在の値は少し下側ですが、そのままでも問題はありません。とにかく無視されることがよくあります。


「デフォルトTTL」値は、SOAレコード自体のTTLより小さい場合、ネガティブキャッシュTTLにのみ使用されることに注意してください。詳細について5 - Caching Negative Answersは、参照RFCを参照してください。詳細:serverfault.com/questions/426807/...
htaccessを

8

興味深いことに、dyn guys(当社のDNSホスト)からのDNS診断ページ。

http://dnscog.com/report/stackoverflow.com

.. MINTTLでこれを言う:

SOA MINTTLを確認してください

SOA minttl値は60秒で、一般的なDNSの使用に推奨される最小値よりも低くなっています。DNSゾーンを定期的に変更する場合、またはDNSベースの負荷分散サービスを使用する場合、ここで小さな値を入力しても問題ありません。

勧告

SOA minttlフィールドに1800〜86400の値を入れることを検討してください。

そしてこれはSOAの更新で

SOAの更新を確認する

SOAリフレッシュフィールドは3600秒で、推奨される最小値よりも低くなっています。リフレッシュ値を低くすると、特に値0を使用する場合に、不要なクエリボリュームまたは予期しない動作が発生する可能性があります。変更はできるだけ早く伝播します。

勧告

SOAリフレッシュフィールドに7200〜10800の値を入れることを検討してください。

http://www.intodns.com/stackoverflow.comの別の診断ページでは、実際のヒントは提供されていません。


12
彼らのminttlの推奨事項は偽物です。その分野は10年以上その意味を持っていませんでした。リフレッシュの説明も疑わしい。更新間隔はプライマリ->セカンダリスレーブにのみ影響し、このような小さなゾーンではこの値はまったく問題を引き起こしません。さらに、DNSプロバイダーが帯域外同期メカニズムを使用している場合、実際の値は意味がありません。(注:私は生活のためにDNSを行っています)
Alnitak

4
ps誰かが実際に自分の説明としてこれを与え、値に対する推奨事項を与えた場合、私は-1票を与えます。他の人を引用しているので、私はしません;
アルニタック

2
明確にするために、SOA最小TTLフィールドには、負の要求(存在しないリソースのゾーンに対して行われた要求)をキャッシュするために使用されるTTL値が格納されます。彼らの説明は一種の真実であるが、それが否定的な応答のためだけであることを明確にすることはできません。第二に、SOAリフレッシュは通常のDNSクエリでは決して使用されず、プライマリ(マスター)ネームサーバーから自身を更新するセカンダリ(スレーブ)ネームサーバーがある場合にのみ使用されます。したがって、その分野の説明は間違いです。
thomasrutter

3
本当に、これらの記録がオンラインで何を意味するかについての非常に多くの誤った情報があるので、実際に真実であるものを見つけるのは難しいです。要約すると、SOAレコードのほとんどの値は実際のDNSクエリには意味がなく、代わりにプライマリネームサーバーからセカンダリネームサーバーへの独自の内部ゾーン転送メカニズムに使用することを目的としています。例外はMinTTLですが、標準が示唆するように、最小TTLでも「デフォルト」TTLではなく、否定的な結果をキャッシュするための推奨TTLではありません。さらに重要なのは、AやNSなどのレコードの個々のTTLです。
thomasrutter 14年

4
これらのintodns / dnscog / dnsstuffなどのタイプのサイトはすべて、互いに同じ誤った情報をコピーするだけです。彼らのテキストの多くはコピー&ペーストされているのでわかります。MXToolbox(mxtoolbox.com/DNSCheck.aspx)がより信頼できるリソースであることがわかりました。たとえば、ここでのSOA MINTTL値の説明は正確であり、まれな品質です。
トーマスラッター14年

8

Pingdomから:http ://dnscheck.pingdom.com/

SOA TTL  recommended >= 3600.
SOA refresh  recommended >= 14400.
SOA retry  recommended >= 3600.
SOA expire  recommended >= 604800.
SOA minimum  recommended between 300 and 86400.
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.