学習状態はこのブラウザ内にのみ保存されます
DNS — Domain Name System
concept Network アプリケーション層(レイヤ7) レベル: beginner / intermediate / advanced
この概念が存在する機器の模型です。周りのマーカーは関係する概念 — クリックで移動
構造ビュー(Zoom の階層 §9.2)
用語カード
ホスト名からIPアドレスを引く(名前解決)ための、世界中に分散した階層型データベース。
DNSは、ホスト名(www.example.com のような名前)とIPアドレスの対応を管理し、「名前からIPアドレスを引く(名前解決)」ための分散システムです。
単一のサーバーではなく、ルート→TLD(.com等)→権威サーバーという階層構造で、世界中に分散しています。端末はまずキャッシュを持つフルリゾルバに問い合わせ、リゾルバが階層をたどって答えを持ってきます。
Webサイトを開くとき、通信はDNSの答えが出てから始まります。DNSが引けないと、サーバーが正常でも「つながらない」状態になります。
| 正式名称 | Domain Name System |
|---|---|
| 略語 | DNS |
| 種別 | concept |
| レイヤ | アプリケーション層(レイヤ7) |
| 何をする | 名前とIPアドレスの対応表を階層的・分散的に保持し、問い合わせに答える。 |
| なぜ必要 | 人間は数字のIPアドレスを覚えられず、サーバーのIPも変わり得るため、名前と実体の対応を引ける仕組みが必要だから。 |
| どこに存在する | 端末内のリゾルバ、各所のフルリゾルバ(DNSサーバー)、世界中の権威サーバー群。 |
| セキュリティ | 応答の偽造(DNSキャッシュポイズニング)で偽サイトへ誘導される危険がある。DNSSECやDoH/DoTが対策として存在する。 |
| 前提知識 | IP Address |
次に理解すべき概念
通信・利用の例
- www.example.com → 93.184.216.34 のような A レコード解決
設定例
nslookup www.example.com / dig www.example.com で問い合わせを試せる
よくある誤解
- DNSは「1台の巨大なサーバー」ではなく、世界中に分散した階層型データベース
- DNSで分かるのはIPアドレスであり、通信そのものはDNSを経由しない
このノードへの疑問
What — これは何?
Why — なぜ必要?
Who — 誰が決める?
How — どうやって動く?
What If — 壊れたら?
情報の根拠(Sources)
- RFC 1034 — Domain Names: Concepts and Facilities — IETF(rfc)
- RFC 1035 — Domain Names: Implementation and Specification — IETF(rfc)
事実の根拠は公式文書・RFC を正とし、このサイトの説明・図は独自の教材表現です(§6.8)。
依存・参照関係
Depends On(これに依存している)
なし
Used By(これに依存しているもの)
- DNS Server — 名前解決の問い合わせに応えるサーバー。端末向けのフルリゾルバと、答えを保持する権威サーバーの2役割がある。
References(参照している定義・対象)
- DNS Server — 名前解決の問い合わせに応えるサーバー。端末向けのフルリゾルバと、答えを保持する権威サーバーの2役割がある。
Referenced By(参照されている)
- DNS Server — 名前解決の問い合わせに応えるサーバー。端末向けのフルリゾルバと、答えを保持する権威サーバーの2役割がある。
- DNS Resolver — OSの中で、アプリの名前解決要求を受けてDNSサーバーへ問い合わせる窓口(スタブリゾルバ)。
Runtime(実通信での登場場面)
- ブラウザでWebサイトを開くと何が起きる?
ステップ: DNSでサーバーのIPアドレスを調べる