ネットワークの設計と運用
DNSの名前解決での、再帰的な問い合わせと非再帰的な(反復的な)問い合わせの使われ方として正しいものはどれか。
- A端末(スタブリゾルバ)はフルサービスリゾルバに再帰的な問い合わせをして最終的な答えを求め、フルサービスリゾルバはルートサーバや権威DNSサーバに非再帰的な問い合わせをして、次に聞くべきサーバの紹介を受けながらたどる
- B端末は、ルートサーバ、TLDのサーバ、権威DNSサーバの順に、自分で非再帰的な問い合わせを繰り返して答えを得る
- Cルートサーバは再帰的な問い合わせを受け付け、端末の代わりに権威DNSサーバまで問い合わせて最終的な答えを返す
答えと解説を見る
正解:A. 端末(スタブリゾルバ)はフルサービスリゾルバに再帰的な問い合わせをして最終的な答えを求め、フルサービスリゾルバはルートサーバや権威DNSサーバに非再帰的な問い合わせをして、次に聞くべきサーバの紹介を受けながらたどる
再帰的な問い合わせは「最終的な答えを返してほしい」という依頼で、端末はふつう、プロバイダや社内のフルサービスリゾルバ(キャッシュDNSサーバ)にこの形で問い合わせます。フルサービスリゾルバは、キャッシュに答えがなければ、ルートサーバ、TLDのサーバ、そのドメインの権威DNSサーバに、非再帰的な問い合わせをします。問い合わせを受けたサーバは、答えを知っていれば答えを返し、知らなければ「次はこのサーバに聞いてください」という紹介(NSレコードなど)を返します。ルートサーバやTLDのサーバは、負荷や安全性の理由から、再帰的な問い合わせを受け付けません。
- A. 正しい。端末とリゾルバの間は再帰的、リゾルバと各サーバの間は非再帰的な問い合わせです。
- B. 階層をたどる処理はフルサービスリゾルバが行います。端末のスタブリゾルバは、ふつうリゾルバに1回問い合わせるだけです。
- C. ルートサーバは再帰的な問い合わせを受け付けず、TLDのサーバを紹介するだけです。