あなたのIPv4アドレス:
オペレーティングシステム:
プロバイダー:

DNSの浸透とは?

「DNSの浸透」とは、レコードを変更したあと、リゾルバーによって返す回答が食い違う期間を指す俗称です。DNSには、新しい値をすべてのサーバーへ一斉に配信する仕組みはありません。フルリゾルバーは必要なときに回答を取得し、許可された有効期間のあいだキャッシュに保持することがあります。

回答が食い違う理由

たとえば、サイト管理者がAレコードのIPアドレスを別の値に書き換えたとします。権威DNSサーバーはすでに新しい値を持っていますが、訪問者が使うフルリゾルバーが直前に古い値を保存していた場合、そのキャッシュが期限切れになるまで、訪問者は以前のサーバーにアクセスすることがあります。回答をキャッシュしてよい時間を決めるのがTTLで、残り時間は、そのリゾルバーが以前の回答をいつ受け取ったかによって変わります。

ドメインの委任先を新しいネームサーバーに切り替えるのは、これとは別の作業です。委任情報もキャッシュされるため、DNSプロバイダーを移行するときは、旧ゾーンと新ゾーンの両方を考慮する必要があります。クエリがまだ旧委任先に向かっているあいだは、新しいプロバイダーの管理画面でレコードを編集しても効果はありません。

正しいレイヤーを確認する

まず、現在の権威DNSサーバーを特定します。そのサーバーに対象のレコードを問い合わせ、結果をいくつかのフルリゾルバーの回答と比べてください。DNS浸透チェックでは見えている回答を比較でき、ドメイン設定チェックでは個々のレコードを調べられます。確認した時刻、正確なホスト名、レコードタイプを記録しておきましょう。A、AAAA、MX、TXTはそれぞれ独立したレコードです。

権威DNSサーバーがまだ古い値を返しているなら、キャッシュの期限切れを待っても解決しません。稼働中のゾーンをどのプロバイダーがホストしているか、編集内容が保存されたかを確認してください。権威DNSサーバーの回答は新しいのに一部のフルリゾルバーが古いままなら、キャッシュが期限切れになるのを待ちます。原因を調べている最中に何度も編集を重ねると、経緯を追いにくくなります。

安全な変更の計画

移行を予定しているなら、旧レコードのTTLを前もって下げ、元のTTLの時間が経過するまで待っておきます。切り替える前に新しいサーバーの準備を整え、可能であれば移行期間中も旧サーバーでリクエストを処理し続けましょう。メールの場合は、MXだけでなく関連するアドレスレコードやTXTレコードもあわせて見直してください。

自分のパソコンでキャッシュをクリアしても、影響するのは経路の一部だけで、他の人が使うリゾルバーのキャッシュは消せません。また、DNSが正しくても、TLSエラーやアプリケーションの不具合が残ることがあります。TTLとキャッシュについてはRFC 1035に、否定応答のキャッシュについてはRFC 2308に規定されています。

Webとメールをまとめて移行する場合は、それぞれのDNSレコードを個別にテストしてください。Webページが表示されても、メール配信が復旧したことの証明にはなりません。