FIG-005

DNS名前解決 — 質問のバケツリレー

ネットワーク 2026.06.12 公開 読了 約12分

ブラウザに blog.example.com と打ち込んでも、インターネットはその名前のままでは相手を見つけられません。通信に必要なのはIPアドレス(数字の住所)です。名前から住所を引くこの作業がDNS名前解決で、その実態は世界中のサーバーをめぐる質問のバケツリレーです。

下の図1で、その旅を8ステップで追いかけられます。「進む」を押して、質問(?)がどこまで運ばれるか見てください。

QUERY — blog.example.com のIPアドレスは?
?
あなたのPC
📒
フルリゾルバ(キャッシュDNS)
cache: 203.0.113.7
ルートサーバー(.)
TLDサーバー(.com)
権威サーバー(example.com)
STEP 1 / 8
図1 — DNS名前解決のバケツリレー(再帰問い合わせと反復問い合わせ)

聞き方が2種類ある

図1には、性格の違う2種類の質問が登場していました。あなたのPCがフルリゾルバに投げたのは再帰問い合わせ — 「途中経過はいらないから、最後の答えだけください」という丸投げです。一方、フルリゾルバがルート → TLD → 権威とめぐったのは反復問い合わせ — 各サーバーは答えを知らなくても「それなら、ここに聞くといい」と紹介状を返してくれるので、リゾルバが自分の足で次々と訪ねていきます。

ルートサーバーが全世界のドメインを知っているわけではない、というのがポイントです。各サーバーは blog.example.com を右から1段ずつ(. → .com → example.com)案内するだけ。この分担のおかげで、世界中のドメインを誰か1人が管理しなくて済んでいます。

2回目が速いのはキャッシュのおかげ

図1の最後のステップで見たとおり、フルリゾルバは一度調べた答えをTTL(有効期限)付きでキャッシュします。期限内に同じ質問が来れば、バケツリレーは一切なしで即答。世界中のアクセスの大半はこのキャッシュで返されていて、ルートサーバーの負荷を劇的に減らしています。逆に言うと、サーバー引っ越しでIPを変えた直後に「まだ古いほうに繋がる人がいる」のは、世界のあちこちのキャッシュがTTL切れを待っているからです。

用語ミニ辞書
フルリゾルバ
あなたの代わりに名前解決の旅をしてくれる代行屋。プロバイダや 8.8.8.8 など。
権威サーバー
そのドメインの正式な台帳を持つサーバー。最終的な答えはここから出る。
TTL
キャッシュの賞味期限(秒)。切れたらもう一度バケツリレーで調べ直す。

まとめ

DNSは「名前 → IPアドレス」を引くだけの仕組みですが、その裏では丸投げ(再帰)と紹介状(反復)のバケツリレー、そしてキャッシュによる時短が働いていました。たかが名前解決でも登場人物は4者以上。ping の前に一呼吸あるときや、ドメイン移行で切り替わりが遅いとき、この図を思い出すと原因の見当がつけやすくなります。