DNSとは?電話帳の例えでわかる仕組み【図解】

どうも、くじらいどです。

DNSって、サーバーの設定をしていると必ず出てくるのに、説明を読んでも「名前解決」とか書いてあって、自分は余計わからなくなりました。

これ、電話帳だと思うとすんなり理解できます。名前で引いて番号を調べる、それだけの仕組みなんですよね。

この記事では、DNSの役割と「ドメインを設定したのにサイトが表示されない」の理由を図で解説したいと思います。


目次

結論:DNSはインターネットの電話帳

まず名前の正体から。DNSは Domain Name System(ドメイン・ネーム・システム) の略です。そのまま「ドメイン名を扱う仕組み」という意味で、名前が仕事内容そのものなんですよね。

で、その仕組みがやっているのは、たった1つです。

ドメイン名(名前)を、IPアドレス(番号)に変換する。

人が覚えられる名前
kujiride.com
DNSが変換
機械が使う番号
192.0.2.1

電話帳で「山田さん」を引いて電話番号を調べるのと同じこと
※番号は説明用の例です

くじらいど

「名前解決」って言われるとビビりますが、要は「名前から番号を割り出す」ってだけの話なんですよね。

IPアドレスとは?=電話番号

インターネットにつながっている機械には、すべて番号が振られています。これがIPアドレスです。

IPは Internet Protocol(インターネット・プロトコル) の略。プロトコルは「約束ごと」という意味なので、「インターネットで通信するときの約束ごと」ですね。その約束の中で「相手を番号で指定する」と決まっているので、その番号がIPアドレスです。

通信はこの番号でしか届きません。「kujiride.com に送って」では機械はどこに送ればいいかわからないんです。

じゃあ最初から番号を打てばいいじゃないか、という話になりますが。

番号で覚えるとしたら
ヤフー → 192.0.2.14
アマゾン → 192.0.2.57
くじらいど → 192.0.2.1
覚えられるわけがない
名前ならこう
yahoo.co.jp
amazon.co.jp
kujiride.com
これなら覚えられる。だからDNSが要る

人間は名前が得意で、機械は番号が得意。その間を通訳しているのがDNSです。

Point

IPアドレスには古い形式(IPv4・数字4組)と新しい形式(IPv6・もっと長い)があります。IPv4は数に限りがあって足りなくなってきたので、新しい形式が増えている、という話です。使う側が意識することはほぼありません。

サイトが表示されるまでの流れ

アドレスバーにURLを打ってからページが出るまで、裏ではこれが起きています。

STEP
ブラウザに kujiride.com と入力する

この時点ではブラウザも「どこにあるサイトか」を知りません。

STEP
まず自分の中のメモを見る

前に来たことがあるサイトなら、パソコンが番号を控えています。あればここで終了なので、2回目以降は表示が速いんです。

STEP
DNSサーバー(電話帳)に問い合わせる

控えがなければ、契約しているプロバイダなどのDNSサーバーに「kujiride.com の番号を教えて」と聞きます。

STEP
番号がわかったら、そのサーバーに接続する

返ってきたIPアドレス宛に「ページをください」と送ります。

STEP
ページが返ってきて表示される

ここまで、うまくいけば1秒もかかりません。

▼ 図にするとこの流れです

💻
あなた
kujiride.com の番号を教えて
📖
DNS
② 192.0.2.1 だよ
💻
あなた
③ 192.0.2.1 さん、ページください
🗄️
サーバー
④ はいどうぞ → ページが表示される

DNSがわかると解決すること

ここからが実用です。DNSの仕組みを知っていると、このへんのトラブルで慌てなくなります。

ドメインを設定したのにサイトが表示されない

一番よくあるパターンです。結論から言うと、たいてい壊れていなくて、待っていれば直ります。

理由は、世界中のDNSサーバーが、調べた結果をしばらく手元に控えているからです。毎回おおもとに聞きにいくと重いので、答えをメモして使い回しています。

つまり新しい登録をしても、古いメモを持っている電話帳は、その控えが切れるまで古い答えを返し続けます。

新しいメモを持っている電話帳
→ 新しいサーバーに案内する
サイトが見える
古いメモが残っている電話帳
→ 前のサーバーに案内する
まだ見えない

同じ時間でも「自分は見えるのに友達は見えない」が起きるのはこれ

この控えが切れるまでの時間は設定によって変わりますが、数時間〜1日程度で切り替わることが多いです。焦って設定をいじり直すと、かえってこじれることがあるので、待つのも大事だと思います。

ちなみにこの「控えの有効期限」には名前があって、TTLと言います。Time To Live(タイム・トゥ・リブ)=生きていられる時間、という意味です。DNSの設定画面に出てくる数字で、単位は秒。3600なら1時間です。

Point

サーバー移転の予定があるなら、移転の数日前にTTLを短く(300秒=5分など)しておくと切り替えが速く済みます。移転が終わったら元に戻す。プロがやっている小技です。

くじらいど

よく「浸透待ち」と言われるやつです。じわじわ広がってるイメージで語られますが、実際は「古いメモが切れるのを待ってる」だけなんですよね。

自分だけサイトが見えない

他の人は見えているのに自分だけ見えない場合は、自分のパソコンが古いメモを握っている可能性があります。

  • ブラウザのキャッシュを消す(Ctrl+F5)
  • スマホの回線(Wi-Fiを切ってモバイル通信)で見てみる → 見えたらDNSの控えが原因
  • パソコンを再起動する

「スマホの回線に切り替えて見てみる」は切り分けとして優秀なので、覚えておくと便利だと思います。別の電話帳を見にいくことになるので、それで見えれば「サイトは正常で、自分の環境の問題」と判断できます。

DNSを変えるとネットが速くなる、の意味

「DNSを 8.8.8.8 に変えると速くなる」という話を見たことがあるかもしれません。

あれは使う電話帳を、プロバイダのものから別のものに変えるという意味です。8.8.8.8 はGoogleが無料で公開している電話帳、1.1.1.1 はCloudflareのものです。

ただし速くなるのは「番号を調べる部分」だけです。回線そのものが速くなるわけではないので、動画の読み込みが劇的に改善したりはしません。なので、期待しすぎない方が良いと思います。

用語の正体(何の略なのか)

この分野の用語はほぼ全部が英語の略で、正式名称を見ると意味がそのまま書いてあります。知っておくと丸暗記しなくて済みます。

略語正式名称直訳すると
DNSDomain Name Systemドメイン名の仕組み
IPInternet Protocolインターネットの約束ごと
TTLTime To Live生きていられる時間(=控えの有効期限)
URLUniform Resource Locator資源の場所を示す統一の書き方
ISP(プロバイダ)Internet Service Providerインターネットを提供する事業者
くじらいど

TTLなんて「なんかの設定値」くらいに思ってましたが、「生きていられる時間」と知った瞬間に何の数字かわかりました。こういうの多いです。

ちなみに「名前解決」という硬い言い方も、英語では name resolution。resolution には「解決」のほかに「はっきりさせる」という意味があるので、「名前をはっきりさせる(=どこを指すのか確定させる)」と読むと自然です。

まとめ

  • DNS=インターネットの電話帳。名前から番号を調べる仕組み
  • DNSは Domain Name System の略。名前がそのまま仕事内容
  • IPアドレス=電話番号。通信は番号でしか届かない(IP=Internet Protocol=通信の約束ごと)
  • TTL=Time To Live=控えの有効期限。移転前に短くしておくと切り替えが速い
  • 人間は名前が得意・機械は番号が得意。その通訳がDNS
  • DNSは調べた答えをしばらく手元に控えている(だから2回目は速い)
  • 設定変更が反映されないのは、その古い控えが残っているから。数時間〜1日で切り替わることが多い
  • 自分だけ見えないときは、スマホの回線で見ると原因を切り分けられる
  • 8.8.8.8 などに変えると速くなるのは「番号を調べる部分」だけ

DNSは名前が硬いだけで、やっていることは電話帳そのものです。「名前を番号に変える係」と覚えておけば、サーバー設定の画面で出てくる用語もだいぶ怖くなくなると思います。

以上、くじらいどでした!

あわせて読みたい

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

アラサー社会不適合者の くじらいど です。
喘息・アトピー・鼻炎持ち。
趣味は絵を描くこと。

「失敗と後悔の海」を超えて、
自分の人生を描いています。

コメント

コメントする

目次