1、安装dnsmasq的目的
能够在客户端缓存曾经查询过的域名解析。
试想:如果一台客户机要查询一条域名解析纪录,那么它就需要向它所设定的DNS服务器发送请求,那台DNS服务器将不论以何种形式得来的信息(可能是自己本身就知道的信息,或者是向别的DNS服务器(权威DNS服务器)查询得到的信息)反馈给客户机,并在自己这边留下缓存(以TTL为缓存的生存时间),下次再有客户机查询这条纪录的时候,如果还在生存期内,就可以直接将结果反馈给查询的客户机。那么客户机自己能不能够实现对曾经查询过的纪录有一个缓存呢?下次访问的时候不仅可以提高查询的效率,也可以减轻DNS服务器的访问压力,一举两得!
2、安装、配置dnsmasq
(1)安装:yum安装即可 (下面 图示yum安装的所有文件)
(2)配置
对dnsmasq主配置文件进行如下配置
[[email protected] Desktop]# vim /etc/dnsmasq.conf
#打开日志功能
log-queries
log-facility=/var/log/dnsmasq
listen-address=127.0.0.1
bind-interfaces
no-hosts
all-servers
设置本机的上级权威DNS
[[email protected] Desktop]# vim /etc/resolv.conf
options timeout:1
search ns1.test.local
nameserver 127.0.0.1
nameserver 192.168.250.128 (搭了dns服务的IP)
3、测试
方法:在一台机器上搭建DNS服务,一台主机部署dnsmasq服务,然后用查看日志的方式来进行验证dnsmasq的功能;
基本思路:第一次dig一个域名的时候,主机肯定是要向自己的权威DNS服务器发送请求以得到对应的IP,然后就可以将得到的信息缓存在本地的dnsmasq,第二次dig同一个域名的时候,就可以直接从本地的dnsmasq缓存中得到(日志中就会有更新纪录),就不需要向DNS服务器发送请求咯!
PS:注意缓存的TTL哦
(1)清空缓存
# rndc flush #清理BIND服务器上的缓存
# /etc/init.d/dnsmasq restar #清理用dnsmasq实现的DNS服务器功能的缓存
(2)digDNS服务器上的一个域名dnsmasq的日志
第一次dig
第二次dig