Tips Collection - tinydns


http://quox.org/tips/server/tinydns.html
[ Top > Tips Collection > tinydns ]


tinydnsとは

tinydnsは、djbdnsパッケージに格納されているDNSサーバである。運用にあ たっては、daemontoolsの導入がほぼ前提となっている。

関連: server - daemontools


インストール

以下の記述はdjbdns-1.05のインストール方法である。最新情報は 本家のdjbdnsのインストール方法 を参照されたい。

インストール先は${prefix}で示されている。例えば/usr/localなど、好みに 応じて選択する。

  1. ソースファイル取得

    wgetコマンドなどで djbdns-1.05.tar.gz を取ってくる。

  2. 展開
    % tar xvzf djbdns-1.05.tar.gz
    % cd djbdns-1.05
      
  3. 設定

    インストール先をconf-homeに、コンパイル方法をconf-ccに、リンク方法 をconf-ldに記述する。

  4. Make
    % make
      
  5. インストール
    # make setup check
      

セットアップ
  1. ユーザの作成

    tinydns用のユーザ、tinydnsのログ用のユーザを作成する。djbdnsパッケー ジ推奨のユーザ名は、tinydnsとdnslogである。

  2. ディレクトリの作成

    自動設定コマンドtinydns-confを用いて、svscanに登録するためのディレ クトリを作成する。第1引数にdnscache用のユーザ名、第2引数にログ用ユー ザ名、第3引数にディレクトリ、第4引数にサービスを行う外部インタフェー スのIPアドレスを指定すること。

    # tinydns-conf tinydns dnslog /var/tinydns <ipaddr>
      

    注: /var/tinydnsは私の好みの設定。djbdns推奨は/etc/tinydns。

  3. データの作成

    /var/tinydns/root/data を編集する。直接手で書いてもよいが、簡単なデー タ追加スクリプトが用意されているのでそれを使うとよい。詳細は データ形式の詳細を参照のこと。

    ネームサーバの追加: ./add-ns net.local 192.168.1.1
    ./add-ns 1.168.192.in-addr.arpa 192.168.1.1
    ホストの追加: ./add-host host.net.local 192.168.1.2
    別名の追加: ./add-alias www.net.local 192.168.1.2
    (注意! この別名はCNAMEレコードではなくAレコードになる)
    MXの追加: ./add-mx ms.net.local 192.168.1.3

    編集が終わったら、makeを実行して変更をdata.cdbに反映させる。

  4. 起動

    svscanに起動させ、サービスを開始する。

    # ln -s /var/tinydns /service
      

動作確認

dnsqコマンド、dnsqrコマンドでDNSサーバ、キャッシュサーバ、親ドメイン のDNSサーバなどの動作を確認する。


データ形式

/service/tinydns/root/data は1行に1エントリを記述する。各行は、先頭文 字にデータ種別が、そこから行末までにコロン区切りで種別に応じた情報が 列挙される。行末にコロンが並ぶ場合は省略できる。

以下にデータの種別と書式を示す。

すべての種別に現れる<ttl>は、そのDNSレコードをキャッシュしてよ い秒数を表す。省略すると種別に応じたデフォルト値が用いられる。

<timestamp>と<lo>についてはここでは触れない: 関連リンク先を参照されたい。


設定

関連リンク

Copyright © 2002 Masaki WAKABAYASHI / 若林 正樹.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is here.