1. まえがき

このtweetを見て、「DNS入門」にふさわしい本があるかを考えたが、見当たらない。

「DNS入門」が/想定する読者とは:

本当に入門書が必要なのだろうか。

次の世代がDNSで困らないために、基盤技術をささえる技術者を養成する必要もある。

DNSの基本的知識を解説することにした。
-- ToshinoriMaeno <<DateTime(2018-04-23T11:07:21+0900)>>

../DNSの学び方

DNS用語の辞書も必要かもしれない。(検索では品質がバラバラ) DNS/索引

/電話帳のたとえ

/リゾルバー あるいは/キャッシュサーバー

/運用入門 は中級へ進んでから。

そうそうDNSの管理にはドメイン名の管理(登録)も含めないといけない。ICANN, ccTLD, レジストリ、レジストラ、

1.1. 入門書が求められているのか

多くのひとが求めているのは、目の前でおきたトラブルに対処する方法であって、DNSを理解したいわけではないのだろう。

/webサーバー移転のDNS対応 あたりか。

今であれば、「DNSブロッキング」とはなにか、の解説だろう。(これが入門だとはおまわない)-- ToshinoriMaeno 2018-04-23 07:05:37

BINDの設定本とか、Cook Book, JPRSの実践DNSなどもその方向に思える。

自分が書いてみたいのは、RFC1034の解説とか、間違った設定の理由(説明)だと思う。


警告:DNSは

  1. 生まれつきの脆弱性を抱えている。
  2. あなたが期待するほどには便利な道具ではない

    • 期待するようには動作しないでしょう。
  3. きちんと使わないと危険な道具です

  4. これらを理解するにも時間と忍耐が必要です

DNS入門に欠けているもの: セキュリティへの配慮

2. DNS入門

2.1. DNSの概要

DNSは/ドメイン名をキーにしたDNS/1/資源レコードの集まりを分散して管理・操作・検索するためのシステムです。

動かすことが可能かどうかも分からない時代の作品なので、 セキュリティについてはまったく配慮されていませんでした。

DNSがどのように動作しているかを知ることが大切です。
  1. ドメイン名 (構成、階層構造)
  2. ドメイン名空間の分割管理 権威サーバーの動作
  3. DNSレコードの検索 リゾルバーの動作
  4. DNSメッセージ DNS query, response

2.2. ドメイン名

2.2.1. ドメイン名は階層になっている

名前の唯一性を実現するために木構造の階層構造になっています。

2.2.2. 資源レコードは分散している

分散管理の仕組みを理解することは避けて通れません。

2.2.3. ゾーン

資源レコードの集まり(部分集合)である「ゾーン」を管理するのが、/ゾーンサーバー(権威サーバー)です。

[警告] 日本語が不自由で、論理的な思考も困難な方はこの先を読むのは無駄です。

twitterで beyondDNSをフォローして、質問してみてください。

「画像文明」という小説があったのを思い出した。

基本的な姿勢:

分かりやすいと思える説明だけを読んで、分かった気になって、それ以上は考えない。
だとすると、それは危険な状態です。

きちんと理解するきっかけにするのであれば、「分かり易い説明」にも意味があるでしょう。
「分かった気にさせる」だけなら害になります。

警告: きちんとした手順を踏んで、検索しないと、偽情報(毒)をつかむことになります。

2.3. 分散管理

2.4. DNSレコード検索

2.5. DNSメッセージ

2.6. DNSはむずかしい

分かりやすいDNSの説明があるとすれば、

それが分かるなら、DNSの基礎コースを勉強してください。

DNSを使いこなすのはむずかしい。

これが分かりやすいか。正しいか、読んでみるのもいい。(古い) -- ToshinoriMaeno 2017-01-13 00:21:18 http://www.atmarkit.co.jp/ait/articles/0112/18/news001.html

3. クラス分け

以下のように分けています。項目は検討中です。

DNS入門に続くのはDNSの基礎です。上級は考慮中ですが、多分、私には無理です。 -- ToshinoriMaeno 2016-10-03 05:06:24

3.1. 入門コース

Domain Name Systemは DNS/1/ドメイン名についての情報(/ドメイン名空間)を共有(広域、分散管理)するための /仕組みです。

DNSはどう使われているか。どんな役にたつか。(DNSの基礎/DNSとは :

/初級/分散管理, /名前解決 あるいは/検索してみよう

/演習 /参考tweet

3.2. 初級

DNSメッセージを理解しよう。 DNS/1/資源レコード のうち DNS/1/資源レコード/A レコードは入門でも扱わないとまずそう。


「30分で学ぶDNSの基礎の基礎」 (という嘘の説明;騙されてください)/基礎の基礎

(10分で分かるGhost Domain Names脆弱性と同じ筆者)w

3.3. DNS を信用するな

実験として提案され、実験的に実装されたものを、 「運用でカバー」してきたのがDNSです。(悪用しようとするひとはいないという時代の実験)

「運用でカバー」できるだけの人が育ってこなかった。育てなかった。育てる必要性を見抜けなかった。

実験システムから実用可能なシステムへ移れるだろうか。

/背景 DNS/毒盛

DNSの入門を勉強しなければならないのは誰か。

かつてのように参加しているという意識はないのだろうから。

JPRSには未熟なDNSとまで言われている。そんなものをただの利用者に使わせるのか。

DNSSECによる保護が有効なのは、DNSSECを設定しているゾーン(ドメイン)に対してだけである。

3.4. 背景

DNSとはDomain Name System (RFC 1034, 1035 など) のことである。DNS/RFC

DNS Summerdays 2012 の 「DNS入門」が名前に過ぎた難しい内容なので、 やさしい入門の項目を考えて見た。(森下版は添付ファイル参照) 内容はこれから吟味する。

/運用がいちばん重要 だが、とても危険な状態のキャッシュサーバの理解も重要だ。 DNS/毒盛再考

ここを見直しても委譲(委任)の説明が抜けている。 -- ToshinoriMaeno 2013-07-30 11:49:25

3.5. どのコースにするか

まずはこのあたりを見て、自己評価してもらえるといいかもしれない。 DNS/理解度を自己評価してみる -- DNS/誤解集 -- DNS/基礎知識

DNSの基礎


3.6. web を見るまで

ブラウザで https://moin.qmail.jp を見るまでのDNSに関係する働きを題材にして、

4. DNS 管理入門

この辺からはDNSレコード設定者つまり管理者向けです。/中級の話題です。

4.1. 想定読者はDNS管理者とする

DNS入門講座の範囲: まずはDNSレコード管理者を読者としよう。DNS/1/資源レコード

web セキュリティ分野のひとにも理解してもらえればと思っている。

どういう内容を知りたいか、以下に希望を書いていただけますか。


  1. /ドメインの取得ということの意味(レジストラの役割など)

  2. コンテンツサーバー(ゾーンサーバ)とキャッシュサーバーの区別
  3. 権威サーバを動かす上で注意すべきこと (内部名、TTL)
  4. DNS/1/資源レコード 解説

    • CNAME, MX なども。
  5. UDP と TCP

  6. DNSセキュリティ(UDPに起因する脆弱性) DNS/セキュリティ

    • キャッシュサーバへの毒盛の歴史, Kaminsky 型攻撃とport 固定の危険性
  7. RFC

    • DNS と BINDの歴史など、DJBの戦い

この程度でもどれくらい時間がかかるか。一日(10時間) でも厳しいかも。

-- ToshinoriMaeno 2012-12-10 00:45:16

/中級

DNS/索引 DNS/基礎知識 DNS/用語

4.2. その他の話題

  1. 逆引き
  2. DNSSEC
  3. トリビアなど http://www.slideshare.net/OrangeMorishita/20111029-part2dns

4.3. 感想

インターネット上ではもっとも重要なサービスでありながら、 まったく理解されていないといえるサービス

コメントをお願いします。

4.4. 参考リンク

/bookmark