DNSの根本を理解するポイントは「資源レコードを基本とする対応表を持つ」ということと,「ツリー構造で表されるDNSサーバー同士が連携する」ということの2点だ。

 Part2では,この二つのポイントを中心に,DNSの根本のしくみを確認していこう。

構成要素はリゾルバとDNSサーバー

 DNSはインターネットに多数のサーバー・マシンが分散して,ドメイン名とIPアドレスなどの対応関係を管理する巨大システムである。ただ,数が多いだけで,その構成要素は二つしかない。それは,パソコン上で動く「リゾルバ」と,インターネット上に公開されている「DNSサーバー」である。どちらも,その実態はコンピュータ上で動くソフトウエアだ*1

 話を単純にするために,リゾルバが動いているパソコン1台と,DNSサーバー1台があるケースを想定しよう。こうした環境で,パソコンのユーザーがWebブラウザのアドレス欄に「http://www.example.jp/」などと打ち込むと,Webブラウザはドメイン名に対応するIPアドレスの調査をリゾルバに依頼する。

 そうすると,リゾルバは「ドメイン名がwww.example.jpのコンピュータに割り当てられているIPアドレスを教えてください」といったような検索要求をDNSサーバーへ送る(図2-1(1))。

図2-1●DNSサーバーからさまざまな情報を引き出す
図2-1●DNSサーバーからさまざまな情報を引き出す
DNSサーバーは,資源レコードという単位でドメイン名に対応するいろいろなデータを持っており,クライアントのリゾルバから要求された情報を返す。
[画像のクリックで拡大表示]

情報はDNSサーバーが持つ

 一方のDNSサーバーは,ドメイン名とIPアドレスなどのデータを対応づけた対応表(ゾーン情報)を持っている。この対応表を構成する1行は「資源レコード」と呼ばれる。

 資源レコードは,ドメイン名に何らかのデータを対応づけた情報で,データの種類によって「タイプ」が決まっている。IPアドレスが書かれているタイプは「A」(AはAddressの意味)である。一般にドメイン名とIPアドレスを対応づけた1行は「Aレコード」と呼ばれる。このほか,データ部分にDNSサーバー名を記したNSレコードや,メール・サーバー名を記したMXレコードなどもある。つまりDNSサーバーには,ドメイン名に対してIPアドレス以外の情報も登録できる。

 このようなDNSサーバーが,リゾルバから検索要求を受け取ると,ゾーン情報を検索し,対応するレコード(図2-1ではAレコード)を探し出す(図2-1(2))。そして,その検索結果をリゾルバに返信する((3))。こうした一連の処理は,「名前解決」と呼ばれる。

 ちなみに,リゾルバがAレコード以外のタイプを指定して検索要求をDNSサーバーへ送ると,DNSサーバーはそのタイプと一致する情報を探し出す。例えば,「ドメイン名がexample.jpに対応するメール・サーバー名(MXレコード)を教えて下さい」というような検索要求を受け取ったら,自身のゾーン情報を検索して「example.jpに対応するMXレコードはmail.example.jpです」と返答する(図2-1参照)。

多数のDNSサーバーが連携

 実際のインターネットでは,多数のDNSサーバーが連携するようになっている。それは,それぞれのドメイン名ごとにDNSサーバーを設け,階層をなしている。例えば,example.co.jpドメインを管理するDNSサーバーは,www.example.co.jpやmail.example. co.jpといったドメイン名とIPアドレスの対応関係だけを管理する(図2-2)。

図2-2●DNS全体は複数のサーバーからなるツリー構造になっている
図2-2●DNS全体は複数のサーバーからなるツリー構造になっている
DNSの全体像は,ルート・サーバーを頂点にしたツリー構造になっている。こうして,世界規模の分散処理を実現している。
[画像のクリックで拡大表示]

 こうすれば,個々のDNSサーバーは自分が管理する範囲(ゾーン)が明確に決まる。コンピュータにIPアドレスを割り当て直したためにドメイン名とIPアドレスの対応関係(Aレコード)が変わったりしても,その情報を変更する必要があるのは,そのAレコードを管理しているDNSサーバーだけで済む。

 一方,その上位のco.jpドメインを管理するDNSサーバーには,配下のexample.co.jpやnikkeibp.co.jpのようなドメイン名を管理しているDNSサーバーのありかが登録されている。

 さらに,その上位にはjpドメインを管理するDNSサーバーがある。そして最上位に位置するのが,jpやcom,netなどのドメインを管理するDNSサーバーのありかを登録しているルートDNSサーバーである。

この先は会員の登録が必要です。有料会員(月額プラン)は申し込み初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら