「DNSサーバ」といわれるものには、役割に応じていくつか種類があります。
しかし、記事や書籍を見ると、それぞれに呼称がいくつかあり混乱してしまいます。
そこで、その全体像を整理してみました。
DNSの全体イメージ図
DNS権威サーバ(コンテンツサーバ)
- インターネット上で名前(FQDN)に対応するIPアドレスとゾーン情報(コンテンツ)を
ゾーンファイル
として保持し、FQDNに対するIPアドレスを回答するサーバ。 - 基本的に自身が管理しているドメインに対しての問い合わせにしか応答しないため、クライアントから問い合わせられる様々なFQDNに対して、DNS権威サーバを探し名前解決をするサーバ(DNSキャッシュサーバ)を準備する必要がある。(example.comの権威サーバが解答するのは***.example.comの名前を持つサーバのIPだけ)
DNSキャッシュサーバ(リゾルバ、フルサービスリゾルバ)
- PCなどクライアントからの
再帰問合せ
に対して、各権威サーバをたどり名前解決を行うDNSサーバ。 - 問合せされたFQDNに対し、権威サーバに対してルート
(.)
→.com
→example.com
という流れで下位の権威サーバに順々に名前解決(反復問い合わせ)を行い、クライアントにIPを教えてくれる。 - 一度解決した情報は、一定時間保持(キャッシュ)しておき、同じ問い合わせが来た際には、そのキャッシュから解答することで効率的な名前解決を行う。
- Google Public DNS (8.8.8.8, 8.8.4.4) などの特殊な例を除き、特定のクライアント(プロバイダの契約者や、企業の場合は社内イントラ内のPCなど)からの問い合わせしか受け付けない。
DNSフォワーダ(DNSプロキシ)
- キャッシュサーバのようにクライアントからのクエリを受け付けるが、自身で名前解決は行わず、キャッシュサーバにクエリを転送(フォワード)するだけのサーバ。
- 何らかの理由でキャッシュサーバに直接通信させたくない、あるいはクライアントがインターネットに通信出来ない場合に名前解決を中継せるために利用される。
内部DNSサーバ
- インターネットには公開しない企業内イントラなど内部ネットワークでも名前で通信したいときに権威サーバとして構築されるサーバ。
- パブリックに公開するゾーンではないため、ドメイン名は、管理者が自由に決めることが可能。
DNSルートサーバ
- ドメインツリーの頂点であるルートドメイン(.)の権威サーバ。
- 世界中に分散された13台(※)の権威サーバから構成され、もしこのサーバが全部とまるとインターネット上のすべての名前解決ができなくなる。
※:ルートDNSサーバのIPアドレスは13個ですが、実体としてのサーバはAnyCastにより1IPに対して分散配置された複数台のサーバで可用性向上がされています。
蛇足:AWSのDNSサービスとの対応付け
- DNS権威サーバ:
Route53
- DNSキャッシュサーバ:
Route53 Resolver for Hybrid Clouds(旧Amazon Provided DNS)
- DNSフォワーダ:
Route53 Resolver
- 内部DNSサーバ:
Route53 Private Hostzone