X



NSD - Name Server Daemon
■ このスレッドは過去ログ倉庫に格納されています
0003名無しさん@お腹いっぱい。
垢版 |
NGNG
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にする
0004名無しさん@お腹いっぱい。
垢版 |
NGNG
基本設定は/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と同じ)。
0005名無しさん@お腹いっぱい。
垢版 |
NGNG
その他の特徴
・IPv6標準サポート(added by itojun)
・DNSSECはexperimental
・ルートネームサーバにも使われている
・FreeBSD, Linux, Solaris, Tru64, HP-UX, MacOS X などをサポート
・IXFR(差分ゾーン転送)、キャッシュサーバ、ラウンドロビン、IN以外のクラスは未サポート。
0007名無しさん@お腹いっぱい。
垢版 |
NGNG
>>6
まだ運用はしてないけど、とりあえずFreeBSDのportsからインストールしてみた。
インストールに関しては問題なし。
mmapは未サポートのオプションなので有効化しない。(普通はたぶんallocが使われるらしい?!)
BINDからの移行の場合はnamed.confを読み込んで設定をインポートできるみたいだけど、
うちはdjbdnsだからゾーンファイルは書き直し。

ちなみに、ゾーン転送を誰にも許可しない場合はAXFRをコンパイルオプションで無効化しておく。
さもなくばtcp_wrapperでアクセス制限するらしい。
設定周りは非変態的で個人的には好感触。
0008名無しさん@お腹いっぱい。
垢版 |
NGNG
>>3
> ●glueの取り扱いの違い
> −BIND 9, NSD: glueはglueとしてのみ取り扱う
> −djbdns, BIND 8: 下位ゾーンのAなら、単独でも取り扱う

解説キボンヌ
0010名無しさん@お腹いっぱい。
垢版 |
NGNG
>>8
サブドメインの委譲などで、NSレコードの内容が自ドメイン(ゾーン内)のものではない場合、
本来は権限外だけどAレコード(IPアドレス)もついでに教えてあげるのがglue。
そうしないとたらいまわしにされて目的のIPアドレスにたどり着けない可能性があるから。

で、BIND9,NSDの場合はNSレコードを問い合わせた場合のみ、glueのAレコードを答える。
djbdns,BIND8は、そのAレコードを直接問い合わせた場合でも答えちゃう。

まともなリゾルバはそんな問い合わせをしないはずなので運用上の実害はない。
0012名無しさん@お腹いっぱい。
垢版 |
NGNG
>>11
mmapはファイルをマップしてメモリであるかのように扱うということだから、
RAM上に展開されてるかどうかはOS任せで保証の限りじゃないというかケースバイケースでは?
0013名無しさん@お腹いっぱい。
垢版 |
NGNG
mmapの場合は他プロセスによってデータファイルが更新されても明示的に再読み込みする必要がない。
だからrsyncでの同期が出来る。
NSDがmmap使ってないのはパフォーマンス上の理由ではなくて、うまく安定動作させられなかったから塩漬けしただけみたい。
0014名無しさん@お腹いっぱい。
垢版 |
NGNG
> mmapの場合は他プロセスによってデータファイルが更新されても明示的に再読み込みする必要がない。
そうなの? よくわかんないけど tinydnsというか cdbの場合はいちいち開き直してるよ。

http://djbdns.qmail.jp/performance/
> 問い合わせごとにcdbファイルをopen,mmapしていますが、この処理を省略したものを作って測定してみると、
> 12000 query/秒で動作します。[データベースを更新する度に再起動する必要があります。]
001513
垢版 |
NGNG
>>14
djbdnsの中身はあまり知らないので勘違いしてるかも。
毎回openしなおしてるということなら、djbdnsがmmap使ってるのは、
単にそれがlibcじゃなくてシステムコールだからかもね。
0016名無しさん@お腹いっぱい。
垢版 |
NGNG
> 単にそれがlibcじゃなくてシステムコールだからかもね。
よくわかんないけどメモリ管理しなくていいからじゃないの?
あと、現実問題 mmapでも一度舐ればメモリに入る気がする。
逆に全データをメモリに置くためのコストは問題にならないのかな?
まあ DNSにあまり関係ないしどうでもいいんだけど。
001713
垢版 |
NGNG
>>16
> 逆に全データをメモリに置くためのコストは問題にならないのかな?
たまにしか問い合わせされない大量のレコードがあるような場合には、
PowerDNSみたいなRDBMS使うタイプのほうが向いてるかもね。
0018名無しさん@お腹いっぱい。
垢版 |
NGNG
tinydnsからNSDに移行してみました。よさげ。

FreeBSDのPortsから入れた場合は、
/etc/rc.conf に
 nsd_enable="YES"
 nsd_flags="(起動時オプション)"
を書くらしい。
0020名無しさん@お腹いっぱい。
垢版 |
NGNG
おお,NSDなスレが!!

漏れ7ドメインくらいの primary 鯖で運用してみてる

primary としてはまず問題ない. BIND-8 からの
移行も簡単だったし,負荷も全然問題ない.

secondary として運用するには nofity 受けて,
自動的に,update -> rebuild -> reload してくれる
仕組みがないと辛い. cron で回すとどうしても
タイムラグが出ちゃう

当分 nsd (primary), bind8(secondary) で運用予定
0023名無しさん@お腹いっぱい。
垢版 |
NGNG
今のところ問題なく動いてくれてるみたいですよ。
0027名無しさん@お腹いっぱい。
垢版 |
NGNG
NSD 2.1.4 age
0028名無しさん@お腹いっぱい。
垢版 |
NGNG
NSD 2.1.5 age
0029名無しさん@お腹いっぱい。
垢版 |
05/01/21 11:05:50
NSD 2.2.0 age
0031名無しさん@お腹いっぱい。
垢版 |
05/02/22 13:30:28
NSD 2.2.1 age
0036名無しさん@お腹いっぱい。
垢版 |
2005/05/03(火) 23:58:35
NSD 2.3.0 age
0037名無しさん@お腹いっぱい。
垢版 |
2005/09/01(木) 00:04:06
NSD 2.3.1 age
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況