モーグルとカバとパウダーの日記

モーグルやカバ(EXカービング)山スキー(BC)などがメインの日記でした。今は仕事のコンピュータ系のネタが主になっています。以前はスパム対策関連が多かったのですが最近はディープラーニング関連が多めです。

(途中経過2)rbldnsdを利用して公開DNSBLを立ち上げる

(途中経過)rbldnsdを利用して公開DNSBLを立ち上げる の続き。

ログを見るっていう基本がなってなかった orz ので、ログレベルを上げて再度調査。
BINDを「-d 4」で動かしてログをみる。


他マシンより、digをNSを指定した場合と、しない場合とで打って試す。
以下結果。

> dig @ns.example.jp 1.5.168.192.ip.dnsbl.example.jp

Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: UDP request
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: request is not signed
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: recursion available: approved
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: query
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: query 'ns.example.jp/IN' approved
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: query (cache) approved
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: send
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: sendto
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: senddone
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: next
Jul 18 16:24:42.013 client xxx.xxx.xxx.xxx#62076: endrequest
Jul 18 16:24:42.013 client @0x80cbfc0: udprecv
Jul 18 16:24:42.039 client xxx.xxx.xxx.xxx#62077: UDP request
Jul 18 16:24:42.039 client xxx.xxx.xxx.xxx#62077: request is not signed
Jul 18 16:24:42.039 client xxx.xxx.xxx.xxx#62077: recursion available: approved
Jul 18 16:24:42.039 client xxx.xxx.xxx.xxx#62077: query
Jul 18 16:24:42.039 client xxx.xxx.xxx.xxx#62077: query '1.5.168.192.ip.dnsbl.example.jp/IN' approved
Jul 18 16:24:42.039 client xxx.xxx.xxx.xxx#62077: replace
Jul 18 16:24:42.039 clientmgr @0x80cbbd0: createclients
Jul 18 16:24:42.039 clientmgr @0x80cbbd0: create new
Jul 18 16:24:42.039 client @0x81036e0: create
Jul 18 16:24:42.039 createfetch: 1.5.168.192.ip.dnsbl.example.jp A
Jul 18 16:24:42.039 fctx 0x81016f0: create
Jul 18 16:24:42.040 fctx 0x81016f0: join
Jul 18 16:24:42.040 fetch 0x80fa068 (fctx 0x81016f0): created
Jul 18 16:24:42.040 client @0x81036e0: udprecv
Jul 18 16:24:42.040 fctx 0x81016f0: start
Jul 18 16:24:42.040 fctx 0x81016f0: try
Jul 18 16:24:42.040 fctx 0x81016f0: cancelqueries
Jul 18 16:24:42.040 fctx 0x81016f0: getaddresses
Jul 18 16:24:42.040 fctx 0x81016f0: query
Jul 18 16:24:42.040 resquery 0x8107868 (fctx 0x81016f0): send
Jul 18 16:24:42.040 resquery 0x8107868 (fctx 0x81016f0): sent
Jul 18 16:24:42.040 resquery 0x8107868 (fctx 0x81016f0): senddone
Jul 18 16:24:42.093 resquery 0x8107868 (fctx 0x81016f0): response
Jul 18 16:24:42.093 fctx 0x81016f0: answer_response
Jul 18 16:24:42.093 fctx 0x81016f0: cache_message
Jul 18 16:24:42.093 fctx 0x81016f0: cancelquery
Jul 18 16:24:42.093 fctx 0x81016f0: done
Jul 18 16:24:42.093 fctx 0x81016f0: stopeverything
Jul 18 16:24:42.093 fctx 0x81016f0: cancelqueries
Jul 18 16:24:42.093 fctx 0x81016f0: sendevents
Jul 18 16:24:42.093 fetch 0x80fa068 (fctx 0x81016f0): destroyfetch
Jul 18 16:24:42.093 fctx 0x81016f0: shutdown
Jul 18 16:24:42.094 client xxx.xxx.xxx.xxx#62077: send
Jul 18 16:24:42.094 client xxx.xxx.xxx.xxx#62077: sendto
Jul 18 16:24:42.094 client xxx.xxx.xxx.xxx#62077: senddone
Jul 18 16:24:42.094 client xxx.xxx.xxx.xxx#62077: next
Jul 18 16:24:42.094 client xxx.xxx.xxx.xxx#62077: endrequest
Jul 18 16:24:42.094 fctx 0x81016f0: doshutdown
Jul 18 16:24:42.094 fctx 0x81016f0: stopeverything
Jul 18 16:24:42.094 fctx 0x81016f0: cancelqueries
Jul 18 16:24:42.094 fctx 0x81016f0: destroy

> dig 1.5.168.192.ip.dnsbl.example.jp

Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: UDP request
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: request is not signed
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: recursion available: approved
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: query
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: query '1.5.168.192.ip.dnsbl.example.jp/IN' approved
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: send
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: sendto
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: senddone
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: next
Jul 18 16:24:51.912 client xxx.xxx.xxx.xxx#62076: endrequest
Jul 18 16:24:51.912 client @0x81036e0: udprecv
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: UDP request
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: request is not signed
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: recursion available: approved
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: query
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: query '1.5.168.192.ip.dnsbl.example.jp/IN' approved
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: send
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: sendto
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: senddone
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: next
Jul 18 16:24:52.004 client xxx.xxx.xxx.xxx#62076: endrequest
Jul 18 16:24:52.004 client @0x81036e0: udprecv

比較すると、NSを指定した場合は、queryが発行された後にreplaceが発行され、rbldnsdへの問い合わせが行われていることがわかる。ちなみに一発目のns.example.jpはNS自体を探しにきた応えだと思うので無視して良いだろう。
NSを指定しなかった場合は、queryが発行された後そのままsend、つまり見つからなかったよを返してると考えられる。あと、コマンドは1回なのに、同じ呼び出しが2回行われてるのがちょっと気になる。たぶんタイムアウトで2度呼ばれてるんじゃないか思うんだけど。
というわけで、やっぱりforwardしてくれてないからだと思うのだが、なんでやってくれないのかは不明。
ちなみに、optionでallow-recursion anyしている状況。
うーむ、わからないですわ。