DNS 伝播チェッカー
4つの公開リゾルバ——Google、Cloudflare、Quad9、OpenDNS——にドメインの向かう先を尋ね、一致するかどうかを確認します。1つの質問に4つの答え、sysosxのサーバーから:DNSの変更が実際に広まったかどうかを判断する最も速く正直な方法です。
自動で監視し続けたいですか?myeventwatch で無料監視——有効期限とダウンタイムのアラート、カード不要。
伝播とは実際には何か
伝播というイベントは存在しません。DNSレコードを変更しても、何かがどこかへ移動するわけではありません:権威ネームサーバーが単に異なる答えを返すようになり、世界中のすべてのリゾルバは、その答えのTTLが切れるまで、最後に取得したものを返し続けます。編集の5分前に尋ねたリゾルバは、残りのTTLの間、古い値を返します;編集後に初めて尋ねたリゾルバは、すぐに新しい値を取得します。「伝播」とは、数千の独立したキャッシュがゆっくりと収束していくことにすぎず、それぞれが独自の時計を持っています——だからこそ終了時刻はなく、TTLで区切られた窓があるだけで、正直な問いは決して「伝播したか?」ではなく「重要なリゾルバはもう一致しているか?」なのです。
このページは、インターネットの大部分が実際に使っている4つのリゾルバについて、その質問に答えます。Google、Cloudflare、Quad9、OpenDNSのそれぞれに、sysosxのサーバーから並行してドメインのAレコードとAAAAレコードを尋ね、テーブルにはそれぞれの回答と、見られた中で最も低いTTLが表示されます。4つすべてが一致すれば、変更は実質的に必要な範囲まで広まっています。一致しない場合、TTLの列がその不一致がどれだけ続くかを教えてくれます:期限が切れるのを待って、再チェックしてください。計画した移行の1〜2日前にレコードのTTLを数分に下げておくことは、最も効果的な伝播の工夫です——変更後にキャッシュと戦うのではなく、変更前に各キャッシュの記憶を短くしておくのです。
テーブルの読み方
各行が1つのリゾルバです。A列はそれが返すIPv4アドレス、AAAAはドメインにIPv6アドレスがある場合のそれ、TTLは答えの中で最も低い生存時間——そのリゾルバが再び尋ねるまでに自分の答えを信じ続ける秒数です。「timeout」と表示されたリゾルバは時間内に答えませんでした;それはリゾルバについての記述であり、あなたのレコードについてのものではなく、他の行はそのまま有効です。「does not exist」という結果は、答えたすべてのリゾルバが、その名前はまったく登録されていないことに一致したことを意味します——他の何よりもまずスペルを確認してください。そしてバナーがリゾルバの不一致を示しているとき、何かを「直そう」とする衝動を抑えてください:1分ごとに再チェックしても誰のキャッシュも速くならず、レコードを再び編集すると、待っていたすべてのTTLがリセットされるだけです。
関連ツール:単一のレコードを詳しく調べる必要があるときは1つのリゾルバの全レコードセットを見るDNSルックアップ、アドレスは正しいのにリダイレクト経路が間違っているときはHTTPステータスチェーン、到達可能性・証明書・有効期限・レコードをまとめて見たい全体像にはウェブサイトヘルスチェック。
さらに読む:場所によってサイトの見え方が違う理由——リダイレクトチェーン、DNS伝播、中間キャッシュ、そしてどれがあなたを悩ませているかを見分ける方法。
よくある質問
これは世界規模の伝播チェックですか?
いいえ——そして正直なところ、どのツールもそうではありません。このページはsysosxのサーバーから4つの大きな公開リゾルバ(Google、Cloudflare、Quad9、OpenDNS)に同じ質問をし、一致するかどうかを表示します。4つのリゾルバが一致することは、変更が広まったことの強い証拠です;4つが一致しないことは、TTLが切れるのを待つべきサインです。地球上のすべてのリゾルバに問い合わせることは誰にもできず、できると主張するツールは測定ではなく地図を売っているのです。
レコードを変更した後、なぜリゾルバが一致しないのですか?
変更をどこかへ押し出すものは何もないからです。各リゾルバは最後に取得したものを、レコードのTTLが定める時間だけ正確にキャッシュし、独自のスケジュールで更新します。編集の5分前に古い値を取得したリゾルバは、そのTTLが切れるまでそれを返し続けます。編集直後の不一致は正常な状態であり、エラーではありません——TTLの列がその持続時間を教えてくれます。
1つのリゾルバからの「答えなし」とはどういう意味ですか?
種類によります。NXDOMAINは、そのリゾルバが権威を持ってその名前は存在しないと言っていることを意味します——通常はタイプミス、または変更ではなく削除されたレコードです。エラーなしの空の答えは、その名前は存在するがAレコードもAAAAレコードも持っていないことを意味します(たとえばメール専用ドメイン)。タイムアウトは、そのリゾルバが時間内に答えなかったことを意味します;それはレコード自体については何も言わず、他の3つのリゾルバの答えはそのまま有効です。
DNSルックアップとどう違うのですか?
DNSルックアップは1つのリゾルバの全レコードセット——すべてのタイプとTTL——を表示します。これは単一のレコードをデバッグするときに欲しいものです。このページは1つの質問(この名前はどこを向いているか?)を4つのリゾルバで表示します。これは変更が広まったかどうかを尋ねるときに欲しいものです。レコードを調べるにはルックアップを、伝播を判断するにはこのページを使ってください。
なぜレート制限があり、キャッシュはなぜ10分だけなのですか?
各チェックは8回のライブクエリ(4つのリゾルバでAとAAAA)を行います。新しいチェックは礼儀のために訪問者ごとに制限され(1時間あたり約20回、短いバースト枠付き)、結果は1時間ではなく10分キャッシュされます——答えが1時間前の伝播チェックは、その目的自体を損なうからです。キャッシュされた結果にはその旨が表示されます。