DNSってなに?
名前解決ってどういうこと?
こういった疑問にこたえます。
システムエンジニアの僕がわかりやすく解説します。
DNS(Domain Name System)とは?
DNSはドメインをIPアドレスへと変換する仕組みのことです。
そして、DNSのサービスを提供するサーバをDNSサーバと言います。
IPアドレスは覚えにくい
TCP/IPではネットワークに接続されているコンピュータを識別するために各ホストにユニークなIPアドレスを設定し、そのIPアドレスを使って通信が行われます。
IPアドレスは数字の列で表されるため、人間にとってはとても覚えにくいですよね?
そこで、TCP/IPの世界ではホスト名と呼ばれる識別子が利用されてきました。
一つ一つのコンピュータに名前(ホスト名)をつけます。
通信をしたい場合は、IPアドレスではなくホスト名で指定するのです。
ホスト名で指定されたものをIPアドレスに変換されてから通信が行われます。
ドメイン名の構造
DNSの仕組みを理解するには、まずドメイン名を理解する必要があります。
ドメイン名とは、ホストの名前や組織の名前を識別するための階層的な名前のことです。
例えば、東京大学のドメイン名は次のようになります。
u-tokyo.ac.jp
このドメイン名は、「u-tokyo」が東京大学固有のドメインを示しており、次の「ac」は大学などの教育機関を、「jp」は日本を表しています。
ドメインは階層構造になっています。
頂点にルートがあり、その下に複数に分かれた枝があります。
頂点の次には「jp」や「uk」など国を表すドメインや、「com」などのドメインがあります。
jpのドメインの下には「ac」や「co」などがあります。
DNSによるIPアドレスの問い合わせ
DNSの具体的な問い合わせ処理を説明していきます。
それぞれの階層にDNSサーバがあります。
各DNSサーバは同階層のドメインとIPアドレスの紐付けと、下階層に位置するDNSサーバの管理を行なっています。
DNSに問い合わせを行うホストをリゾルバと言います。
リゾルバはIPアドレスを調べるためにネームサーバに問い合わせ処理を行います。
それを受けたネームサーバは自分のデータベースに情報があればそれを返しますが、情報がない場合にはルートネームサーバに問い合わせ処理を行います。
ドメインの木構造を上から順番にたどることで目的の情報があるネームサーバを見つけ、そこからIPアドレスを取得します。
リゾルバやネームサーバは新たに知った情報はキャッシュします。
これにより、毎回問い合わせることによるパフォーマンスの低下を防ぎます。
DNS(Domain Name System)とは?まとめ
ポイントをまとめます。
- DNSはドメインをIPアドレスへと変換する仕組みのこと
- DNSのサービスを提供するサーバをDNSサーバという
- ドメインは階層構造になっている
- ドメインの木構造を上から順番にたどることで目的の情報があるネームサーバを見つけ、そこからIPアドレスを取得する
以上、お疲れ様でした。
コメント