DNS レコードを変更した後、誰もが同時に同じ結果を確認できるわけではありません。 TTL 層とキャッシュ層は、移行計画の重要な部分です。
基本的な考え方
TTL は、DNS 応答をキャッシュできる時間を指定します。承認されたサーバー上で更新を行っても、以前に取得したレコードの残りの寿命が遡って短縮されることはありません。クライアント、ブラウザ、および再帰リゾルバには、異なるキャッシュ層がある場合があります。
確認手順
- 変更前の TTL 値と計画された移行時間を記録します。
- プロキシサーバーの応答を、クライアントによって使用されるリゾルバの応答と比較する。
- 移行中に古いターゲットと新しいターゲットを確実に提供できるように計画します。ローカル キャッシュのクリアだけに頼らないでください。
実践例
TTL が 1 時間の場合、14:00 に IP が変更された場合、13:59 に古い応答を受信したリゾルバは、残りの時間は古い応答を使用できます。切り替えの直前に TTL を下げても、古いキャッシュは即座に更新されません。
結果を正しく解釈する
すべての遅延が DNS 伝播によるわけではありません。間違ったプロキシ、登録の欠落、またはアプリケーション キャッシュによっても、同じイメージが作成される可能性があります。時間、クエリされたサーバー、および戻り値に注目すると、どの層が取り残されているかがわかります。
出典と参考資料
プロトコルまたはコマンドの詳細: RFC 1034。手順とシナリオ例は IPScans の編集者の説明です。