特集

DNSには3種類の登場人物がいる。それぞれの役割とは?

Internet Weekで受講した「座学」が良かったので簡単に紹介したい<1>

 昨年11月に開催された「Internet Week 2025」では、オンラインWeekのプログラムとして「座学」が設けられた。主催者の一般社団法人日本ネットワークインフォメーションセンター(JPNIC)からは「オンライン参加の便利さや手軽さを活かして、より多くの方に知っていただきたい内容」であるとアナウンスされている。どのような内容か興味を引かれたため、2本のプログラム(チュートリアル)を受講してみたところ、文字通り「その技術を基礎から勉強してみたい人」にお勧めできる内容であった。

 そこで本レポートでは、今回受講した「90分で学び直すDNSとDNSSECの基本」と「QUIC+HTTP/3と、これからのHTTP」について、2回に分けてそれぞれ簡単に紹介したい。なお、これら2本のチュートリアルは想定する受講対象者にかなりの違いがあり、誰に何を伝えたいかが異なっているため、紹介の仕方を変えている。その点について、あらかじめご承知いただきたい。

[目次]

  1. 90分で学び直すDNSとDNSSECの基本(この記事)
  2. QUIC+HTTP/3と、これからのHTTP(近日掲載予定)

 インターネットにおけるDNSの主な役割は、「アクセスしたいサーバーのIPアドレスを得る」というように、通信を開始する際に相手の情報を得ることである。この役割はDNSが始まったころからのもので、多くの人々に知られており、DNSという言葉自体の認知度は高い。

 しかし、多くの人に知られているのはそこまでだ。DNSの具体的な名前解決の仕組み、そして、DNSには現在もさまざまな機能が追加され、変化し続けていること[*1]をご存じない方々も多いのではないだろうか。知識のアップデートをしていかないと、得られるはずのメリットも享受できないし、何かトラブルが発生した際に原因を調べ、対策を立てることができない、といったことにもなりかねない。そのため、DNSの基本と最新情報に関する知識を得ておくことはネットワーク管理者だけでなく、サイト管理者にとっても重要である。

 株式会社日本レジストリサービス(JPRS)の鍛冶典彦(かじ ふみひこ)氏、倉持玲介(くらもち りょうすけ)氏、森下泰宏氏による「90分で学び直すDNSとDNSSECの基本」では、DNSの基本的な仕組みの説明から始まり、プライバシー上の懸念からフルサービスリゾルバーの名前解決アルゴリズムに変更が加えられた話や、電子署名の技術を使ってセキュリティを強化するDNSSEC(DNS Security Extensions)の解説まで、幅広く扱われた。

 主な参加者として初学者を想定し、DNSの基本から丁寧に解説していくというスタイルで進められており、これからDNSを勉強しようと考えている方も対象にしていることが見て取れる(図1、図2)。

図1 想定する対象
図2 このチュートリアルの構成

 初学者を対象としていることがよく分かるのが、前半の2つのパートである。DNSの構成要素と基本的な動作を説明する際に初学者にはなじみの薄い専門用語を使わず、それぞれの役割を示す言葉に言い換えることで、全体像を理解してもらうことから始まっている(図3、図4)。

図3 3種類の構成要素
図4 DNSの役割と構成要素の関係

 DNSを理解するうえでまず重要なのは、図3と図4で示されているように、DNSには3種類の登場人物(構成要素)がいて、それぞれに明確な役割があるという点にある。この役割分担と、それぞれの関係を正しく理解することが、その後のDNSの理解に大きく影響する。そのため、あえて専門用語を使わず、役割を示す言葉で説明するという選択をしたのであろう。

 本チュートリアル内でも触れられているが(図5)、DNSには、取っ付きにくかったり誤解されやすかったりする、独特の用語・表現が存在する(筆者はそのことをリアルタイムに経験してきている)。例えば、権威DNSサーバーには「DNSサーバー」「ネームサーバー」「コンテンツサーバー」「ゾーンサーバー」といったさまざまな呼び方が使われてきたし、フルサービスリゾルバーについても「キャッシュDNSサーバー」「ネームサーバー」「DNSサーバー」「参照サーバー」といった、さまざまな呼び方が使われてきた。かつ「ネームサーバー」「DNSサーバー」のように、権威DNSサーバーとフルサービスリゾルバーのどちらにも使われるため、文脈を考えないとどちらを指しているか、あるいは両方を指しているかが分からない用語もある。こうした用語の混乱が、DNSに対する読者の理解を阻害してきたことは否めない。

図5 「DNSサーバー」には要注意

 本題に戻るが、図3と図4についての解説は、以下のようなものである。

  • 「情報が欲しい人(ユーザー)」は、「情報を探す人」に対して「欲しい情報を要求する」
  • 「情報を探す人」は、「情報を持っている人たち」に対して「その情報を持っているかを聞いて回る」
  • 「情報を探す人」は、「情報を持っている人たち」に聞いて回って得られた結果を「情報が欲しい人に返答する」

 この流れ自体には難しい話はなく、とてもシンプルである。また、事前の準備として

  • 「情報を持っている人たち」は、「情報を探す人」に答えを返すために「事前に(自分が管理する範囲と自分が委任した委任先の)情報を用意しておく」

という話や、

  • 「情報が欲しい人」の全員が「情報を探す人」に聞いて回るのは効率が悪いので、専門の「情報を探す人」に聞いて回るのを依頼するようにして、効率を上げる

という話も追加される。

 そのような説明を経て、ようやく3種類の登場人物(構成要素)は、DNSではこう呼ばれるという話になるのである(図6)。まず役割を説明して全体像を理解してもらい、あとで専門用語に置き換えるという流れは、理解を深めてもらうための工夫と言えよう。

  • 情報が欲しい人 = スタブリゾルバー
  • 情報を探す人 = フルサービスリゾルバー(フルリゾルバー)
  • 情報を持っている人たち = 権威DNSサーバー
図6 構成要素の名前

 こうした方法はすでに知識がある人から見ると少々回りくどく感じるかもしれないが、初学者にとっては取っ付きやすいのではないだろうか。

 また、階層化と委任という仕組みが「分散管理」と「一元管理」を実現するための仕組みであることが、DNSが作られた歴史的な背景を含めて解説されており、DNSによる名前解決がどのように行われるのかといった解説もされている(図7~図12)。DNSの全体像についてはそれぞれの役割から入ったが、DNSの本質を説明するために必要な基本設計に関する用語は、最初にその旨を説明したうえでそのまま使うといった使い分けもされている。

図7 ドメイン名
図8 階層化
図9 委任
図10 ゾーン
図11 DNSの分散管理と一元管理
図12 まとめ:DNSの構成要素と分散管理の仕組み

 このほか、DNSにおけるプライバシーやDNSSECの話など、このプログラムで扱った内容は幅広いが、全体としてJPRSによる『DNSがよくわかる教科書』[*2]の説明で使われている定評のある部分を抜き出し、最新の情報も加えているといった印象を受けた。

図13 おわりに

 Internet Weekの講演で使われた資料は一部プログラムを除き、原則、一定期間を経たあとにJPNICのウェブサイトで公開される。今回のInternet Week 2025の講演資料もちょうど先日公開されたところで、「90分で学び直すDNSとDNSSECの基本」の講演資料(PDF)もダウンロードできる。資料は丁寧に作られているので、独学でも使えそうだ。学習者の近くにDNSが分かっている人がいて、内容について質問できる環境にいれば、なお良いであろう。

「90分で学び直すDNSとDNSSECの基本」の講義は、「Internet Week Basicオンデマンド」において動画としても公開されている。本レポートを読んで興味を持った方は、ぜひ講義全編を視聴してみてほしい

[*1]…… 以下の記事において、「ドメイン名とDNSにおける最近の変化=2018年以降に起こった7つの項目」について解説している。ご興味があれば、こちらもご覧いただきたい。
書籍『DNSがよくわかる教科書』が「よくわかる」のはなぜ? あれから7年。DNSの来し方行く末を思う
「第2版」発行に寄せて執筆・監修メンバーが講演――「ランチのおともにDNS」より
https://internet.watch.impress.co.jp/docs/event/2074303.html

[*2]…… 『DNSがよくわかる教科書 第2版』(SBクリエイティブ株式会社)
https://www.sbcr.jp/product/4815622657/

[目次]

  1. 90分で学び直すDNSとDNSSECの基本(この記事)
  2. QUIC+HTTP/3と、これからのHTTP(近日掲載予定)