DNSとは何か
ストーリー
「先輩、ブラウザに www.google.com って入力すると Google が開きますよね。でもコンピュータはIPアドレスで通信するんですよね?」
「そう!そこで活躍するのが DNS なんだ」
「DNS...?」
「インターネットの電話帳みたいなものだよ。名前からIPアドレスを調べてくれるんだ」
DNSとは
一言で言うと
ドメイン名(名前)をIPアドレス(番号)に変換する仕組み
DNS = Domain Name System
電話帳の例え
電話帳: 「田中太郎」 → 090-xxxx-xxxx
DNS: 「google.com」 → 142.250.196.99
- 人間は 名前 で覚える(google.com)
- コンピュータは 番号 で通信する(142.250.196.99)
- DNSがその変換を行う
なぜDNSが必要なのか
もしDNSがなかったら
IPアドレスで直接アクセスする必要がある:
Google: 142.250.196.99
YouTube: 142.250.196.110
Twitter: 104.244.42.129
Amazon: 52.94.236.248
数字を覚えるのは大変ですよね。
DNSがあるから
名前で覚えればOK:
google.com → DNSが 142.250.196.99 に変換
youtube.com → DNSが 142.250.196.110 に変換
twitter.com → DNSが 104.244.42.129 に変換
amazon.co.jp → DNSが 52.94.236.248 に変換
ドメイン名の構造
基本構造
www.example.com
│ │ │
│ │ └── TLD(トップレベルドメイン)
│ └───────── ドメイン名(セカンドレベル)
└────────────── サブドメイン
TLD(トップレベルドメイン)の種類
| TLD | 用途 |
|---|---|
| .com | 商用(最も一般的) |
| .org | 組織 |
| .net | ネットワーク |
| .jp | 日本 |
| .co.jp | 日本の企業 |
| .dev | 開発者 |
| .io | テック系(元はイギリス領インド洋地域) |
ドメイン名の読み方
ドメイン名は 右から左 に読みます。
mail.google.com
│
└── .com(TLD)
│
└──── google(ドメイン名)
│
└──────── mail(サブドメイン)
これは階層構造になっています:
.(ルート)
└── com
└── google
├── www
├── mail
└── maps
DNSサーバーの種類
DNSの仕組みには、いくつかの種類のサーバーが関わっています。
DNSリゾルバ(キャッシュDNSサーバー)
あなたのPCが最初に問い合わせるサーバー。
- ISP(プロバイダ)が提供していることが多い
- 過去の問い合わせ結果をキャッシュ(一時保存)している
ルートDNSサーバー
DNSの最上位のサーバー。世界に13系統(複数台で冗長化)。
TLDサーバー
.com、.jp など、トップレベルドメインを管理するサーバー。
権威DNSサーバー
特定のドメイン(例: google.com)の情報を管理するサーバー。最終的な「正解」を持っています。
DNSのキャッシュ
DNSの問い合わせは頻繁に行われるため、結果をキャッシュ(一時保存)します。
キャッシュの場所
1. ブラウザのキャッシュ → 最初にここを確認
2. OSのキャッシュ → 次にここを確認
3. DNSリゾルバのキャッシュ → 次にここを確認
4. 見つからなければ実際に問い合わせ
TTL(Time To Live)
キャッシュの有効期限。この時間が過ぎるとキャッシュが破棄され、再度問い合わせが行われます。
google.com の TTL = 300秒(5分)
→ 5分間はキャッシュを使い回す
→ 5分後に再度DNSに問い合わせる
/etc/hosts ファイル
DNS以前からある、名前とIPアドレスの対応表です。
bash
# /etc/hosts の例
127.0.0.1 localhost
192.168.1.100 myserver- OSはDNSサーバーに問い合わせる前に
/etc/hostsを確認する - 開発環境でよく使われる(例:
localhostの設定)
まとめ
| ポイント | 内容 |
|---|---|
| DNS | ドメイン名をIPアドレスに変換する仕組み |
| ドメイン構造 | サブドメイン.ドメイン.TLD(右から読む) |
| DNSサーバー | リゾルバ、ルート、TLD、権威の4種類 |
| キャッシュ | 問い合わせ結果を一時保存して高速化 |
チェックリスト
- DNSの役割(名前→IPアドレスの変換)を理解した
- ドメイン名の構造(TLD、サブドメイン)を理解した
- DNSサーバーの種類を知っている
- キャッシュとTTLの仕組みを理解した
次のステップへ
DNSの基本が分かりましたね。
次のセクションでは、実際にDNSの 名前解決がどのような順番で行われるのか を詳しく見ていきます。
推定読了時間: 30分