NSD - Name Server Daemon
■ このスレッドは過去ログ倉庫に格納されています
NSDはコンテンツサーバに特化した高速軽量なDNSサーバです。 本家 http://www.nlnetlabs.nl/nsd/ JPRS DNS関連技術情報 http://jprs.jp/tech/ BIND, djbdns NSD の比較 ●DNSコンテンツサーバの起動 −BIND 9: テキストベース、オンメモリ −djbdns: バイナリデータベース、ディスク上 −NSD: バイナリデータベース、オンメモリ ●複数のDNSサーバ間におけるデータの同期 −BIND 9: テキスト読み込み-NOTIFY-IXFR −djbdns: バイナリデータベースを直接同期 −NSD: コンパイル-バイナリ読み込み-NOTIFY-AXFR ●glueの取り扱いの違い −BIND 9, NSD: glueはglueとしてのみ取り扱う −djbdns, BIND 8: 下位ゾーンのAなら、単独でも取り扱う ●権限を持たないゾーンに対する問い合わせ −BIND 9: クライアントに(とりあえず)ヒントを出してみる −BIND 8: ヒントを出した上で、Aも教えてみる −djbdns: 余計なことは一切しない −NSD: 自分が管理していないものは返せないので、SERVFAILにする 基本設定は/etc/nsd/nsdc.conf マスターゾーンファイルの定義は/etc/nsd/nsd.zones 例) ; Zone Name Master zone file name zone bluesky.com primary/bluesky.com zone greysky.com secondary/greysky.com masters 10.1.1.1 1行目はプライマリDNSの場合。2行目はセカンダリDNSの場合。 一番最初の欄は"zone"でなければならない。"cache"は廃止。 二番目の欄はゾーンの名前で三番目の欄がゾーンファイルのPATH。 AXFRを使用する場合には"masters"の後にマスターサーバのIPを列記する。 それぞれのマスターゾーンファイルの書き方は、RFC1035の"5. MASTER FILES"(BINDと同じ)。 その他の特徴 ・IPv6標準サポート(added by itojun) ・DNSSECはexperimental ・ルートネームサーバにも使われている ・FreeBSD, Linux, Solaris, Tru64, HP-UX, MacOS X などをサポート ・IXFR(差分ゾーン転送)、キャッシュサーバ、ラウンドロビン、IN以外のクラスは未サポート。 >>6 まだ運用はしてないけど、とりあえずFreeBSDのportsからインストールしてみた。 インストールに関しては問題なし。 mmapは未サポートのオプションなので有効化しない。(普通はたぶんallocが使われるらしい?!) BINDからの移行の場合はnamed.confを読み込んで設定をインポートできるみたいだけど、 うちはdjbdnsだからゾーンファイルは書き直し。 ちなみに、ゾーン転送を誰にも許可しない場合はAXFRをコンパイルオプションで無効化しておく。 さもなくばtcp_wrapperでアクセス制限するらしい。 設定周りは非変態的で個人的には好感触。 >>3 > ●glueの取り扱いの違い > −BIND 9, NSD: glueはglueとしてのみ取り扱う > −djbdns, BIND 8: 下位ゾーンのAなら、単独でも取り扱う 解説キボンヌ >>8 サブドメインの委譲などで、NSレコードの内容が自ドメイン(ゾーン内)のものではない場合、 本来は権限外だけどAレコード(IPアドレス)もついでに教えてあげるのがglue。 そうしないとたらいまわしにされて目的のIPアドレスにたどり着けない可能性があるから。 で、BIND9,NSDの場合はNSレコードを問い合わせた場合のみ、glueのAレコードを答える。 djbdns,BIND8は、そのAレコードを直接問い合わせた場合でも答えちゃう。 まともなリゾルバはそんな問い合わせをしないはずなので運用上の実害はない。 cdbってmmapしてた気がするけどディスク上になるの? >>11 mmapはファイルをマップしてメモリであるかのように扱うということだから、 RAM上に展開されてるかどうかはOS任せで保証の限りじゃないというかケースバイケースでは? mmapの場合は他プロセスによってデータファイルが更新されても明示的に再読み込みする必要がない。 だからrsyncでの同期が出来る。 NSDがmmap使ってないのはパフォーマンス上の理由ではなくて、うまく安定動作させられなかったから塩漬けしただけみたい。 > mmapの場合は他プロセスによってデータファイルが更新されても明示的に再読み込みする必要がない。 そうなの? よくわかんないけど tinydnsというか cdbの場合はいちいち開き直してるよ。 http://djbdns.qmail.jp/performance/ > 問い合わせごとにcdbファイルをopen,mmapしていますが、この処理を省略したものを作って測定してみると、 > 12000 query/秒で動作します。[データベースを更新する度に再起動する必要があります。] >>14 djbdnsの中身はあまり知らないので勘違いしてるかも。 毎回openしなおしてるということなら、djbdnsがmmap使ってるのは、 単にそれがlibcじゃなくてシステムコールだからかもね。 > 単にそれがlibcじゃなくてシステムコールだからかもね。 よくわかんないけどメモリ管理しなくていいからじゃないの? あと、現実問題 mmapでも一度舐ればメモリに入る気がする。 逆に全データをメモリに置くためのコストは問題にならないのかな? まあ DNSにあまり関係ないしどうでもいいんだけど。 >>16 > 逆に全データをメモリに置くためのコストは問題にならないのかな? たまにしか問い合わせされない大量のレコードがあるような場合には、 PowerDNSみたいなRDBMS使うタイプのほうが向いてるかもね。 tinydnsからNSDに移行してみました。よさげ。 FreeBSDのPortsから入れた場合は、 /etc/rc.conf に nsd_enable="YES" nsd_flags="(起動時オプション)" を書くらしい。 NSDと一緒に使うのによさげなDNSキャッシュサーバは何かある? おお,NSDなスレが!! 漏れ7ドメインくらいの primary 鯖で運用してみてる primary としてはまず問題ない. BIND-8 からの 移行も簡単だったし,負荷も全然問題ない. secondary として運用するには nofity 受けて, 自動的に,update -> rebuild -> reload してくれる 仕組みがないと辛い. cron で回すとどうしても タイムラグが出ちゃう 当分 nsd (primary), bind8(secondary) で運用予定 >>20 どうせキャッシュによるタイムラグのほうが大きいんだから、気にしない、というのはだめ? >>19 当面はdjbのdnscacheかな。IPv6があれだけど。 NSD 2.1.3 released!!! http://www.nlnetlabs.nl/nsd/ バグフィックス中心みたいです。 >>32 信者はしょうがない djbtools は信者には使いやすく,それ以外の人には使いにくい NSDはpostfix同様にまた〜りで結構 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる