目次
ドメイン
インターネット上でコンピューター同士が通信するためにお互いのIPアドレスが必要になります。
IPアドレスだと数字だけで分かりづらいので、Web上で一般公開されるサーバーは人間が分かりやすいドメインというものにかえて運用されています。
解説
私たちは何かWebサイトを見たい時、直接URLを入力することがあると思います。
このURLの中にドメイン名が入っています。
GoogleのURL「https://www.google.co.jp/」を例にどのようなものかみていきましょう。
上記のURLでは「google.co.jp」がドメイン名にあたります。
ドメイン名を利用したWeb上の通信
ドメイン名を利用したWeb上の通信はどのような仕組みになっているのでしょうか?
まず始めにDNSサーバーと呼ばれるサーバーにアクセスし、ドメイン名に対応するIPアドレスを入手します。
※DNSサーバーとはドメイン名をIPアドレスに変換するサーバーのことです。
その後、入手したIPアドレスを使用してサーバーと通信するという仕組みになっています。
DNSサーバーを経由するメリット
上記のように直接サーバーにアクセスしないでDNSサーバーを経由するメリットは何なのでしょうか?
例えば、回線業者の変更により、Webサーバーが利用しているIPアドレスが変更になったとします。
この時、もしドメイン名を使用せずにIPアドレスだけで運用していた場合、Webサイトに貼られているリンクがIPアドレス変更によりアクセスすることができなくなってしまいます。
ドメイン名を利用しているおかげで、DNSサーバーに記述されているドメイン名とIPアドレスの対応表を書き換えるだけでIPアドレス変更に対応することができます。
ドメインは階層で管理されている
ドメイン名は「.jp」、「.com」などのトップレベルドメイン、「co」、「ne」などのセカンドレベルドメインというように階層で管理されています。
ユーザーが「https://www.google.co.jp/」にアクセスする時、まず始めにDNSキャッシュサーバーにIPアドレスを問い合わせます。
次にDNSキャッシュサーバーは「www.google.co.jp」のIPアドレスを取得するために、まずルートサーバーが「jp」ドメインの情報を持っているDNSサーバーに問い合わせ、次にjpドメインサーバーが「co.jp」ドメインの情報を持っているDNSサーバーに問い合わせるというように順を追って問い合わせます。
最後に「google.co.jp」のDNSサーバーから「www.google.co.jp」のIPアドレスを聞き出し、クライアントに返すという仕組みになっています。
DNSサーバーから聞き出した情報はキャッシュサーバーに一時的に保存する仕組みになっているので、次回アクセスする際はこの過程を省くことができます。
DNSサーバーは世界中から大量のお問い合わせを受けていますが、階層毎に分散することで負荷を軽減させることができています。