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.

Disable nslookup saat SMTP Qmail