DNSでドメインをIPアドレスに名前解決する仕組み

DNSでドメインをIPアドレスに名前解決する仕組み

普段、インターネットを使用してブラウザからなにかを調べたいときは、知りたい情報のタイトルを検索結果からクリックしたり直接ドメインを入力して検索をします。

このクリックしてページを開こうとする、わずかな数秒の間でドメインはページを表示させるためにDNSサーバーでIPアドレスに変換されています。

ではDNSはどんな仕組みになっていてIPアドレスに変換しているのか、私たちに身近なことだけど目には見えない部分を知っておこうと思います。

 

DNSとは

 

DNSはDomain Name Systen(ドメイン ネーム システム)と言います。

1983年にInfomation Sciences Instiute(ISI)のポール・モカペトリスとジョン・ポステルにより開発されたシステムで、ドメインとIPアドレスを結び付けて管理するためのシステムです。

IPアドレスはコンピューターに割り振られた識別番号のことで数字で表されています。
コンピューター同士は識別番号のIPアドレスを使うことによって、私たちが普段使用してる電子メールやWebサイトの閲覧を可能にしています。

 

IPアドレスの例 192.168.0.1

 

コンピューターにわかりやすいのは識別番号になってるIPアドレス
ですがIPアドレスのままだと人間には、とても分かりずらいし覚えにくい形になってしまっています。

 

ドメインの例 http://example.com

 

そして私たちがわかりやすいのは英数字になったドメイン名ですが、このドメインは元々はIPアドレスで、私たちがIPアドレスを見やすくするように英数字のドメインに変換して認識しやすい形にしています。

このドメインをIPアドレスに変換してコンピューターが認識できるようにしたり、IPアドレスをドメインに紐付けすることもできるのがDNS(ドメイン ネーム システム)です。

 

DNSサーバーでIPアドレスに変換する仕組み

 

DNSの仕組みで知っておきたいことがDNSサーバーです。

DNSサーバーではドメインに紐付いてるIPアドレスの情報をさがして、ドメインに該当するIPアドレスをブラウザに返しています。

 

DNSのDNSサーバーでIPアドレスに変換されてWebサイトを表示する仕組みは、まず検索ユーザーがブラウザでドメインを入力やクリックをすると、入力したドメインのIPアドレスを調べるために「DNSキャッシュサーバー」にブラウザが要求します。

 

DNSサーバー図解

 

 

ブラウザの要求に対してDNSキャッシュサーバーは、「DNSルートサーバー」にexample.com(例)のIPアドレスの問い合わせをします。

するとDNSルートサーバーは、トップレベルドメイン「.com」のDNSサーバーにIPアドレスの問い合わせをするようにDNSキャッシュサーバーに情報を返します。

DNSキャッシュサーバーは.comを管理してる.comのDNSサーバーにIPアドレスを問い合わせます。

.comのDNSサーバーはexample.comのDNSサーバーに問い合わせするようにDNSキャッシュサーバーに返します。

そしてDNSキャッシュサーバーはexample.comのDNSサーバーでIPアドレスの192.168.0.1が分かると、ブラウザにIPアドレスを返してDNSサーバーの処理は解決します。

ここまで、いくつかあるDNSサーバーでドメインネームのIPアドレスの問い合わせをした仕組みを「名前解決」と言います。

DNSで名前解決ができると、ブラウザはWebサーバーに「192.168.0.1のWebページの要求」をWebサーバーにして、Webサーバーから返ってきた情報を私たちは見ることができるという仕組みになっています。

 

 

Advertisement

 

 

名前解決もできるDNSキャッシュサーバーの仕組み

 

DNSサーバーの中で階層構造を使用することなく名前解決ができるDNSサーバーの「DNSキャッシュサーバー」について触れてみたいと思います。

 

 

ブラウザから初めにIPアドレスの問い合わせがあるDNSキャッシュサーバーは、DNSサーバーの中の窓口のようなサーバーで、名前解決したIPアドレスの結果をブラウザに伝える役割がある以外に、過去にあった名前解決の問い合わせ情報をキャッシュする役割も持つDNSサーバーです。

DNSキャッシュサーバーでキャッシュされるデータは「レコード」と呼ばれていて有効期間が設定されてるのですが、それぞれのレコード設定期間中は名前解決のキャッシュ情報がキャッシュされます。

このDNSキャッシュレコードのキャッシュによって、毎回DNSサーバーの階層が下位のDNSサーバーに下がることなくDNSキャッシュサーバーだけでドメインの名前解決をすることができるので、DNSサーバーの高速化や負荷軽減が出きています。

 

 

Advertisement

 

 

DNSルートサーバーはどこにあるのか

 

DNSサーバーの中でDNSキャッシュサーバーから最初の名前解決のための問い合わせがある「DNSルートサーバー」です。

 

 

DNSルートサーバーには「ルートゾーン」というものでトツプレベルドメイン管理が分かれていて、トップレベルドメインの参照もできるので、DNSルートサーバーの次の階層のDNSサーバーに問い合わせできる仕組みを作れる重要なDNSサーバーです。

DNSルートサーバーは分散データベースで世界に13機あります。正確には13クラスタと言います。

クラスタは「固まり」や「群れ」という意味ですが、DNSルートサーバーの運営は分散してる複数がまとまった集合体なので13クラスタというのだと思います。

そして重要なDNSルートサーバー13クラスタはアルファベットのA~Mで分かれていてDNSルートサーバーの場所も違います。

 

Aルート

株式会社ベリサイン

13のルートネームサーバーの「a.root servers.net」を運営

 

Bルート

情報科学研究所

「b.root servers.net」を運営

 

Cルート

コジェントコミュニケーションズ

「c.root servers.net」を運営

 

Dルート

メリーランド大学

「d.root servers.net」を運営

 

Eルート

NASAエイムズ研究センター

「e.root servers.net」を運営

 

Fルート

インターネットシステムコンソーシアム株式会社

「f.root servers.net」

 

Gルート

米国DODネットワーク情報センター

「g.root servers.net」を運営

 

Eルート

アメリカ陸軍研究所

「e.root servers.net」を運営

 

Iルート

ネトノド

「I.root servers.net」を運営

 

Jルート

株式会社ベリサイン

「j.root servers.net」を運営

 

Kルート

RIPE NCC

「k.root servers.net」を運営

 

Lルート

ICANN

「L.root servers.net」を運営

 

Mルート

WIDEプロジェクト

「M.root servers.net」を運営

 

さらにA~Mの13クラスタのルートサーバーの下に負荷分散などの理由から数多くのルートサーバーがまとまっています。

 

参考資料  https://root-servers.org/

 

こちらのサイトで細かい場所が地図付きで分かりやすかったので参考にしてみてください。

 

よくあるDSNエラーの原因

 

DNSエラーが発生してしまうことがあります。

DNSサーバーでIPアドレスに変換をする名前解決ができないとブラウザからの要求を返せないので、DNSエラーが発生してしまいます。

その場合はドメインとIPアドレスの紐付け作業が上手くできていないためエラーが発生することも多いです。
なので、自分のWebサイトのDNSエラーはネームサーバー設定を確認して見直す必要があります。

そしてインターネットの接続のときのエラーの場合ですが、私たちがインターネットの使用をするときにはLANケーブルの使用やルーターを使用してパソコンやタブレット、スマホといった端末に接続しています。

使用してるネットワーク機器の設定を確認してルーターの電源が落ちてしまってたり、なにかの端子コードが抜けてしまってたり、無線LANルーターの設定がOFFになってないかを確認します。

その他には、一時的なアクセスの不具合があります。
DNSにアクセスが集中してしまうと、タイムアウトまでにIPアドレスを返すことができなくてDNSエラーになる場合もあるので、時間をおいてからDNSエラーが解消されたらタイムアウトのエラーになります。

ドメインカテゴリの最新記事