DNSとはこんなものでは?

DNSサーバーを設定していて思ったのですが、DNSとはこんなものでは ないのでしょうか?

インターネットでホームページのURLを指定する時に、例えば 「http://www.kaze.com/hkita/」としますが、どうしてこれだけで世界中の URLを指定できるのか???不思議に思ったことはありませんか。

インターネット自体は、各ホスト(コンピュータ)はIP (Internet Protocol)アドレスを持っており、このIPアドレスでデータ 転送先を指定します。 あるホストのIPアドレスは世界で唯一のものであり、他のホストと重複して はなりません。 そうすると、そのIPアドレスを管理する組織がなくてはなりません。 この組織がInterNICやjpNICなのです。 インターネットと接続するためには、ここにドメイン名の登録が必要で、 これに対してここからIPアドレスが割り当てられます。

ドメイン名と言うのは最初に書いたURLの例で言うと「kaze.com」に当りま す。 「www.kaze.com」と言うのはこのドメイン上にあるWWWサーバ名を指してい ます。 このWWWサーバのIPアドレスは「204.254.7.166」です。よって、URL 指定を「http://204.254.7.166/hkita/」としても同じWWWサーバにアクセ スできます。 この場合DNS(Domain Name Service)は不要です。 実は、「www.kaze.com」を「204.254.7.166」に変換するのがDNSでインタ ーネットの世界ではBIND(Berkeley Internet Name Domain)が一般的に 用いられます。

>>でも、自分のDNSサーバーに全世界のドメイン名とそれに対応するIP アドレスデータを持っていたら、それだけでディスクがパンクするぞ???

DNSサーバーでは、まず自分のネットワークに関するDNS情報 (サーバ名とIPアドレスデータ)を持っています。 また、ディスクにはキャッシュと言う形で、外部のネットワークのDNS情報 を記憶します。 一度アクセスした外部DNS情報を記憶する訳です。 キャッシュと名前が付いているように、一定時間アクセスしなかった外部 DNS情報は忘れてしまいます。(DNS情報を捨てることです。)

クライアントからDNSサーバーにドメイン名からIPアドレスへの変換要求 があった場合、まず、自分自身で解決できるか試みます。解決できれば対応 IPアドレスをクライアントに回答します。 自分で解決できなかったら自分の上位の外部DNSサーバーに問題の解決を 依頼します。 依頼して問題(ドメインのIPアドレス)が解決したら、今度は接続先ドメイ ンのDNSサーバに指定サーバ名のIPアドレス変換を依頼しその回答を自分 のディスクにキャッシングします。 問題が解決できない場合はクライアントにその旨を通知します。

すなわち、DNSはDNS情報の分散データベースなのです。 インターネットに接続した場合、DNSサーバーは少なくとも自分のネットワ ークに関するDNS情報は正確に回答する義務があります。ウソを回答すると 少なからずインターネットの世界に迷惑をかけることになります。 この意味でDNSサーバーは大変重要と言えます。