クラスレスネットワークにおけるdjbdns正しい使い方 その3

早速 make

dataファイルの作成が終わったら、
make
をかける。
dataファイルが正しければ、(たいがい間違っててもエラーにならないけど・・・・・)
data.cdb
が、出来る。
これで、名前の公開が、できた!
ところで、dataファイルは、良く見直そうね。(某団体が・・・・・・)

動作確認

注意:nslookupは、使えない。

dnsq という、ツールで調べてうまく答えが返ってきたら成功。
また、インターネットには、DNSの設定をチェックしてくれるページもある。
  checkDNS  DNS report
 (赤い表示が無ければOKだ、ただし、DNS reportは、若干きびし過ぎて回線状態が悪いと赤くなる)
一方、
dnsq any 調べたい名前 サーバーのアドレス でも、調べられる。
dnsq any hasiru.net 219.166.53.194
255 hasiru.net:
188 bytes, 1+5+0+3 records, response, authoritative, noerror
query: 255 hasiru.net
answer: hasiru.net 2560 SOA ns.hasiru.net admin.hasiru.net 2002031501 7200 2048 1048576 2560
answer: hasiru.net 259200 NS ns.hasiru.net
answer: hasiru.net 259200 NS ns2.hasiru.net
answer: hasiru.net 86400 MX 0 ml.hasiru.net
answer: hasiru.net 86400 A 219.166.53.194
additional: ns.hasiru.net 259200 A 219.166.53.194
additional: ns2.hasiru.net 259200 A 219.166.53.195
additional: ml.hasiru.net 86400 A 219.166.53.194
などと、良さげな答えが返ってきたら成功!
他の名前も、
dnsq any www2.hasiru.net 219.166.53.194
255 www2.hasiru.net:
152 bytes, 1+2+2+3 records, response, authoritative, noerror
query: 255 www2.hasiru.net
answer: www2.hasiru.net 86400 MX 0 ml2.hasiru.net
answer: www2.hasiru.net 86400 A 219.166.53.195
authority: hasiru.net 259200 NS ns.hasiru.net
authority: hasiru.net 259200 NS ns2.hasiru.net
additional: ml2.hasiru.net 86400 A 219.166.53.195
additional: ns.hasiru.net 259200 A 219.166.53.194
additional: ns2.hasiru.net 259200 A 219.166.53.195
位でOK.
逆引きも、
dnsq any 192.53.166.219.in-addr.arpa 219.166.53.194
255 192.53.166.219.in-addr.arpa:
164 bytes, 1+3+0+2 records, response, authoritative, noerror
query: 255 192.53.166.219.in-addr.arpa
answer: 192.53.166.219.in-addr.arpa 2560 SOA ns.hasiru.net admin.hasiru.net 2002031501 7200 2048 1048576 2560
answer: 192.53.166.219.in-addr.arpa 259200 NS ns.hasiru.net
answer: 192.53.166.219.in-addr.arpa 259200 NS ns2.hasiru.net
additional: ns.hasiru.net 259200 A 219.166.53.194
additional: ns2.hasiru.net 259200 A 219.166.53.195

dnsq any 194.192.53.166.219.in-addr.arpa 219.166.53.194
255 194.192.53.166.219.in-addr.arpa:
259 bytes, 1+6+2+2 records, response, authoritative, noerror
query: 255 194.192.53.166.219.in-addr.arpa
answer: 194.192.53.166.219.in-addr.arpa 86400 PTR ns.hasiru.net
answer: 194.192.53.166.219.in-addr.arpa 86400 PTR ml.hasiru.net
answer: 194.192.53.166.219.in-addr.arpa 86400 PTR ml.lenin.jp
authority: 192.53.166.219.in-addr.arpa 259200 NS ns.hasiru.net
authority: 192.53.166.219.in-addr.arpa 259200 NS ns2.hasiru.net
additional: ns.hasiru.net 259200 A 219.166.53.194
additional: ns2.hasiru.net 259200 A 219.166.53.195
などと返ってくれば、OK.

セカンダリーサーバーを作る

BINDでは、ゾーン転送という方法で、セカンダリーサーバーを作るが、
djbdnsでは、推奨されていない。
どうしてもやりたい人は、axfrdns-conf axfrdns を使う。
私は見たくも無いので、説明しない、ここを見てください
ゾーン転送は、遅い、危ない、非効率の3拍子そろった昔の産物らしい。
また、プロバイダーは、よく、セカンダリーDNSを、プロバイダー内に、置かせたがるが、これは、一説に
よると、詐欺行為らしい!このページで説明されている。
それでは、どうするか?
まず、サーバーが1台しかない場合は、セカンダリーを作らない。
セカンダリーを作るときは、早い話、data.cdbをコピーして使うのだ!
私の場合は、scp を expectjp で使ってる。(rsyncを使う方法もあるらしい)
怖いので、敢えてパスワードを残した。(うそ!)
まず、dataを編集するユーザーアカウントを作る。
そして、/etc/tinydns/root以下をそのユーザーの持ち物にする。
そして、そのユーザーになる。
次に、SCPDATAというスクリプトをexpectjp用に作成する。
こんな感じで・・・
#!/usr/local/bin/expectjp -f
spawn scp data.cdb srv2.hasiru.net:/etc/tinydns/root/data.cdb.tmp
sleep 1
expect "Password:"
send "pasuwado3\r"
expect eof
spawn ssh srv2.hasiru.net mv /etc/tinydns/root/data.cdb.tmp /etc/tinydns/root/da
ta.cdb
sleep 1
expect "Password:"
send "pasuwado3\r"
expect eof

アクセス権は、700にしよう!
chmod 700 SCPDATA
Makefileは、以下の様に直す。
remote: data.cdb
/etc/tinydns/root/SCPDATA
touch remote
data.cdb: data
/usr/local/bin/tinydns-data
これで、準備OK
セカンダリーDNS用のサーバーに入って、tinydns dnscacheの起動の手順までをやる。
data編集用のユーザーを同じ様に作成して、
/etc/tinydns/root以下をそのユーザーの持ち物にする。
dataファイルを
# Do not edit data on this computer! data.cdb is copied from 219.166.53.194
# The following line protects data.cdb by stopping make.
9

にする・・・・・・・・とdjbは、言っていた。(はい、笑う)
これで、OK
元のDNSサーバーに戻って、
make
セカンダリーDNSサーバーに見事
data.cdb
が複写されれば、成功!!
実は、私は、これがうまくいくまでは、ftpで転送してたのだった。(笑い者)

これで、djbdnsを使って、さらし者にならないサーバーを作成できた。

終わりに

 世の中には、いつかは、自分に返ってくると気付かないで、人のあげ足をとって喜ぶ輩がいる。
D.J.Bernstein教授も、さんざんそういう馬鹿(idiot)どもに、ひどい目にあわされた。

私は、どうか・・・・・・馬鹿かもしれない。

でも、本当に間違っていることは、指摘しないと、世の中は、ちっとも良くならない。
D.J.Bernstein氏のインターネット社会に対する貢献は絶大なものであることは、言うまでもない。
が、狂信者になってはならない。

それにしても、djbdnsは、素晴らしいソフトだ!これは、真実であり何を言っても動かせない!


次回は、qmail の正しい使い方を、論じる。

前へ  トップへ