• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:DNSの説明について)

DNSの説明について

このQ&Aのポイント
  • DNS(Domain Name System)とは、クライアントがドメイン名をIPアドレスに変換するための仕組みです。
  • クライアントはまず自組織内のネームサーバーに問い合わせますが、一致するドメイン名がない場合は上位のネームサーバーに問い合わせます。
  • 自組織で管理されていないドメインの場合はルートネームサーバーから順次下位に問い合わせ、最終的にドメインを管理している(最下位の)DNSサーバーからIPアドレスを取得します。

質問者が選んだベストアンサー

  • ベストアンサー
  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.5

うーん。 失礼ですが、小中高の教科書のIT系の記述というのは専門家から言わせるとおよそ権威から程遠い、「どうせうそばかり書いているんだろ」と思われている物です。ちゃんとした記述の教科書も中にはあるのでしょうが。。。 ANo.3の補足に書かれた文章を好意的に解釈するならば、ドメイン名の再帰問い合わせと、組織内の問い合わせ転送をごっちゃにして書いているのでしょう。好意的でなく解釈するならば、知ったかぶりの馬鹿が書いた文章です。 いずれにしても、正しい記述とは言いがたいです。 図がどうなっているのかわかりませんが、ドメインの階層構造とゾーンを分担して持っていることを説明する図であろうと想定します。 また、日本語的にも推敲が足りませんね。「IPアドレスの変換」は「IPアドレスへの変換」じゃないと意味が通じないし。 現状の文をできるだけ保持して書き換えるとしたら、こうかなぁ。 ドメイン名をIPアドレスに変換するために、ネームサーバは図の様な階層構造をつくり分散してデータを保持することで総体として変換機能をはたしている。また、問い合わせ結果は一定時間キャッシュすることで高速化を実現している。クライアントは組織内の最寄のネームサーバーにドメイン名を送信し、IPアドレスを問い合わせる。このとき、ネームサーバのキャッシュに問い合わせのドメイン名に一致するデータがあれば、対応するIPアドレスを返信してDNSサービスを終了する。しかし一致するドメイン名が無い場合は、DNSプロトコルに従い順次上位のネームサーバに問い合わせを転送する。最終的に問い合わせはインターネットに直接通信可能なその組織の代表的DNSサーバに到達する。このDNSサーバはインターネット上の最上位DNSサーバをはじめとするいくつかのDNSサーバに通信して、問い合わせ対象のドメイン名のデータを提供しているDNSサーバを探す。そして、そのサーバに問い合わせを行い、最終的な回答を得る。 このようにしてIPアドレスへの変換ができたならば、ドメイン名を問い合わせたときとは逆の順番にIPアドレスを転送し、問い合わせ元のクライアントに応答する。 案2 このレベルの記述でキャッシュのことを書くのはややこしすぎると判断した場合: ドメイン名をIPアドレスに変換するために、ネームサーバは図の様な階層構造をつくり分散してデータを保持することで総体として変換機能をはたしている。 クライアントは組織内の最寄のネームサーバーにドメイン名を送信し、IPアドレスを問い合わせる。この問い合わせは転送されて最終的にはインターネットに直接通信可能なその組織の代表的DNSサーバに到達する。このDNSサーバはインターネット上の最上位DNSサーバから順に下位ドメインのDNSサーバへと問い合わせて、、問い合わせ対象のドメイン名のデータを提供しているDNSサーバを探す。そして、そのサーバに問い合わせを行い、最終的な回答を得る。 このようにしてIPアドレスへの変換ができたならば、問い合わせ転送の経路を逆にたどって問い合わせ結果を転送し、問い合わせ元のクライアントに伝達する。 たとえば、a.b.c.jpを探すとします。 もし、a.b.c.jpがキャッシュになくても、b.c.jpのNS情報ががキャッシュにあればそこに問い合わせるでしょう。この場合はrootサーバに問い合わせたりはしませんよね。 DNSの肝は、ドメイン名とIPアドレスの対応情報と、その対応情報(ゾーン)を持っているDNSサーバはどのホストなのかという情報を組み合わせて構築されていることだと僕は思うのですが、短い文章でちゃんと説明するのは難しいですね。 正確なところはRFCを参照しないといけないのですが、記憶にしたがって書いてます。勘違いがあったらごめんなさい。 大学になると、教科書に間違いがあるのは普通でそれに突っ込みを入れながら授業が進んでいくのですが、高校生だとまだ教科書を盲信しているんでしょうね。

ndaika
質問者

お礼

大変丁寧な返信、誠にありがとうございました。 正直非常にすっきりいたしました。 当方、どう調べても、どう好意的に解釈しても、教科書の文面が間違えているとしか考えられなかったのですが、ここまで検定教科書に堂々と書かれていると自らの知識を疑ってしまいまして、、。  さて、まだネットワークに関して初心者の生徒たちにとっては教科書は絶対的なものです。初歩的な概念を学ぶものだけに、大切なものだと考えています。  なんせ、内容はともかく「検定本」のお墨付きですから生徒たちが信じてしまうことをせめることはできないわけです。  組織内の問い合わせに関しては生徒たちはDNSの仕組みそのものを学ぶのがはじめてですし、例に挙げられているドメインがhttp://www.kantei.go.jp/なので、ドメイン名の再帰問い合わせ例だけを説明しました。負担軽減のためのキャッシュについても理解しやすい内容ですから説明をしました。(他にもキャッシュの説明はありますので。)  この教科書の記述に関しては、仲のよい友人に相談しながら、いかに好意的に解釈しても著者が本質的なところで間違っているという結論に至ったわけですが、今回の書き込みを拝見して非常にすっきりといたしました。 また、昨日、出版社に問い合わせの手紙を書いたことも申し添えておきます。  実は4年ほど前に、当方もつたない技術レベルでredhatを使用して、ドメインを取得し、自宅にサーバーをたてたときに、DNSの設定でのたうち回りまして、、、。そのときに学習していなかったらこの本通りの説明をしていたかもしれません。(これは解答をいただいた皆様から笑われても仕方がないことですが。) 本当にありがとうございました。  最後に、ご回答をいただいた皆様に感謝いたします。

その他の回答 (4)

  • Yeti21
  • ベストアンサー率47% (396/830)
回答No.4

それは、もしかすると再帰検索の概念を説明したものではないでしょうか? 本来の再帰の概念で言えば正しい方法です。 ただ、現実には、クライアント→再帰検索→反復検索の繰り返しという方法で検索され、 最初の再帰検索も下からではなくルートからtld~目的ドメインという検索になります。 これは、本来の概念的な再帰検索とは少し違うイメージがあります。 どうも、それくらいしか思い当たらないですね。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

「ZONE "."」を「type hint」にせずに「type forward」 としていれば普通にあることだと思います。 (自分の管理外の名前は別の特定のDNSになげる) 「上位のネームサーバー」という言葉は必ずしも 上位ドメインのという意味ではないでしょう。 内向きのDNSなどではよくやることだと思います

ndaika
質問者

補足

ご回答ありがとうございます。 当方の質問の仕方に問題があり、解答をいただいてから図の説明を上げるなど、不手際をお詫びします。3人もの博識な方から解答をいただけたのに、質問が中途半端なもので申し訳ありません。 まず、この書籍ですが、工業高校の生徒たちがネットワークの授業で手にする教科書です。(おそらく初めて名前解決の仕組みを学ぶところです。BINDの設定のような専門的なものではありません。「権威ある」などおかしな説明をつけてしまい、申し訳ありません。) 「ドメイン名をIPアドレスに変換するために、ネームサーバは図の様な階層構造をつくり連携して変換機能をはたしている。クライアントは自組織内のネームサーバーにドメイン名を送信し、IPアドレスを問い合わせる。このとき、ネームサーバのデータベースに問い合わせのドメイン名に一致するデータがあれば、対応するIPアドレスを返信してDNSサービスを終了する。しかし一致するドメイン名が無い場合は、DNSプロトコルに従い上位のネームサーバに問い合わせる。もし、そこでも一致するドメイン名が無い場合はさらに上位のネームサーバーに問い合わせる。このようにしてIPアドレスの変換ができたならば、ドメイン名を問い合わせたときとは逆の順番にIPアドレスを転送し、問い合わせ元のクライアントに応答する。」 この説明文の直前にはルートサーバーからネームサーバの階層図が掲載されています。また、、インターネット上の上位ネームサーバへの問い合わせの図が下の投稿のように掲載されています。 「教科書に書かれている」ということは生徒たちにとって大変なことでまず、ここで彼らは基本を覚えていきます。恥ずかしいことですが、その生徒たちに教えている当方としても、このように書かれているとたじろいでしまって、、私が間違っていたのか????となってしまいます。  おそらく、ここでの記述は「デフォルトネームサーバに問い合わせ、その管理データとキャッシュに情報が無い場合はルートネームサーバに要求を出す。トップレベルドメインを管理しているネームサーバのIPアドレスが返答される。次にそのIPアドレスにデフォルトネームサーバが問い合わせをする。次のDNSサーバのアドレスが返される。次々と階層を下がり、最終的にドメインを管理しているネームサーバに行き着いてIPアドレスを得る。」が説明として正しいように思うのですがいかがなものでしょうか。 それからご指摘の通り、当方は「上位のネームサーバ」の解釈を十分できませんでした。ご教授いただきありがとうございます。 もし、お時間が許すようでしたら、コメント等をいただけたら幸いです。(厚かましいお願いで申し訳ありません。)

  • Yeti21
  • ベストアンサー率47% (396/830)
回答No.2

私も書籍名が知りたいです。 検索方法については、その書籍に書かれている方法でロジックを作れば 可能ではありますが、一般的なDNSでは質問者様の考え通りですね。 ルートのアドレスもDNSで持っていますから、階層を辿る必要もないし、 キャッシュに無ければ次はルート、そしてtldから目的ドメインまでの 問い合わせで問題ないはずですが? その書籍の意図がわかりませんので、ちょっと興味がありますね。

ndaika
質問者

お礼

解答ありがとうございます。 図の方は次の様なものです。 目が点になったのですが・・・                |インターネット                | URLの入力→DNSサーバ→ルータ→DNSサーバ→DNSサーバ・・・・ ←    ←    ←    ←                ↓                |         (IPアドレスの送信                  |          202.214.63.114                          www.kantei.go.jp 上位のDNSは下位のDNSのテーブルを持っているだけのはずなのにそこが名前解決をしている図が掲載されているのです。 もう、?????なんです。

  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.1

組織内にキャッシュDNSサーバを階層的に設置している例を書いているのか、あるいは、単純に筆が滑ったのか。 具体的な書名を教えてください。権威があるというのはたとえばRFCですか?

ndaika
質問者

お礼

返信ありがとうございます。 権威ある?という書き方は正しくないのですが、、 これ、実は教科書に記載されている文章なのです。 DNSのキャッシュについてですが、一切ふれられていません。 (当方一定時間、アドレスがキャッシュされることは存じています。) また、このDNSの仕組みの説明図も全く納得できないものなんです。 ただ、こちらに画像を上げることはできないようですので、、。

関連するQ&A