年末年始に実家にいたが特にすることも無いのでbind9をいじってみた。
統計情報を取得するにはrndcコマンドを叩くことでファイルに記録される。
しかし、よくよく見てみるとrndcはリモートから指示できるのに統計結果はnamedが動いているローカルに記録される。
rndcのコマンドが発行されたマシンのファイルに記録されない。なぜか標準出力にもでない。「rndc status」は標準出力にでるのになぜだろう。
しょうがないのでソースコードを見てみたら簡単に機能追加できそうだったので統計情報が標準出力にでるようにしてみた。
年が変わる瞬間にC言語と戯れているなんて思いもよらなかった(プログラミングで200行以上書いたことないし)。
ところでC言語での文字列のコピーするのは何が良いのだろう。bind的にどうかけば良いのかも分からなかったので冗長だけど、元にあったsnprintfを繰り返すことにした。
パッチはこちら
-------rndcを使ってリモートサーバの統計をとっている様子---------
527 blue:takuro /tmp > rndc -c /tmp/rndc.conf rstats
+++ Statistics Dump +++ (1136227922)
success 2
referral 1
nxrrset 0
nxdomain 0
recursion 5
failure 0
--- Statistics Dump --- (1136227922)
528 blue:takuro /tmp >
-------------------------------------------
0 件のコメント:
コメントを投稿