DNSの仕組みを分かりやすく解説します

アドレスを識別するためにDNSとIPアドレスが存在します。DNSサーバーはこの2つを変換するための仕組みの事です。

このような悩みを持っている方は必読!

DNSの仕組みをわかりやすく教えてほしい。

ドメイン名とURLの違いがわからない。

これらの悩みを全て解決できます。

DNSの仕組みとは、URLをIPアドレスに変換する作業の事をいいます。

ドメイン名とは、IPアドレスをURLに変換することを言います、のでURLとドメイン名は違います。

これらを理解できれば問題解決です。

ポイントは2つです。

  1. DNSの概念
  2. DNSサーバーとは

では具体的に解説していきます。

DNSの概念

IPアドレスと併用してインターネットに接続された機器を識別するために、名前の1種として使われているのが、DNS(Domain Name System) です

32ビットの数字だけでは分かりずらいので、アルファベット、数字、記号の組み合わせで表現したのが、DNSと思ってください

このようなドメイン名(http://www.XXX.co.jp)にIPアドレスを付属して、コンピューターを識別していきます(正確にはwww以降を言います)

分かりやすく利便性を高めるため、IPアドレスの代わりにドメイン名を利用しています

ウェブサイトのURLを見ても、10進法の数字では間違いのもとになるので、ドメイン名で表しているのです

とはいってもよくわからないと思うので具体的に説明していきます。

DNSをわかりやすく解説

DNSを理解するためには、URLの違いを知らないといけません。ドメイン名=URLとなっている人が多いので違いを説明しておきます。

通信にはTCPIPを利用しています。TCPIPのIPアドレスを使用して相手の住所まで情報を届けるのですが、このIPアドレスというのは数字だけであり人間にはとてもわかりづらい構成となっています。

例で行きましょう

IPアドレスが 173.100.154.230 となっていた場合、覚えるのに分かりづらいですよね。間違いのもとになりますし、間違えるとエラーを起こして相手と通信ができません。

このような間違いを防ぐために考え出されたのがURLです。

URLには自分でわかりやすい英語記述で構成している人がほとんどです。

例えば、https://burogudesu.co.jp にしてあれば、わかりやすくなります。見た人がブログ関連のURLなんだな、と理解してくれます。

ドメイン名というのは変換方式の事をいいます。

ドメイン名とURLの違い

例えば、IPアドレスが173.100.154.230 となっていたとしましょう。これはコンピューター同士が認識するための記述であり、人間にはわかりづらいです。

数字だけだと間違いのもとになるので、見てわかるように変換しようとなりました。

変換方式は何にしようかとなった場合、漢字変換、ひらがな変換、カタカナ変換と日本人なら思い付きそうな変換です。

https://漢字.co.jp、 https://ひらがな.co.jp、 https://かたかな.co.jp、 と変換した場合、それぞれ漢字名、ひらがな名、かたかな名のどれに変換しようかな、となります。

ですが、変換しようにも通信システムはアメリカ人が考え出したので、アルファベット、数字、記号しか使えない。

これら3要素を使って変換したやり方をドメイン名といいます。

先ほど漢字名やひらがな名に変換しようと考えたことと同じことです。

つまりIPアドレスをわかりやすくするために、ドメイン名を使ってURLを作成します。

173.100.154.230 はコンピューター同士が認識するためなので、人間にはわかりづらい。

なのでドメイン方式を使って 173.100.154.230 を https://burogudesu.co.jp に変換した。こうすれば人間が理解しやすい

人間が理解できる住所名(URL)が https://burogudesu.co.jp
コンピューター同士が理解できる住所が 173.100.154.230

この変換方式をドメイン名というのです。URLをドメイン方式を使って変換したのでドメイン名と言っているだけです。

正式にはドメイン名ではなく、ドメイン変換方式なのです。

DNSサーバーとは

ドメイン名(URL)とIPアドレスの対応関係を管理するシステムがあり、対応関係を管理するコンピュータをDNSサーバといいます

簡単に言うと、人間が認識するアドレスと、コンピューター同士が認識するアドレスを同時に管理しています、ということです。

DNSサーバー

我々が普段ネット上で送信しているURL(ドメイン名)などは、そのままインターネットに送られるわけではありません

DNSサーバーでドメイン名からIPアドレスに変換され、インターネットにアクセスしています

当たり前の話ですよね。人間が理解できるアドレスをいきなりコンピューターに送ってもわからんよ!ってなります。

サーバーはこのような階層構造になっています。

ルートサーバー
jpは、トップレベルドメイン(jpのサーバー)
coは、第2レベルドメイン(co.jpのサーバー)
xxxは、第3レベルドメイン(xxx.co.jpのサーバー)

ルートサーバー構造

ドメイン名は、各階層のドメインごとにサーバーを設置し管理しています。仕組みの詳細を更に深堀します

DNSサーバーの仕組み

どうやって、コンピューターからコンピューターまでの、IPアドレスを取得しているのかを解説します

例えばooo.xxx.co.jpからccc.ddd.aⅽ.jpのIPアドレスを知りたいとします。この時の通信の仕組みを画像を使って解説します

まずooo.xxx.co.jp のoooが一番近くにあるサーバーのxxxにccc.ddd.aⅽ.jpのIPアドレス知らない?
と、たずねます

DNSの仕組み1

xxxが知らないよ、となるとxxxは次にルートサーバーに問い合わせます。この時ルートサーバーはトップドメインの各種情報を持っているので、その中からjpの情報をxxxに返します

DNSの仕組み2

次にxxxはjpに問い合わせ、jpはacに問い合わせ、jpはac.jpの情報をxxxに返します

DNSの仕組み3

次にxxxはacに問い合わせ、acはdddに問い合わせ、acはddd.ac.jpの情報をxxxに返します

DNSの仕組み4

次にxxxはdddに問い合わせ、dddはcccに問い合わせ、dddはccc.ddd.ac.jpの情報をxxxに返します

DNSの仕組み5

次にxxxはユーザーに全て取得したIPアドレスを返します

DNSの仕組み6

以上のやり取りまでが、DNSの仕組みであり、IPアドレスの取得の流れです

毎回このようなやり取りをしているのではなく、一度IPアドレスを取得すると、記憶しているので、次回からはやり取りを行わず、アクセスします

まとめ

IPアドレスは数字のみでコンピューターが理解できるアドレス、URLは人間が理解できるアドレス。

この2つを変換したのがドメイン名方式。

DNSサーバーはIPアドレスとURLを管理している。

階層構造からアドレスを取得している。