Secara default, Qmail akan melakukan DNS query/lookup saat suatu mengirimkan email atau koneksi SMTP. Secara default juga, Qmail melakukan DNS Query / lookup saat user mengambil email atau melakukan koneksi POP3.
DNS Query ini akan menyebab koneksi SMTP dan POP3 menjadi lambat, apalagi jika terjadi dalam lingkungan LAN (Local Area Network). Dalam LAN, IP dari user menggunakan IP local sehingga reverse DNS akan gagal.
Untuk mengatasi DNS query yang menyebabkan lambatnya pengiriman dan penerimaan email, kita perlu melakukan disable DNS saat koneksi SMTP dan POP3. Dalam lingkungan Qmail yang menggunakan tcpserver kita dapat menambahkan -H -P -R -l 0 tepat pada tcpserver.
Sebagai contoh kita dapat memodifikasi /etc/init.d/qmail-smtpd.init seperti di bawah ini:
start() {
if check; then
echo “$PROG is already running”
else
echo -n “Starting $PROG…”
if [ -e $CDB ]; then
supervise $DIR \
tcpserver -H -P -R -l 0 $VERBOSE -c$CONCURRENT -x $CDB -u$USERID -g$GROUPID 0 $PORT $COMMAND \
2>&1| setuser $LOGUSER accustamp \
| setuser $LOGUSER cyclog $FILESIZE $FILENO $LOGDIR &
else
supervise $DIR \
tcpserver -H -P -R -l 0 $VERBOSE -c$CONCURRENT -u$USERID -g$GROUPID 0 $PORT $COMMAND \
2>&1 | setuser $LOGUSER accustamp \
| setuser $LOGUSER cyclog $FILESIZE $FILENO $LOGDIR &
fi
if [ “$USESUBSYS” = “y” ]; then
touch /var/lock/subsys/$PROG
fi
echo “done”
fi
}
Begitu juga pada /etc/init.d/qmail-pop3d.init
start() {
if check; then
echo “$PROG is already running”
else
echo -n “Starting $PROG…”
if [ -e $CDB ]; then
supervise $DIR \
tcpserver -H -P -R -l 0 $VERBOSE -c$CONCURRENT -x $CDB -u$USERID -g$GROUPID 0 $PORT \
qmail-popup $HOST $CHKPASS $COMMAND Maildir \
2>&1 | setuser $LOGUSER accustamp \
| setuser $LOGUSER cyclog $FILESIZE $FILENO $LOGDIR &
else
supervise $DIR \
tcpserver -H -P -R -l 0 $VERBOSE -c$CONCURRENT -u$USERID -g$GROUPID 0 $PORT \
qmail-popup $HOST $CHKPASS $COMMAND Maildir \
2>&1 | setuser $LOGUSER accustamp \
| setuser $LOGUSER cyclog $FILESIZE $FILENO $LOGDIR &
fi
if [ “$USESUBSYS” = “y” ]; then
touch /var/lock/subsys/$PROG
fi
echo “done”
fi
}
Silahkan restart script tersebut dan silahkan mencoba koneksi. Setelah kita melakukan restart kita dapat menjalankan perintah ‘netstat -n’ untuk melihat koneksi yang terjadi. Jika sebelumnya banyak query ke port 53, maka setelah berhasil mendisable lookup, maka koneksi ke port 53 akan sedikit atau hilang.
Informasi lebih lanjut silahkan mengunjungi:
1. http://www.lifewithqmail.org/lwq.html#smtp-slow .
2. http://cr.yp.to/ucspi-tcp/tcpserver.html .
Kunjungi www.proweb.co.id untuk menambah wawasan anda.