2006年12月28日

tinydnsにおけるRRのテストとdata.cdbのデプロイ

livedoorClipに登録 | このエントリーをはてなブックマークに追加 | del.icio.usに登録 | MM/Memoに登録

tinydnsのdata.cdbのRR確認方法の続編

makeを実行してしまうとdata.cdbがtinydnsに反映されてしまう。
反映する前にdata.cdbのRRを確認するにはtinydns-getを使うと言う
エントリが前回の物。テスト方法を具体的にまとめてみた。
これは実際に自分が使っているテスト方法。



■前提条件
・/etc/tinydnsをディレクトリとして指定し、tinydns-confを実行済みである
・zone情報はドメイン名ごとに1ファイルで管理している



■準備作業

▼テストディレクトリ

$ cd /etc/tinydns/root/; pwd
/etc/tinydns/root
$ sudo mkdir test

$ cd test; pwd
/etc/tinydns/root/test
$ sudo ln -s ${repository}/ZONE/ ./.


▼Makefile書き替え

$ sudo vi Makefile
$ cat Makefile



all:
@echo You must change directory: ./test/


この様にダミーのMakefileに置き換えてしまう


▼testディレクトリ用Makefile作成

$ cd test; pwd
$ sudo vi Makefile
$ cat Makefile


DATASRC=ZONE/domain/* ZONE/in-addr/*

all: build
@echo $@ done.

build: data.cdb
@echo $@ done.

deploy: build
@echo $@
cp data data.cdb ../
@echo $@ done.

clean:
@echo $@
@rm data
@echo $@ done.

data.cdb: data
@echo $@
/usr/bin/tinydns-data
@echo $@ done.

data: $(DATASRC)
@echo $@
for x in $(DATASRC); do \
test -f "$$x" && egrep -v '^#|^$$' $$x; \
done | sort | uniq > data
@echo $@ done.


■テスト

▼フロー
1. /etc/tinydns/root/test/にてdata,data.cdbの生成
2. /etc/tinydns/root/test/にてdata.cdbをtinydns-getで確認
3. テストして問題が無ければdata,data.cdbを/etc/tinydns/root/にデプロイ

▼作業例

$ cd /etc/tinydns/root/test/; pwd
/etc/tinydns/root/test

$ sudo make build
$ tinydns-get any example.com



$ diff <(dnsq any example.com 192.0.2.1) <(tinydns-get any example.com)
$ sudo make deploy
$ diff <(dnsq any example.com 192.0.2.1) <(tinydns-get any example.com)



トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔