DNS(ディーエヌエス)とは | 意味や読み方など丁寧でわかりやすい用語解説
DNS(ディーエヌエス)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
ドメイン・ネーム・システム (ドメイン・ネーム・システム)
英語表記
DNS (ディーエヌエス)
用語解説
DNSとは、Domain Name System(ドメインネームシステム)の略称で、インターネット上でコンピュータが互いに通信するために用いられる「IPアドレス」と、人間がWebサイトなどにアクセスする際に利用する「ドメイン名」を相互に変換するシステムである。これは、インターネットにおける住所録のような役割を果たしており、私たちが普段意識することなくWebサイトを閲覧したり、メールを送受信したりできるのは、このDNSが裏側で機能しているからに他ならない。
詳細に説明すると、インターネット上のすべてのコンピュータやデバイスには、それぞれ固有の識別子として「IPアドレス」が割り当てられている。IPアドレスは「192.0.2.1」のような数字の羅列(IPv4アドレス)や、「2001:db8::1」のような英数字の組み合わせ(IPv6アドレス)で構成されており、コンピュータはこのIPアドレスを使って通信相手を特定する。しかし、人間にとってこのような数字の羅列を記憶し、使いこなすのは非常に困難である。そこで登場するのが「ドメイン名」である。ドメイン名は「www.example.com」のように、人間にとって覚えやすく、意味のある名前に変換されたものであり、Webサイトのアドレスやメールアドレスの@以降などに利用される。
DNSの主な役割は、この人間が使うドメイン名を、コンピュータが理解できるIPアドレスに変換することである。この変換処理を「名前解決」と呼ぶ。ユーザーがWebブラウザで「www.example.com」と入力しアクセスしようとすると、まずそのドメイン名に対応するIPアドレスは何であるかをDNSに問い合わせることで、名前解決が開始される。
DNSは、単一の巨大なデータベースで構成されているわけではなく、世界中に分散して配置された多数の「DNSサーバ」が階層構造を成し、互いに連携しながら情報を提供し合う、非常に大規模な分散データベースシステムである。この階層構造は、大きく分けていくつかの種類のDNSサーバによって支えられている。
まず、ユーザーのPCやネットワーク機器からの問い合わせを最初に受け付けるのが「DNSリゾルバ(フルサービスリゾルバ、またはキャッシュDNSサーバ)」である。これは、通常、インターネットサービスプロバイダ(ISP)が提供しているか、企業内ネットワークに設置されている。DNSリゾルバは、受け取ったドメイン名のIPアドレスを解決するため、上位のDNSサーバに順次問い合わせを行う役割を担う。一度解決した情報は一定期間キャッシュ(一時的に保存)しておくため、同じドメイン名に対する次回の問い合わせには、高速にIPアドレスを返答でき、上位のDNSサーバへの負荷軽減にも貢献する。
次に重要なのが「権威DNSサーバ」である。特定のドメイン(例えば「example.com」)に関するIPアドレスやその他の設定情報を「公式に」管理しているのがこのサーバである。このサーバが持つ情報が、そのドメインの「正解」となる。これらの情報は「ゾーンファイル」と呼ばれるテキストファイルとして管理されている。
そして、DNSの階層構造の頂点に位置するのが「ルートDNSサーバ」である。世界に13系統存在し、全てのドメイン名解決の起点を担う。ルートDNSサーバは、トップレベルドメイン(TLD)のDNSサーバのIPアドレスを知っている。TLDとは「.com」や「.org」、「.jp」といったドメイン名の末尾部分を指し、これらのTLDを管理するのが「TLD DNSサーバ(トップレベルドメインDNSサーバ)」である。TLD DNSサーバは、そのTLDに属する個々のドメイン(例:「example.com」)の権威DNSサーバのアドレスを知っている。
名前解決の具体的な流れは以下のようになる。
- ユーザーがWebブラウザで「www.example.com」と入力し、アクセスを試みる。
- ユーザーのPCは、自身のネットワーク設定で指定されているDNSリゾルバ(例: プロバイダのDNSサーバ)に対し、「www.example.com」のIPアドレスを問い合わせる。
- DNSリゾルバは、まずルートDNSサーバに対し、「.com」のTLD DNSサーバはどこにあるかを問い合わせる。
- ルートDNSサーバは、「.com」のTLD DNSサーバのIPアドレスをDNSリゾルバに回答する。
- DNSリゾルバは、次に「.com」のTLD DNSサーバに対し、「example.com」の権威DNSサーバはどこにあるかを問い合わせる。
- 「.com」のTLD DNSサーバは、「example.com」の権威DNSサーバのIPアドレスをDNSリゾルバに回答する。
- DNSリゾルバは、最後に「example.com」の権威DNSサーバに対し、「www.example.com」のIPアドレスを問い合わせる。
- 「example.com」の権威DNSサーバは、ゾーンファイルに記述されている「www.example.com」に対応するIPアドレス(例: 「192.0.2.1」)をDNSリゾルバに回答する。
- DNSリゾルバはこのIPアドレスを自身のキャッシュに保存し、ユーザーのPCに伝える。
- ユーザーのPCは、DNSリゾルバから受け取ったIPアドレス「192.0.2.1」宛にWebサーバへの接続を開始し、Webページが表示される。
この一連の問い合わせと回答のプロセスは非常に高速に行われるため、ユーザーは通常、その裏側でDNSが動作していることを意識することなく、インターネットサービスを利用できる。
権威DNSサーバが管理するゾーンファイルには、IPアドレスだけでなく、様々な種類の情報が「DNSレコード」として記述されている。代表的なものとしては、ドメイン名とIPv4アドレスを対応付ける「Aレコード」、IPv6アドレスを対応付ける「AAAAレコード」、あるドメイン名を別のドメイン名に別名として対応付ける「CNAMEレコード」、メールサーバの情報を指定する「MXレコード」、ネームサーバを指定する「NSレコード」などがある。これらのレコードによって、Webアクセスだけでなく、メールの送受信やその他のネットワークサービスも適切にルーティングされる。
このようにDNSは、インターネットが利便性を保ちつつ機能するために不可欠な基盤技術であり、その安定性とセキュリティはインターネット全体の安定性に直結する。もしDNSに障害が発生すると、ドメイン名からIPアドレスへの変換ができなくなり、多くのインターネットサービスが利用できなくなるため、システムエンジニアとしてDNSの仕組みを理解することは非常に重要である。