qmailの受信が遅い 原因:djbdnsのdnscacheの逆引き?
この数年まったく問題なく、動き続けていたメールサーバが、この数日で受信(pop3)での接続が、極端に遅くなってしました。
通常メールが無ければ瞬時に終わるが、1分程度かかってします。
何とか受信ができるが、このままほっとくわけにはいかず、復旧作業を行った。
環境は、qmailのtcpserverからの、qmail-popup。
/var/qmail/bin/qmail-popup XXXX.XX.XX /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir
ステップ1
同じサーバ上で動作している、DNSのキャッシュサーバ(dnscache)の再起動
※dnscacheは、djbdns を利用
結果:変わらず(遅い)
ステップ2
vchkpw は、MySQL上のアカウントチェックを行っているため、MySQLを再起動
結果:変わらず(遅い)
ステップ3
supervise でチェックをしている、/usr/bin/tcpserver -v -R -c 200 0 110 /var/qmail/bin/qmail-popup XXXX.XX.XX /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir
を再起動
結果:変わらず(遅い)
?? 一体どこが悪いのか ??
確認1
/var/log/maillogのvchkpw-pop3のlogin情報を確認
クライアントからメールを読みにいっても、ログ出力がされない。と思いきや、1分後に”login success”!!
予測:アカウントチェック以前が遅い!!
確認2
※nslookup コマンドで、IPの逆引きを行う
結果:遅い!!
わかった!! pop3にアクセスされたIPの逆引きが遅い!!
でも、djbdnsのdnscacheは正常に動作して、正引きは問題なく高速である。
なぜ???? もう、数年使っているのに。その間何もしていないが。
調べようにも、情報がない!
で、本当にそうなのか確認のために、djbdnsのdnscacheは使わずに、GoogleのパブリックDNS(8.8.8.8/8.8.4.4)を使って見ることに。
/etc/resolv.conf
search YY.YY.YY
nameserver 8.8.8.8 ※追加
nameserver 8.8.4.4 ※追加
nameserver 127.0.0.1
その瞬間、瞬間にPOP3の接続ができる。正常な状態に戻る!!
結論:djbdnsのdnscacheの逆引きが正常に動作しない!!
なぜ??
いったん、このままGoogleのパブリックDNSを使って運用を開始する。