6、dnsmasq

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

1、安装dnsmasq的目的


     能够在客户端缓存曾经查询过的域名解析。

     试想:如果一台客户机要查询一条域名解析纪录,那么它就需要向它所设定的DNS服务器发送请求,那台DNS服务器将不论以何种形式得来的信息(可能是自己本身就知道的信息,或者是向别的DNS服务器(权威DNS服务器)查询得到的信息)反馈给客户机,并在自己这边留下缓存(以TTL为缓存的生存时间),下次再有客户机查询这条纪录的时候,如果还在生存期内,就可以直接将结果反馈给查询的客户机。那么客户机自己能不能够实现对曾经查询过的纪录有一个缓存呢?下次访问的时候不仅可以提高查询的效率,也可以减轻DNS服务器的访问压力,一举两得!


2、安装、配置dnsmasq

(1)安装:yum安装即可 (下面 图示yum安装的所有文件)


    

wKioL1jBAl-yLT3PAAGNv0BUZtU860.png-wh_50


(2)配置

     对dnsmasq主配置文件进行如下配置

     [root@localhost 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

     [root@localhost 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

wKiom1jBAqSTL75OAACBVDbd1cw711.png

第二次dig

wKiom1jBArSTfx6kAAB6wyzDO4k346.png





     本文转自西鼠 51CTO博客,原文链接:http://blog.51cto.com/10630401/1904779,如需转载请自行联系原作者




相关文章
|
6月前
|
域名解析 缓存 网络协议
Dnsmasq的使用
Dnsmasq的使用
129 1
|
域名解析 缓存 网络协议
|
开发工具 git Perl
|
JavaScript 前端开发 Shell
|
JavaScript 前端开发 Shell
|
开发工具
|
网络协议 开发工具