ほぼすべてのゾーンで出会うレコード
DNSチェッカーでDNSレコードを正しく確認する
DNSチェッカーは、リゾルバーが現時点でドメインに対して取得できるレコードを手軽に確認できるツールです。ウェブサイトのホストを変更した後、メールを設定した後、DNSプロバイダーを移行した後、あるいは名前解決に失敗するホスト名を調べるときなどに使います。結果はあくまでスナップショットです。すべての再帰リゾルバーが更新済みであること、あるいは背後のサービスが利用可能であることを保証するものではありません。チェックを意味のあるものにするには、ホスト名を正確に指定し、症状に合ったレコードタイプを選び、空の応答とDNSエラーを区別して読み取ります。この3つの手順を踏めば、多くの誤報を避けられ、どの設定の層に注目すべきかを特定しやすくなります。
知りたいことに合ったレコードを選ぶ
ウェブサイトのIPv4アドレスはA、IPv6アドレスはAAAAを確認します。サブドメインは、アドレスを直接持たず、CNAMEでホスティングプロバイダーのホスト名を指していることもあります。メールの配送はまずMXレコードに依存し、TXTレコードにはSPF、DKIM、DMARC、所有権確認のデータが公開されていることがよくあります。NSレコードはゾーンに登録されているネームサーバーを示し、SOAはそのゾーンに関する管理情報とタイミングの項目を示します。したがって、問題がメール配送、委任されたサブドメイン、確認手順にある場合、Aレコードを確認するだけでは不十分です。まず影響を受けているサービスから出発して、その症状を対応するレコードタイプに結び付けてください。
| 症状 | 最初に確認するレコード |
|---|---|
| ウェブサイトが誤ったホストを指している | A、AAAA、CNAME |
| メールの配送経路が壊れているように見える | MX、SPF/DKIM/DMARCのTXT |
| ドメインの変更が無視されているように見える | NS、SOA、変更したレコード、TTL |
| サードパーティのサービスが所有権を確認できない | そのサービスが要求した、まさにそのTXTまたはCNAME |
次に、問い合わせた名前を正確に確認します。example.com、www.example.com、api.example.com はそれぞれ別のDNS名であり、まったく異なる応答を返すことがあります。完全修飾のDNS表記の末尾にあるドットはルートを表し、ユーザーインターフェースでは通常は省略できます。パスを含むURL全体を貼り付けても、チェッカーがどのホスト名を見るべきか判断してくれるとは限りません。先にホスト名を取り出してください。新しいレコードを検証する場合は、返された値をプロバイダーの指示と一文字ずつ照合します。TXTポリシーには、句読点や区切り文字、長い文字列が含まれることが多く、一見ささいなタイプミスでもレコードが無効になることがあります。
応答が食い違う原因を理解する
DNSは分散型で、キャッシュされます。権威ネームサーバーはゾーンの公開データを保持しており、再帰リゾルバーはユーザーに応答し、TTLが切れるまで以前の応答をキャッシュすることがあります。そのため、2つのチェッカーが異なるリゾルバー、ロケーション、レコードのバージョンに問い合わせていれば、一時的に異なる値が表示されることがあります。複数のロケーションに問い合わせるチェッカーは、ばらつきの例を示すのに役立ちますが、すべてのネットワークが同じ状態に収束したことの証明にはなりません。結果が意図した設定と一致しない場合は、どのリゾルバーが応答したのかを特定し、権威ネームサーバーと比較します。そのうえで、再度変更を行う前に、TTLと以前の値がキャッシュされた時点を考慮します。
- NOERRORで要求したレコードがない場合は、その名前は存在するものの、そのタイプのデータがないことを意味する場合があります。
- NXDOMAINは、問い合わせた名前が存在しないと報告されたことを意味します。
- SERVFAILは、リゾルバーがクエリを正常に完了できなかったことを示します。
- タイムアウトは、チェッカーの待機時間内に応答が届かなかったことを意味します。
- AまたはAAAAの応答が複数あるのは、冗長化やトラフィック分散のために意図されている場合があります。
DNSチェックを安全なトラブルシューティングの手順にする
DNSを変更するときは、変更前後の記録を残してください。名前、タイプ、値、TTL、リゾルバー、時刻を控え、更新後に同じクエリを繰り返します。権威サーバーは新しい値を返しているのに、特定の再帰リゾルバーだけが古い値を返している場合は、キャッシュの期限切れを待つのが適切なことがあります。レコードを何度も変更すると、状況の診断がかえって難しくなることがあります。権威サーバー同士で食い違っている場合は、ゾーンの複製やプロバイダーの設定を調べてください。DNSの応答がすべて正しく見えるのにウェブサイトがまだ失敗する場合は、DNSを闇雲に変更し続けるのではなく、接続性、TLS、ルーティング、アプリケーションの正常性の確認に進みます。
最後に、応答はその適用範囲に応じて扱ってください。公開DNSのチェックは、公開インターネット上で見えることを意図したドメインとレコードに適しています。組織の内部専用の名前空間を調べる方法ではありません。DNSが返したIPは、アプリケーションをホストしているマシンではなく、CDNのエッジ、ロードバランサー、リバースプロキシであることもあります。公開されているアドレスの応答だけが必要であれば、ドメインからIPへの検索が的を絞った次のステップです。A、AAAA、MX、TXT、NSの用語と例については、DNSレコードタイプの解説をご覧ください。
チェッカーのレポートは慎重に読む
DNSチェッカーは、何らかの応答を受け取りさえすれば、返された値がサービスに必要な値でなくても、緑色のインジケーターを表示することがあります。要約のバッジだけに頼らず、生のオーナー名、タイプ、データを読んでください。1つのロケーションからの応答も1つのサンプルであり、全世界での一致を保証するものではありません。ツールが多くのロケーションを一覧表示していても、各ロケーションが表すのは特定のリゾルバーとキャッシュの状態であって、その地域のすべてのユーザーではないことに注意してください。レポートは、次の診断手順を選ぶために使います。権威サーバーと比較するか、TTLを確認するか、サービスをテストするかです。プロバイダーが公式にサポートするエンドポイントであることを確認せずに、IPを本番の設定にコピーするのは避けてください。良いトラブルシューティングは、期待する値と、その期待の根拠に基づくものです。チェッカーが結果を「有効」と表示したかどうかだけで判断してはいけません。
ドメインの公開DNSアドレスを調べたい場合は、Domain IP Lookupツールをお試しください。
このテーマの無料ツール
関連記事
並行して使われる2つのアドレス体系
IPv4
192.0.2.10
32ビット、約43億のアドレス、枯渇
IPv6
2606:4700::6810:84e5
128ビット、340澗のアドレス
ドメインのIPアドレスを調べる方法
ドメインの公開IPv4アドレスとIPv6アドレスを調べ、AレコードとAAAAレコードの答えを理解し、DNSが複数の有効なIPを返す理由を学びます。
IPv4の各範囲にはIPv6の対応物がある
ドメインのIPv6対応を確認する方法
ドメインのAAAAレコードを確認し、IPv6のDNS公開とIPv6の接続性を区別し、デュアルスタック構成でよくある設定漏れをトラブルシューティングします。
解決したアドレスの背後にある実体
共有IP
1アドレスに多数のサイト、Hostヘッダーで判別
専用IP
自分専用。逆引きDNSを管理できる
CDNエッジ
オリジンではない。エッジが接続を終端
ドメインのホスティングIPアドレスを調べる方法
ドメインが解決される公開アドレスを調べ、ホスティングとCDNのエンドポイントを見分けます。DNS検索ではオリジンホストが分からない理由も解説します。