株式会社技術評論社様のご厚意により,
書籍 "BIND 9によるDNSサーバ構築"
をブックレビューコーナーにご献本いただきました.
この本のレビューをして頂くべく,
Linux Users ML
や本サイトにおいて公募を行い,
これにご希望頂いた方々より感想などをレビュー記事にまとめていただきました.
ここに, レビューアの方々から寄せられたレビュー記事を公開します. (原稿到着順)
技術評論社様およびレビューアの皆様のご厚意に感謝いたします.
なお, 以下のレビューは初版を対象としています.
DNS はご存知のようにインターネットの名前解決という重要な機能を果たしています. Web の閲覧やメールの送信などの前提を構成する仕組みとなっているので, DNS が機能しないとメールも Web も見れないということになります.
ただし普段インターネットを利用するにあたり, 名前解決がどうなっているか, どのように通信が行なわれているのかはあまり気にせずに利用されている方が多いと思います.
私自身も人に対して DNS の仕組みを説明する機会が多いのですが, DNS という名前自体は誰もが知っていますが, 背後で動いている仕組みについて正確に把握している人がいないことを実感しています. DNS の教科書としてはオライリーの『DNS&BIND』が有名ですが, 書籍の厚さや内容の詳細度からいって初級者に『DNS&BIND』を薦めることが出来ません.
『BIND 9 による DNS サーバ構築』は BIND9 を元にネームサーバをいかに安全・適切に構築するかについてが主題となっています. それだけでなく, その前提となる DNS の全体的な仕組み・名前解決の仕組みにも十分な説明のボリュームが割かれています. また, 分かりづらいドメイン名の取得の流れについても, 特定のレジストラをもちいて説明がされているため, ネームサーバの構築→ドメインの取得→ネームサーバーの設定・チューニングについて この一冊で全体像が学べるようになっています. 加えて, DNS に関してだけでなく, インターネット全体で最近問題が大きくなりつつある SPAM に関しても, DomainKeys と SPF を用いてネームサーバとしての SPAM 対策についても, 実際の設定方法を交えて説明されていることに感心いたしました.
言葉の使い方の問題になりますので, 著者の好み理解のしやすさかもしれませんが, 名前解決に関して「スタブリゾルバ」「フルサービスリゾルバ」という用語で説明をされていた点が気になりました. 最近では「リゾルバ」= 本書で言う「スタブリゾルバ」, 「キャッシュネームサーバー」= 本書で言う「フルサービスリゾルバ」の名称で説明されることが多いように思います. 本書の中で「コンテンツネームサーバ」の用語が説明されることがなかったため, 「ネームサーバの中には他に名前解決を依頼するのみのネームサーバーと実際にゾーン情報をもったネームサーバーがある」 ということが少し分かりづらかったのでは? と思いました.
巻末には named.conf のリファレンスもついていますので, ネームサーバーの設定を変更しようと思ったとき, あれあの記述なんだっけといった場合にも役立つと思います. こうした技術書は内容が細かくなるのでどうしても, 難しくなり易いと思いますが, 初級者から中級者までをカバーできる良書だと思います. また, 技術書はどうしても内容が厚くなりすぎて, 本自体が分厚く・重くなると思います. 本書はサイズも小さく・軽く, 鞄の中に入れて持ち歩いても苦になりません. 持ち歩けない本は書棚に飾っておくしかないことを考えると, 読みやすい書籍だと思います.
本書は DNS サーバの運用に迫られている人, なかでも DNS サーバのインストールが初めてという読者, もしくは, インストールしたことはあるがまだ経験が浅いという読者を対象に DNS の仕組み, 構造, 設定, 動作検証, セキュリティを網羅した DNS サーバ構築のための良書である.
過去にも DNS の書籍は数多く出版されてきてはいるが, 本書では DNS の要点をうまくまとめ, 文章も長すぎず, 比較的短時間で DNS の設定と運用を学ぶことができるようになっている.
また, 取り上げられた環境が BIND 9 であること, OS が CentOS であることは, 現時点での入手容易性や OS の使用用途という面からも入門に適していると考えられる.
前半部分は DNS やドメインの基礎知識を解説する. 知っていると思っても案外と不明瞭な部分が多い DNS やドメインを効率的に解説し, 経験を持つ読者に対しても気付きを与えることに成功している. これに続き, 設定ファイル named.conf や ゾーンファイル, A レコードや MX レコードなど, 各種レコードの解説を行う. 中盤まで読破すればインターネット向けの設定は一通りできるようになる.
本書で特徴的なのは, あえてイントラネット向けに DNS を設定し, キャッシュサーバとしての利用, フォワード設定, スレーブサーバ設定, ゾーン転送の解説などにも取り組んでいることである. これにより, DNS の利用範囲を広げつつ, インターネット向けの DNS では検証が難しい部分も学習を容易としている.
セキュリティパートでは SPAM 対策として, DomainKeys および SPF によるメール署名とアドレス偽装防止を解説する. DNS サーバだけで提供される機能ではないが, トピックとして提供されている点は評価されるべきである. また, 自サーバのセキュリティ上のチェック項目も説明されており, 公開前に何を確認すべきか把握できるようになっている.
本書は DNS の入門者, 経験はあっても復習を要する読者などを対象としつつも, 決して Linux の初心者を対象としたものではない. よって細かい OS 操作の解説などは期待しないほうがよい. その代わり要点に絞った解説に成功している. 本格的なシステム管理者として DNS を学ぶのであればより詳細な情報に頼るのが適切であるが, 値段も手頃であり, DNS の入門書としてお勧めできる.
尚、書籍としての装丁はコンパクトであり, 電車での通勤時にも充分読むことが可能であった.
この本を読んで, 各解説の要所に図が適度に散りばめられていて理解を深めやすい本だな, と思いました. 簡単な論理図がほとんどですが, 各解説の理解を深めるには十分な内容です.
それらの図を有効に使い, この本は DNS の基礎知識, BIND の基本的な設定, 実践に沿った設定, そして応用を丁寧に解説しています. これから DNS/BIND の勉強をしようと思っている方や, DNS/BIND の事は一通り分かっているけど更に理解を深めたいと思っている方にお勧めの 1 冊です.
第 3 章「ごく基礎的な DNS サーバを構築する」にはドメインの取得, OS (CentOS) と BIND のインストール, BIND の設定, そして第 4 章「動作検証」という流れで BIND をとりあえず動作させるまでの手順が丁寧に解説してあります. DNS サーバの構築を任された DNS 新人さんにはピッタリかもしれません.
しかしドメインの取得という作業は, DNS 新人さんが行う機会はあまり多くはないでしょう. そんな時は第 6 章「イントラネットリゾルバ DNS サーバ」と 第 7 章「イントラネットサーバ」から勉強される事をお勧めします. いずれもイントラネット内に DNS サーバを置き, イントラネット内のコンピュータに DNS サービスを提供するケースを想定した解説となっています.
その辺に転がっている中古のコンピュータに Linux と BIND をインストールして, 手元の Windows PC の TCP/IP の設定で DNS の欄に自分が作った DNS サーバの IP アドレスを入れて「おっ, 動いた動いた.」と喜ぶと共に BIND の動きを少しずつ理解できるようになるのではないでしょうか.
BIND の設定は一通り出来る, という方にも第 5 章「インターネット DNS サーバの応用」や第 4 部「応用編」にはその表題通り, BIND の設定に関する応用が解説してあり, その一つ一つを読めば今まで知らなかった, でも DNS の運用には欠かせない設定が見つかるかもしれません. もちろん, DNS の基本的な事を再度勉強しなおす意味でもお勧めです.
SOA レコードのシリアルナンバーを誤って大きな値にしてしまった場合の対処法や, スタブリゾルバとフルサービスリゾルバという用語の違いなど, 私は私が今まで知らなかった事をこの本を通して知る事が出来ました.
この本の中で nslookup コマンドに関する解説はほとんどありません. DNS 問い合わせツールとしては dig による解説がほとんどです. nslookup の使用はあまり推奨されなくなったとはいえ, Windows に dig コマンドはデフォルトでは入っていません. ケーススタディに沿って DNS の勉強を行う際, Windows から問い合わせのテストをする場合の事を考えて, nslookup に関する解説も多く入れていただきたいと思いました.
第 8 章「BIND で行う迷惑メール対策」は, DomainKeys と SPF の技術を使った迷惑メール対策に関する解説となっています. 仕組みや設定方法など他の章と同様丁寧に書かれてありますが, 導入するに当たっての注意点が一切書かれてありません. DomainKeys と SPF を導入することにより, 正常にメールが届かなくなるトラブルもあるはずです. そのような注意点を記述しておく事で, 導入時のトラブルを未然に防ぎやすくするのではないかと思いました.
また, この第 8 章の内容は, 技術評論社から出ている Software Design 誌 2007 年 2 月号の特集 「BIND ネームサーバ」の 4 章「BIND 9 をセキュアに! DNS サーバのセキュリティ対策 (野津新)」と全くと言っていいほど同じ内容です. 出版社も著者も同じですのであまり文句も言えませんが, 同時期に違う書籍として出す以上もう少し変化を付けていただきたいものです.
第 8 章「BIND で行う迷惑メール対策」は他の迷惑メールに関して解説されている書籍も合わせて読むことをお勧めします. それ以外に関しては, この本を DNS/BIND の教科書として勉強する事で, 着実に自分のものになっていくと思います.
DNS サーバは一度設定してしまえばゾーンファイルのメンテナンス以外設定の見直しなどほとんど行われない事が多いと思います. この本を読んで, 私は私自身が管理する DNS サーバに関して「一度設定を見直してみようかな.」という気にさせられました.