DNSとは
DNS(Domain Name System)は、人間が覚えやすいドメイン名(例:example.com)を、コンピュータが理解できるIPアドレス(例:93.184.216.34)に変換するシステムです。インターネットの「電話帳」とも呼ばれます。
なぜ必要か: IPアドレスは覚えにくい数字の羅列です。DNSのおかげで、私たちは覚えやすいドメイン名でウェブサイトにアクセスできます。
名前解決の流れ
ブラウザで「example.com」にアクセスするとき、以下の手順でIPアドレスが解決されます:
1. ローカルキャッシュの確認
まず、ブラウザとOSのDNSキャッシュを確認します。過去にアクセスしたドメインなら、ここで解決完了です。
# Windowsでキャッシュを確認
ipconfig /displaydns
# macOS/Linuxでキャッシュをクリア
sudo dscacheutil -flushcache
2. リゾルバへの問い合わせ
キャッシュになければ、DNSリゾルバ(通常はISPやGoogle DNS 8.8.8.8など)に問い合わせます。
3. 再帰的クエリ
リゾルバは以下の順序でDNSサーバーに問い合わせます:
- ルートDNSサーバー: トップレベルドメイン(.com)の情報を取得
- TLDサーバー: .comドメインを管理するサーバーに問い合わせ
- 権威DNSサーバー: example.comの実際のIPアドレスを取得
DNSレコードの種類
- Aレコード: ドメイン名をIPv4アドレスにマッピング
- AAAAレコード: ドメイン名をIPv6アドレスにマッピング
- CNAMEレコード: ドメイン名を別のドメイン名にエイリアス
- MXレコード: メールサーバーを指定
- TXTレコード: テキスト情報(SPF、DKIMなど)
TTL(Time To Live)
TTLは、DNSレコードがキャッシュされる時間(秒)を指定します:
- TTLが長い(例:86400秒=24時間)→ キャッシュ効率が良い
- TTLが短い(例:300秒=5分)→ 変更が早く反映される
実務のヒント: サーバー移行時は事前にTTLを短くしておき、移行後に元に戻すのが一般的です。
まとめ
DNSは、キャッシュと階層構造を活用して、効率的にドメイン名をIPアドレスに変換します。ウェブサイト運営者にとって、DNSレコードの管理とTTLの設定は重要なスキルです。
← 一覧に戻る