DNS(ディーエヌエス)サーバは、インターネットの仕組みにおいて重要な役割を果たす必要不可欠な存在です。インターネットを使用する誰もが、日々DNSサーバを利用しているのですが、私たちは普段その存在を気にすることはありません。
では、DNSサーバとはどのような場面において、どのような役割を果たしているものなのでしょうか。
この記事では、そんなDNSサーバについて、初心者の方にもわかりやすく解説します。
DNSサーバとは?
DNSサーバとは、ネームサーバとも呼ばれ、ドメイン名とIPアドレスを紐付けたり、ドメイン名をIPアドレスに変換してくれるサーバのことです。
なお、DNSというのはDomain Name Systemの頭文字を取ったもので、ドメイン名を管理するために開発されたシステムです。
そう言われてもピンとこない方も多いと思いますので、まずはDNSサーバを理解する上で必要な用語から解説したいと思います。
クライアント
クライアントとは、パソコンやスマートフォンなど、ユーザーが操作するコンピューターを指します。
サーバ
サーバとは、ユーザーの操作するクライアントから、何らかの要求を受けてレスポンス(応答メッセージ)を返すハードウェアのことです。
代表的なものにDNSサーバ・Webサーバ・メールサーバなどがあります。
例えば自分のスマホ(クライアント)から相手のスマホ(クライアント)へメールを送る際には、メールサーバを通じてメールの送受信が行われています。
Webサーバ
Webサーバとは、クライアントからの要求に対してweb ページを表示するために必要なデータ(HTML・CSS・画像ファイルなど)を送るサーバのことです。
IPアドレス
IPアドレスとは、インターネットアドレスとも呼ばれるネットワーク上の住所のようなもので、数字の羅列でできています。
ドメイン
ドメインとは、IPアドレスと同じくネットワーク上の住所のようなものですが、人が認識する際に使用する文字列のことです。
IPアドレスのような数字の羅列では、人が読み取ったり打ち込んだりする際に間違えやすいため、意味を持たせやすい文字列のドメインが使われています。
実際の住所で例えると、IPアドレスが緯度・経度で、ドメインが住所(東京都新宿区〇〇町1-1-1など)のようなイメージで、同じ場所を指しますが、2通りの特定手段があるということです。
URL
インターネットでWebページを閲覧・特定する際に使用する http:// や https:// で始まるコードがURLです。このURLの構造の中にドメインが含まれています。
https://example.com/home-page/index/
- 「https://」と「/」の間にある「example.com」の部分がドメインです。
- ドメインの後の「home-page/index/」の部分をパスと言い、ドメインの中の各ページを特定するために使用されます。
Webページ閲覧の仕組みとDNSサーバ
コンピューター間のやりとり(ネットワーク)は、サーバとクライアントの2つによって成り立っています。私たちが普段閲覧しているWebページが表示されるまでの仕組みを簡単にまとめると下記の通りです。
- クライアント(PC・スマホなど)のWebブラウザ(Internet Explorer・Chromeなど)にURLが入力される
- クライアントはDNSサーバへURLの中からドメイン名を送り、IPアドレスへの変換を要求する
- DNSサーバからクライアントへ当該URLを管理するWebサーバのIPアドレスが送られる(レスポンス)
- クライアントはIPアドレスを頼りに特定したWebサーバへURLの中からパスを送り、閲覧したいページの情報を要求する
- Webサーバはクライアントへ、Webページの表示に必要なデータ(HTML・CSS・画像データなど)を送る(レスポンス)
- Webページが表示される
先ほど解説した用語と合わせて読むと、DNSサーバについてイメージが湧きやすいでしょう。
DNSサーバの種類
ここまでDNSサーバが果たしている役割について解説してきましたが、DNSサーバと一口に言っても、実はその中にも役割分担と階層があります。
DNSキャッシュサーバ
クライアントとの窓口となるのがDNSキャッシュサーバです。問い合わせを受けたIPアドレスを知らない場合にはルートサーバへ問い合わせを行います。
一度知り得たIPアドレスはキャッシュサーバの中に一時的に保存され、次に問い合わせがあった際にルートサーバに問い合わせることなく回答し、この仕組みをキャッシュと言います。
ちなみに、キャッシュと言っても英語で現金を意味する「cash」ではなく、貯蔵所を意味する「cache」を指します。
DNSルートサーバ
世界に13個しか存在しないDNSの最上位サーバのことをDNSルートサーバと呼びます。DNSキャッシュサーバに対し、どのDNSサーバへ問い合わせるべきかを回答します。
各階層のDNSサーバ
DNSサーバは階層になっています。
例えばドメインが「xxxxx.co.jp」である場合には、下記のように階層をたどり、最終的にそのURLを管轄しているDNSサーバからDNSキャッシュサーバへIPアドレスの回答がなされます。
- クライアントからDNSキャッシュサーバーへドメインが送られる
=>知っていれば5のステップへ
=>知らなければ2のステップへ - DNSキャッシュサーバからDNSルートサーバへ問い合わせる
=>jp(トップレベルドメイン)を管理しているDNSサーバを回答する - DNSキャッシュサーバからjpを管理するDNSサーバへ問い合わせる
=>co.jp(セカンドレベルドメイン)を管理しているDNSサーバを回答する - DNSキャッシュサーバがco.jpを管理するDNSサーバへ問い合わせる
=>IPアドレスを回答する - DNSキャッシュサーバからクライアントへIPアドレスを回答する
私たちが普段、何気なく表示しているWebサイトですが、ネットワーク上では瞬時にこのようなやり取りが行われています。
<まとめ>DNSサーバにはドメイン名を正しく登録しよう
この記事では、DNSサーバが、ドメイン名とIPアドレスを紐付けたり、ドメイン名をIPアドレスに変換してくれるサーバだということを解説しました。
つまり、DNSサーバが正しくドメイン名とIPアドレスの紐付けをしてくれない場合には、Webページが表示されないということになります。
自社でWebページを作成する際には、DNSサーバにドメイン名やIPアドレス等の必要事項を設定する必要がありますので、基本的なことではありますが、正しく登録するように気をつけましょう。
また、システム開発の外注先選びでお困りの方は、弊社までお気軽にご相談ください。
当社がこれまで支援してきた開発事例の共有、企画・コンサルティング、要件定義や実際の開発支援まで包括的にサポートさせていただくことが可能です。
システム開発を失敗しないために、弊社が相見積もりの取得までをサポートさせていただくことも可能です。むやみな営業電話などは決して行いませんので、まずは無料のご相談をお待ちしております。