DNS
Domain Name System
DNSは、ドメイン名を手がかりに、IPアドレスやメールの配送先などの情報を問い合わせる仕組みです。URL全体を変換するのではなく、たとえば https://example.com/cat のうち example.com が名前解決の対象になります。
🐾 猫で例えると?
こちらを見つめるアメショ。「アメショはどこ?」と飼い主へ尋ね、居場所の名簿を見て「窓辺だよ」と教わる場面を考えてみましょう。名前から通信先の情報を調べる部分が、DNSの名前解決に対応します。名前を呼んだら猫が走ってくること自体が、DNSの仕組みなのではありません。名前解決に成功しても、その後の接続先が停止していればWebページは開けません。
💻 IT現場における「DNS」とは?
インターネットを利用する際、私たちは無意識のうちにDNSを利用しています。例えばブラウザに「google.com」と入力したとき、パソコンはまずDNSサーバーへ問い合わせを行い、そのドメインに対応するIPアドレスを取得します。これを「名前解決(Name Resolution)」と呼びます。
エンジニアの現場では、サーバーの移転時にドメインの向き先を切り替えたり、メールの配送先を指定する「MXレコード」を設定したりと、インフラ構築において避けては通れない非常に重要な技術です。DNSの設定が間違っていると、Webサイトが表示されなくなるだけでなく、メールが届かない、セキュリティリスクが高まるなどの大きなトラブルに繋がります。
⚠️ DNSの仕組みと注意点
DNSは世界中に分散された巨大なデータベースのような構造をしています。一つのサーバーがすべてを覚えているのではなく、「.jp」を担当するサーバー、「example.co.jp」を担当するサーバーといった具合に、階層構造でバケツリレーのように問い合わせが行われます。
DNS情報の確認方法
実際にドメイン名からIPアドレスを調べるには、コマンドラインで以下のようなツールを使います。
# ドメイン名のIPアドレスを調べる(nslookup)
nslookup google.com
# 実行結果の例
Non-authoritative answer:
Name: google.com
Address: 142.250.196.110 表示されたアドレスは、その時点の問い合わせ結果の例です。場所や時刻、問い合わせ先によって変わる場合があり、1つの名前に複数のアドレスが返ることもあります。Non-authoritative answer は、権威DNSへの直接問い合わせではないことを表し、それだけで誤った回答という意味ではありません。
🛠️ DNSを賢く管理するためのポイント
システムの安定運用には、DNSの特性を理解した管理が欠かせません。
- TTL(生存時間)の設定: DNS情報は一度取得すると「キャッシュ」として保存されます。TTLを短く設定すれば変更が早く浸透しますが、サーバーへの負荷は増えます。切り替え作業前には計画的に調整が必要です。
- 権威DNSの冗長化: DNSサーバーは監視役ではなく、名前に関する情報を回答する役です。複数用意し、更新内容が反映されているかも確認します。障害時にキャッシュで一時的に通信できても、新たな問い合わせは失敗することがあります。
- DNSキャッシュポイズニング対策: 偽の情報をDNSに覚え込ませて偽サイトへ誘導する攻撃があります。DNSSECなどの技術を導入し、セキュリティを強化しましょう。
猫を名前で呼べる便利さを、インターネットでも支えるのがDNSです。名前解決の結果と、その宛先への接続結果を別々に確かめる習慣をつけておくと、「サイトが開かない」の原因に近づけます。