Fiddler2を使う その1

HTTP通信の内容をチェックしたい場合には、パケットキャプチャソフトという手もあるけど、Proxy型のチェックソフトを使うと便利。今まで使っていたのは、ieHTTPHeadersというソフト。インストールをするとIEの表示 – エクスプローラーバーに追加されて、表示をさせておけば、ブラウジングした際の通信をみることができる。
ただ、IE7では動作しないというか、出てこないので、IE7のHTTP通信を調べたいときには使えない。同僚がいろいろ調べてくれたところ、Fiddler2というのがあるという情報を得たので、紹介したい。
インストールするとIEのツールメニューに出てくる。.NET Frameworkのインストールが必要なので、インストールしていない状態で起動させようとするとエラー(ダイナミックリンクライブラリ mscoree.dll が指定されたパスに見つかりませんでした)が出るので注意したい。
今後、使い勝手などについてレポートしていきたいと思う。

DNSのTTL

DNSのTTL設定といえば、SOAレコードのTTLだとずっと思っていたのだが、実はSOAレコードのTTLはスレーブDNSサーバーがプライマリDNSサーバーからDNS情報をキャッシュし続ける時間であり、ネガティブキャッシュと呼ばれているそうだ。
実は、それ以外のDNSサーバー(DNSサーバーでなくてもローカルマシンがDNSをキャッシュする場合においても)がDNS情報をキャッシュする時間は、SOAレコードに指定されたTTL時間ではない。
@IT 第2回 すべての基礎、マスター・ゾーンサーバの設定にあるように、zoneファイルの先頭のほうにあるにある$TTL指定がゾーン全体のTTLとなり、レコード個別のTTLも指定可能である。
以上の理由により、サーバー間で引越しをするようなことがあれば、事前にTTLを減らしておいて変更を早く適用できるようにする必要があるが、SOAレコードのTTLだけでなく、$TTLの値も減らしておく必要があるというわけだ。
それでは各端末において、特定のドメインの残りキャッシュ時間を知るためにはどうすればよいか。
Linuxにおいては、digコマンドが利用できるので、以下のようにやると良い。
dig @localhost www.development-network.net a ※localhostにDNSサーバーがたっている場合
※一部省略
;; ANSWER SECTION:
www.development-network.net. 900 IN A 124.98.21.52
ここに 900 という数値があれば、残り900秒でキャッシュが更新されることを示している。何度か実行してみると、900の数値が経過時間分だけ減っていることがわかる。
Windows XPにおいては、ipconfig /displaydns とするとローカルキャッシュの残り時間を知ることが出来る。
www.development-network.net
—————————————-
Record Name . . . . . : www.development-network.net
Record Type . . . . . : 1
Time To Live . . . . : 845
Data Length . . . . . : 4
Section . . . . . . . : Answer
A (Host) Record . . . : 124.98.21.52
ローカルキャッシュがクリアされる条件は、DNSサーバーを変更するか、マシンを再起動するか、ipconfig /flushdnsコマンドが発行されたときである。

qmail+vpopmailで発生したエラー

Uh-oh:_.qmail_has_prog_delivery_but_has_x_bit_set._(#4.7.0)
送信時にこのエラーが発生した。原因は、/home/vpopmail/domains/XXX.co.jp/.qmail-defaultに実行権限があったから。
vchkpw-pop3: autocreate dir errno 13
受信時にこのエラーが発生した。原因は、/home/vpopmail/domainsに実行権限がなかったから。

かな入力

MS-IMEのバーを出して、KANAをクリックすると「あ」が「ア」にかわってしまい、「ア」を「あ」にするとKANAがアクティブになってしまうことがあって、これをKANAがアクティブにならないような状態でひらがな入力にしたい場合には、Alt+かなを押せばよいらしい。
いつも適当にやっていて直ったりするので、勉強になった。

qmail+vpopmail

それ行けLinux~qmail/vpopmail~が非常に参考になるが、一部補足があるので記載を行っておきます。
tar zxvf ucspi-tcp-0.88.tar.gzにてmakeをすると
#cdb.a(cdb.o)(.text+0xda): more undefined references to `errno’ follow とエラーが出るのでパッチを適用するとmakeできるようになる
patch -s < ../ucspi-tcp-glibc.patch
ちなみに、qmailで送信時に421 unable to read controls (#4.3.0)のエラーがSMTPサーバーから返されるようであれば、/var/qmail/controlsディレクトリ内のファイルが正しくない。おそらくqmailのインストールの中でmakeコマンドの後で実行する./config-fast (デフォルトドメイン名)をするのを忘れているので、コマンドを実行すれば解決する。