安装djbdns优化qmail邮件系统发送邮件速度

    Qmail邮件系统在给具有多条MX的大型站点发送邮件的时候会报下面的错误:delivery 55371: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/,在qmail的官方网站上面了解到通过安装djbdns可以加速DNS解析速度,提高qmail邮件的发送速度和效率,下面是安装djbdns详细过程。

1.安装djbdns,在http://cr.yp.to/djbdns/djbdns-1.05.tar.gz可以下载该软件包。

[root@mail qmail]#tar -zxvf djbdns-1.05.tar.gz

[root@mail qmail]#cd djbdns-1.05

在Centos上面make之前,先在djbdns-1.05目录执行下面的命令:

[root@mail djbdns-1.05]# echo gcc -O2 -include /usr/include/errno.h > conf-cc(否则会报错)

[root@mail djbdns-1.05]# make

[root@mail djbdns-1.05]# make setup check

安装完成后,可以在/usr/local/bin的目录下看到如dnscache,tinydns等程序。

2.建立djbdns的配置文件。

[root@mail djbdns-1.05]# makedir -p /etc/dnscache

[root@mail djbdns-1.05]# dnscache-conf nobody nobody /etc/dnscache 127.0.0.1

[root@mail djbdns-1.05]# ln -s /etc/dnscache /service

[root@mail djbdns-1.05]# svstat /service/dnscache  (启动服务)

3.查看djbdns服务,如果出现127.0.0.1:53端口在说明配置成功。

[root@mail ~]# netstat -antl |grep LISTEN |grep "53"

tcp      0    0 127.0.0.1:53             0.0.0.0:*       LISTEN          

4.修改DNS配置文件,在/etc/resolv.conf下面添加nameserver 127.0.0.1,推荐放在其它nameserver前面,这样DNS解析的时候会优先查找DNS缓存。

5.用dig 命令测试www.google.com.cn,第一次解析是通过互联网上面的DNS服务器进行解析www.google.com.cn,整个解析过程用了181毫秒。

 6.当用dig命令在此解析www.google.com.cn域名时,服务器会直接调用本机的DNS缓存记录,DNS解析效率大大提升,几乎在瞬间就可以完成。

7.通过nslookup命令可以看到,当第二次解析www.google.com.cn域名的时候,是通过127.0.0.1,即本地DNS缓存返回的主机记录。

8.默认djbdns使用1MB的内存作为它的缓存空间,通过下面的命令可以调整缓存空间为100MB,然后重启dnscache即可。
 echo 100000000 > /service/dnscache/env/CACHESIZE
 echo 104857600 > /service/dnscache/env/DATALIMIT
 svc -t /service/dnscache    #重启dnscache服务
9.查看dnscache服务运行状态。
[root@mail ~]# svstat /service/dnscache/
/service/dnscache/: up (pid 19693) 7945 seconds
10.通过tail -f /etc/dnscache/log/main/current查看DNS缓存日志。

11.刷新Dnscache缓存。
有时候互联网上的DNS记录已经发生改变了,而本地DNS缓存还是旧的,可用如下命令来刷新Dnscache。
[root@mail ~]# /usr/bin/svc -t /service/dnscache
通过crontab定期自动刷新Dnscache,脚本内容如下:
[root@mail ~]# vim /root/sh/flush_dns.sh
#!/bin/bash
/usr/bin/svc -t /service/dnscache
[root@mail ~]# chmod o+x /root/sh/dns_flush.sh
添加crontab,每天凌晨自动执行。
[root@mail ~]# crontab -e
00 00 * * * /root/flush_dns.sh

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值