T1#standard
DNS(ドメインネームシステム)の策定

メタデータ
- 日付
- 年代
- 1980s
- Tier
- T1
- 参照年表
- インターネットとWebの歴史
- 出典数
- 12
- 関連項目
- 02
- Tags
- #standard
DNS(ドメインネームシステム) は、インターネットの分散型の住所録である。example.com のような名前を、機械が使う数値のアドレスに変換する ── しかも、どこか1台の計算機が一覧の全体を持つことなしに。発明したのは南カリフォルニア大学(USC)情報科学研究所(ISI)の Paul Mockapetris で、1983年11月に RFC 882(概念と機能)と RFC 883(実装と仕様)の2つの文書として発表された。設計は1987年11月に RFC 1034・1035 として改訂され、これが今日の DNS の中核になっている。おなじみのトップレベルドメインは別の文書で決まった。.com・.edu・.gov・.mil・.org を定めたのは、1984年10月に Jon Postel と J. Reynolds が出した RFC 920 である。
| 時期 | 文書 | 内容 |
|---|---|---|
| 1983年11月 | RFC 881(Postel) | ドメイン形式の名前を導入する計画と日程。当初はすべてのホストを「ARPA」ドメインに置く |
| 1983年11月 | RFC 882(Mockapetris) | 概念 ── ドメイン名空間、ネームサーバ、リゾルバ |
| 1983年11月 | RFC 883(Mockapetris) | 実装 ── ネームサーバとリゾルバの形式とプロトコル |
| 1984年10月 | RFC 920(Postel、Reynolds) | 最初のトップレベルドメイン ── ARPA・GOV・EDU・COM・MIL・ORG と2文字の国別コード |
| 1986年1月 | RFC 973(Mockapetris) | 初期運用からの変更点と所見 |
| 1987年11月 | RFC 1034、RFC 1035(Mockapetris) | 改訂仕様。RFC 882・883・973 を廃止 |
問題 ── ネットワーク全体で1つのファイル
DNS 以前、ARPANET のホストはどれも、ほかのすべてのホストの名前を同じ1か所から知っていた。ホストは SRI の Network Information Center(NIC)に登録され、一覧は SRI-NIC の計算機上の HOSTS.TXT というファイル1つに保たれていた。RFC 882 は難点を一文で述べている ── この表の大きさ、とりわけ更新の頻度は、管理できる限界に近づいている、と。
4年後に書かれた RFC 1034 は、振り返ってその理由を説明する。どのホストも FTP でこのファイルを取りに来るため、新しい版を配るのに費やされるネットワーク全体の帯域は、ホスト数の2乗に比例して増えた。1983年1月1日の TCP/IP への切り替え によってネットワークを丸ごと接続することが容易になり、各組織は NIC がマスターファイルを更新するのを待たずに、自分たちの名前を自分たちで管理したいと考えるようになっていた。
設計 ── 委任できる木構造
RFC 882 は、根本的に必要なのは資源を指し示すための一貫した名前空間だとし、データベースの大きさと更新頻度を考えれば、性能を上げるためのローカルなキャッシュを伴って、分散した形で維持しなければならないと論じる。その答えは3つの部分からなる。
- 階層的な名前空間。 名前は木を成し、葉から根に向かって読む。どの節点も別の組織に管理を任せられるので、部分木ごとに権限を委任できる。
- ネームサーバ。 木の一部についての情報を持ち、それに関する問い合わせに答えるサーバ・プログラム。
- リゾルバ。 利用者の要求に応じてネームサーバから情報を引き出す、利用者側のプログラム。得た答えはローカルにキャッシュする。
この仕組みはホストのアドレス表にとどまらない汎用のものとして設計された。Postel が同時に出した計画文書 RFC 881 は、ドメインサーバの設計によって、メールボックスのアドレスをそのメールボックスを扱うメールサーバのホスト名に対応付けることもできると述べている。メールボックスを特定の機械ではなく組織に結び付けられる、というわけである。
導入とトップレベルドメイン
RFC 881 は落とし穴についても率直だった。ドメイン形式の名前を使うには大量のソフトウェアを書き換えなければならず、すぐにでも使いたい人々もいれば、長いあいだ目にしたくもない人々もいる。解決策は日程を決めることだった。まずすべてのホストを単一のドメイン「ARPA」に置き、次に防衛ネットワーク向けの「DDN」を設け、そのほかのドメインは定められた要件を満たせば追加できる、とした。
今日知られているトップレベルドメインの一覧を示したのは、1984年10月の Postel と Reynolds による RFC 920 である。既存の ARPA インターネットのホスト用の ARPA に、GOV・EDU・COM・MIL・ORG、そして2文字の国別コードが続く。NET は RFC 920 には現れず、導入は1985年1月である。つまり .com は DNS そのものより1年ほど若い。
RFC 882・883 から 1034・1035 へ
1983年の文書は、はっきりと出発点として書かれていた。1986年1月、Mockapetris は最初の実装群から得た変更点と教訓を RFC 973 にまとめた。1987年11月には、RFC 1034(概念)と RFC 1035(実装)で一式を置き換え、RFC 882・883・973 を廃止とした。RFC 1034 自身の説明によれば、分散データベースによる設計は RFC 882・883 で示され、いくつもの実装の経験を踏まえて1987年の方式へと発展した。DNSSEC の署名や DNS over HTTPS といった後の拡張は、この1987年の土台の上に載っている。
DNS を発明したのは誰か
Internet Society の『Brief History of the Internet』は、DNS は USC/ISI の Paul Mockapetris が発明したと明記している。2012年に彼を殿堂入りさせた Internet Hall of Fame も、単一のホスト上の単一の表に名前とアドレスの対応をすべて持たせる方式の問題に気づいた彼が、1983年に DNS を発明したとしている。周辺の仕事は共同作業だった。同じ ISI の Postel が導入計画を書き、トップレベルドメインの一覧を共著した。DNS が置き換えたホスト表を運用していたのは、Elizabeth Feinler が率いる SRI の NIC である。
DNS がいま何をしているかは用語集の DNS に、同時代の出来事は インターネットと Web の年表 にある。そこには ARPANET から、やがてドメイン名を誰もが目にするものにする World Wide Web の提案 までが並んでいる。
よくある質問
- DNS を発明したのは誰ですか。
- USC 情報科学研究所(ISI)の Paul Mockapetris です。1983年11月に RFC 882(概念)と RFC 883(実装仕様)として発表しました。Internet Society の歴史記述も、2012年に彼を殿堂入りさせた Internet Hall of Fame も、彼を発明者としています。
- DNS 以前、ホスト名はどう管理されていたのですか。
- SRI の Network Information Center が保つ HOSTS.TXT という一つの表に全ホストが登録され、各ホストがそれを FTP で取得していました。RFC 1034 によれば、新しい版を配るための帯域はホスト数の2乗に比例して増えました。
- com や edu といったトップレベルドメインはいつ決まったのですか。
- 1984年10月の RFC 920(Postel・Reynolds)です。1983年11月の RFC 882・883 は DNS の仕組みを定めた文書で、具体的なトップレベルドメインの一覧はそこにはありません。net は RFC 920 になく、導入は1985年1月です。
- 現在の DNS は RFC 882・883 のままですか。
- 違います。1987年11月の RFC 1034・1035 が RFC 882・883・973 を廃止して置き換えており、現在の DNS はこの版を土台にしています。
出典
一次資料RFC 881: The Domain Names Plan and Schedule — J. Postel (ISI), November 1983
導入計画、当初の「ARPA」ドメインと「DDN」、メールボックスとメールサーバの対応付け
一次資料RFC 882: Domain Names — Concepts and Facilities — P. Mockapetris (ISI), November 1983
HOSTS.TXT が管理の限界に近いという記述、分散とキャッシュ、ネームサーバとリゾルバ
一次資料RFC 920: Domain Requirements — J. Postel & J. Reynolds (ISI), October 1984
最初のトップレベルドメイン ARPA・GOV・EDU・COM・MIL・ORG と国別コード。NET は含まれない
HOSTS.TXT 配布の帯域がホスト数の2乗に比例したこと、882・883 からの発展
二次資料Brief History of the Internet — Internet Society
DNS は USC/ISI の Paul Mockapetris が発明したという記述
二次資料Paul Mockapetris — Internet Hall of Fame (inducted 2012)
1983年の発明、HOSTS.TXT の問題、2012年の殿堂入り
三次資料.net — Wikipedia
net の導入が1985年1月であること
最終更新: