ドメインネームとDNS(ドメインネームシステム)
郵便で手紙を送る時に送付先の住所が必要であるのと同様に、インターネットでは、電子メールを送信したりWebサイトを閲覧するために、通信相手がインターネット上のどこにいるのかを特定する必要があります。
インターネットに接続されているコンピュータには「IPアドレス(例:59.103.153.11)」という識別番号が割り当てられていて、その番号によって互いを認識しています。
ですが、数字のみからなるIPアドレスは人間にとっては覚えにくく、IPアドレスからでは通信先がどのようなWebサイトなのかも見当がつきません。そこで、インターネット上にあるコンピュータに覚えやすい名前を付けるために考え出されたのが「ドメインネーム」です。
この「ドメインネーム」と、実際の通信に使用されるコンピュータ固有の「IPアドレス」を相互に変換する仕組みが『DNS(Domain Name System)』です。
- 変換作業を行うコンピュータを『DNSサーバー』または『ネームサーバー』と呼びます。
- 「ドメインネーム」を「IPアドレス」に変換する処理(またはその逆)を『名前解決』といいます。
DNSによる名前解決の仕組み
現在ドメインネームの登録件数は2億5000万を超えたといわれており、今後も新gTLDの普及により増え続けることが予想されます。インターネットでは、これら膨大な量のすべてのドメインネームとIPアドレスの関連を、1台のコンピュータによって一元的に管理することは現実的ではないため、世界中に分散した多数のDNSが連携して管理をする、階層的な「分散型データベース」を形成しています。
ドメインからIPアドレスを引き出すまでには、以下の図のように、複数のDNSサーバーに対して反復検索を繰り返し、名前解決が行われます。
- ドメインネームはドットで区切られたラベルという単位で構成されており、反復検索は右端のラベルから順に行われます。
下記のように、ユーザーはブラウザのアドレスバーにURLを入力したり、リンクをクリックするだけですが、内部ではこのような名前解決が行われた結果、目的のWebサイトにつながっています。
- ①ユーザーがブラウザにURLを入力すると、パソコンの「リゾルバ」というプログラムが「キャッシュDNS」に対し名前解決要求を行います
- ②「キャッシュDNS」は、まず最上位層の「ルートDNS」に対し問い合わせを行います
- ③「ルートDNS」は『jp』ドメインを管理する「JP DNS」の情報を返します
- ④これを受け、「キャッシュDNS」は「JP DNS」に対し問い合わせを行います
- ⑤「JP DNS」は「domainname.jp」を管理する権威サーバーである「ns1.webhosting.jp」の情報を返します
- ⑥これを受け、「キャッシュDNS」は「ns1.webhosting.jp」に対し問い合わせを行います
- ⑦「ns1.webhosting.jp」は「domainname.jp」のIPアドレスを返します
- ⑧「キャッシュDNS」は得られた情報を「リゾルバ」に回答し、名前解決が終了します