Domain IP Lookup

再帰的なDNS検索を1ホップずつ見る

ブラウザー

example.comを要求

リゾルバー

ISP / 1.1.1.1

ルート + TLD

.comの管理元は?

権威サーバー

正式な回答

この連鎖の各ホップはそれ自体がDNS検索で、結果はその後キャッシュされます

DNSの基礎

DNSの仕組み:ドメイン名からIPアドレスまで

読了時間:3分

ブラウザーに example.com と入力すると、ほぼ瞬時にページが表示されます。その2つの瞬間の間に、地球全体に広がる分散データベースが、1つの質問に答えました。この名前に対応するIPアドレスは何か、という質問です。このシステムがDNS(Domain Name System)です。

きちんと理解しておく価値があります。変更が反映されない、メールが消える、あるデバイスでは表示されるのに別のデバイスでは表示されないなど、ウェブサイトの紛らわしいトラブルのほとんどは、DNSの名前解決とキャッシュが実際にどう動くかに行き着くからです。

再帰的なDNS検索を1ホップずつ見る

ブラウザー

example.comを要求

リゾルバー

ISP / 1.1.1.1

ルート + TLD

.comの管理元は?

権威サーバー

正式な回答

この連鎖の各ホップはそれ自体がDNS検索で、結果はその後キャッシュされます

再帰的な検索の全工程。実際には、キャッシュされた答えがあれば、最初か2番目のホップで完了します。

4つの登場者

  • スタブリゾルバー — OSに組み込まれた小さなDNSクライアントです。ほとんど何も知らず、すぐに処理を委任します。
  • 再帰リゾルバー — 通常はISPが運用しており、1.1.1.1 や 8.8.8.8 のようなパブリックなものもあります。答えを追いかけてキャッシュする、働き者です。
  • ルートサーバーとTLDサーバー — 答えは知りませんが、答えを知っている相手を知っています。ルートは .com を指し、.com のTLDサーバーはドメイン自身のネームサーバーを指します。
  • 権威ネームサーバー — ドメインの本物のレコードを保持するサーバーです。ここが言うことが、定義上の真実です。

検索を1ステップずつ追う

  1. まずローカルキャッシュを確認する

    ブラウザーにも独自のDNSキャッシュがあり、OSにもあります。どちらかに example.com の有効期限内の答えがあれば、検索はマイクロ秒で終わり、ネットワーク通信はまったく発生しません。

  2. 再帰リゾルバーに尋ねる

    キャッシュにない場合、スタブリゾルバーは設定された再帰リゾルバーにクエリを送ります。通常はポート53で、1つのUDPパケットです。

  3. リゾルバーがルートサーバーに尋ねる

    リゾルバーにキャッシュがなければ、最上位から始めます。ルートサーバーは example.com を知りませんが、「.com のネームサーバーはこれです」と返します。

  4. リゾルバーがTLDサーバーに尋ねる

    .com のサーバーは、「example.com の権威ネームサーバーはこれです」というリファーラルを返します。これもまだ答えではなく、別のポインターです。

  5. リゾルバーが権威ネームサーバーに尋ねる

    ここには実際のゾーンファイルがあります。A レコードの 93.184.216.34 と、その答えをどのくらい再利用してよいかを示すTTLを返します。

  6. 答えがキャッシュされて返される

    リゾルバーはTTLの期間だけ結果をキャッシュし、OSに渡し、OSがブラウザーに渡します。サーバーへのTCP接続を始められるのは、ここからです。

再帰と権威:重要な違い

この2つはしょっちゅう混同され、実際のデバッグミスにつながります。

再帰リゾルバー権威ネームサーバー
役割あなたに代わって答えを見つける答えを保存して公開する
例1.1.1.1、8.8.8.8、ご利用のISPCloudflare DNS、Route 53、ご利用のレジストラー
キャッシュするかする。それが主な仕事しない。そこが情報源
誰が設定するかあなた、またはあなたのネットワークドメインの所有者

実際の影響は次のとおりです。DNSレコードを変更すると、権威サーバーは即座に更新されます。一方、世界中のすべての再帰リゾルバーは、TTLが切れるまでキャッシュしたコピーを返し続けます。このずれが、いわゆるDNSの伝播です。

リゾルバーが実際に返すもの

応答はアドレスだけではありません。レコードタイプ、値、TTLに加え、答えが権威からのものか、キャッシュから返されたものかを示すフラグも含まれます。1つのドメインは、多くのレコードタイプを同時に公開します。アドレス用の A と AAAA、メールの経路用の MX、ネームサーバー用の NS、確認やポリシー用の TXT です。

検索で返される内容(概念図)
example.com.    3600    IN    A        93.184.216.34
example.com.    3600    IN    AAAA     2606:2800:220:1::248
example.com.    3600    IN    MX       10 mail.example.com.
example.com.   86400    IN    NS       ns1.example.com.

名前の後ろにある数字は、秒単位のTTLです。IN はインターネットクラスを意味します。残りがレコードタイプとその値です。

実際にDNSで起きがちな問題

  • 変更が伝播していない。 権威サーバーは正しく、あなたとの間にあるキャッシュが古いだけです。直すことは何もなく、待つだけです。
  • ネームサーバーが別のプロバイダーを指している。 レジストラーでレコードを編集したが、ドメインはホスティング会社のネームサーバーに委任されているため、編集が無視されます。
  • 末尾のドットがない。 ゾーンファイルでは、末尾のドットがない mail.example.com は、ゾーンからの相対名と解釈され、mail.example.com.example.com になることがあります。
  • AAAA レコードがないのに、IPv6のみのクライアントがいる。 ほかのみんなには問題なく動いているのに、そのクライアントからはサイトに到達できません。

重要なポイント

DNSの問題があるデバイスでは出て、別のデバイスでは出ない場合、壊れたレコードではなく、ほぼ確実にキャッシュが原因です。何かを変更する前に、権威の答えを確認してください。

ホームページの検索ツールを使えば、任意のドメインについて、これらのレコードをすべて確認できます。各レコードは独立して問い合わせられるため、1つのタイプが欠けているドメインでも、残りは表示されます。

ドメインの公開DNSアドレスを調べたい場合は、Domain IP Lookupツールをお試しください。

よくある質問

関連記事

再帰的なDNS検索を1ホップずつ見る

ブラウザー

example.comを要求

リゾルバー

ISP / 1.1.1.1

ルート + TLD

.comの管理元は?

権威サーバー

正式な回答

この連鎖の各ホップはそれ自体がDNS検索で、結果はその後キャッシュされます

DNSの基礎

ネームサーバーとは?ドメイン委任の仕組み

どのプロバイダーがDNSを管理するかを決める、たった1つの設定です。レコードを編集しても反映されないことがある理由でもあります。

読了時間:3分

ほぼすべてのゾーンで出会うレコード

Aホスト名をIPv4アドレスに対応付け
AAAAホスト名をIPv6アドレスに対応付け
CNAMEホスト名を別のホスト名に対応付け
MXドメインをメールサーバーに優先度順で対応付け
TXTドメインを任意のテキストに対応付け。SPF、DKIM、所有確認など
NSドメインを応答するネームサーバーに対応付け
DNSの基礎

DNSレコードタイプ徹底解説:完全リファレンス

知っておくべきレコードタイプのすべてについて、役割、書式、そして陥りがちな間違いを、1つのリファレンスページにまとめました。

読了時間:4分

TTLの実際の選び方

60-300s移行作業中、反映は速いがクエリ増加
3,600sほとんどの通常レコードに妥当な既定値
86,400sMXやNSなど、変更の少ないレコード
DNSの基礎

DNS TTLとは?最適な値の選び方

たった1つの数字が、変更が反映される速さと、発生するDNSトラフィックの量を左右します。意図して選ぶ方法を紹介します。

読了時間:2分