DNSの定義と役割
DNS(Domain Name System/ドメインネームシステム)は、人が読むドメイン名(例:example.com)を、機械が通信に使うIPアドレスへ結び付ける仕組みです。利用者がブラウザでドメイン名を入力すると、まずDNSによる“名前解決”が行われ、その結果として得られたIPアドレスに接続します。つまりDNSは、ウェブ閲覧やアプリ通信の「入口」で働く重要な基盤です。
簡単な仕組み(問い合わせの流れ)
DNSは、複数の仕組みが連携して名前解決を実現します。大まかには次の流れです。
- 端末がDNSサーバーに問い合わせる(通常、端末は指定されたDNSサーバーへ聞きます)。
- DNSサーバーは、必要な情報を持っているかを確認します。持っていれば応答し、持っていなければ別の情報源へ問い合わせます。
- 応答としてIPアドレス(やそれ以外の関連情報)が返ってきます。
- 端末や途中のサーバーにはキャッシュがあり、次回は同じ問い合わせを短縮できます。
ここで重要なのは、「DNSサーバーが常に最初から最後まで自力で調べる」とは限らず、再帰的または段階的に情報を得る形で進むことがある点です。加えて、キャッシュが効くと、実際に見えている結果が“いつの情報”かに影響します。
DNSレコードの種類と観点(何が返るのか)
DNSでやり取りされる情報はDNSレコードと呼ばれ、代表的には次のようなものがあります。
- Aレコード/AAAAレコード:ドメイン名に対するIPv4/IPv6アドレスを示します。
- CNAME:別名(別のドメイン名)への参照を示します。
- MX:メール配送に関する情報です。
- TXT:検証用などに使われることがあります。
利用者側の目的に直結するのは、基本的に「どのレコードを引いて、結果として何のアドレスにたどり着くか」です。例えばWebアクセスで問題が起きている場合、A/AAAAの解決がうまくいっているかがまずの焦点になります。
制限・つまずきポイント(何が変わり得るか)
DNSの挙動は、設定や環境によって変わり得ます。特に次は頻出の“差分ポイント”です。
