TTL

プロトコル & 標準
存続時間。
← 用語集に戻る

TTLとは

TTL(Time To Live)はDNS設定で、リゾルバー、ブラウザ、その他のシステムがDNSレコードをキャッシュする期間(秒単位)を指定してから、権限あるネームサーバーから新しいコピーをリクエストする必要があります。TTL値はDNS変更の高速伝播(低TTL)と削減されたサーバー負荷と改善されたパフォーマンス(高TTL)のバランスをとります。

TTLの仕組み

TTLを使用したDNSクエリフロー:

1. クライアントがリゾルバーに対してexample.comをクエリ

2. リゾルバーキャッシュをチェック - 見つからない

3. リゾルバーが権限サーバーをクエリ

4. サーバーは192.0.2.1とTTL 3600を返す

5. リゾルバーは3600秒(1時間)キャッシュ

6. 後続クエリはキャッシュから提供される

7. 3600秒後、キャッシュが期限切れ、サイクルが繰り返される

一般的なTTL値

TTL(秒)期間ユースケース
60-3001-5分DNSスイッチ中、フェイルオーバー
300-9005-15分動的サービス
36001時間標準ウェブサイト
144004時間安定したレコード
8640024時間めったに変わらないレコード

DNSレコード内のTTL

レコード形式

example.com.    3600    IN    A    192.0.2.1

└── 秒単位のTTL

レコード別の異なるTTL

; 安定したネームサーバー - 高いTTL

example.com. 86400 IN NS ns1.example.com.

; ウェブサーバー - 中程度のTTL

www.example.com. 3600 IN A 192.0.2.1

; 動的コンテンツ - 低いTTL

api.example.com. 300 IN A 192.0.2.50

TTL戦略

DNS変更の前に

これらの計画的な変更の前にTTLを低下させます:

タイムライン:

日-2: TTLを86400から300に低下

日0: DNSを変更

日0+: 変更は5分以内に伝播

日+1: TTLを86400に戻す

トレードオフ

低TTL(60-300)高TTL(3600以上)
高速伝播遅い伝播
より多くのDNSクエリより少ないDNSクエリ
より高いサーバー負荷より低いサーバー負荷
フェイルオーバーに最適安定性に最適
より高いレイテンシより低いレイテンシ

TTLとDNS伝播

TTLは伝播時間に直接影響します:

最大伝播時間≈最も高いキャッシュされたTTL

TTL = 86400(24時間)の場合:

  • 一部のユーザーは最大24時間古いIPを見る
  • グローバル伝播: 最大24-48時間

TTL = 300(5分)の場合:

  • ほとんどのユーザーは5-10分以内に新しいIPを見る
  • グローバル伝播: 1時間以下

現在のTTLをチェック

digを使用

dig example.com A

;; ANSWER SECTION:

example.com. 3542 IN A 192.0.2.1

└── キャッシュが期限切れになるまでの残り秒数

nslookupを使用

nslookup -debug example.com

ベストプラクティス

1. 適切な値を使用: TTLをレコード変動性に一致させる

2. 変更前に低下: 変更24-48時間前にTTLを低下

3. キャッシング層を考慮: CDN、ブラウザが遅延を追加

4. バランスを取る: 不要に低くしないで負荷対速度

5. 変更後に監視: 伝播が完了したことを確認

6. 標準を文書化: TTLポリシーを確立

TTLは基本的なDNS概念で、DNS変更がインターネット全体でどのくらい速く有効になるか、およびネームサーバーがどの程度の負荷を処理するかに直接影響します。

この知識を実践する

DomScan の API を使用してドメインの可用性、状態などを確認します。