6、dnsmasq

简介:

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,如需转载请自行联系原作者




相关文章
|
弹性计算 运维 监控
ECS资源监控
ECS资源监控涉及CPU、内存、磁盘I/O、网络流量、系统负载和进程的关键指标,通过云服务商控制台、监控服务、API与SDK、运维工具进行实时监控和告警设置。支持历史数据查询、事件监控,以及使用Windows资源监视器和Linux系统工具进行操作系统层面监控。全面监控确保ECS实例稳定运行、资源有效利用和问题及时处理。如需特定云服务商的指导,请询问。
518 3
|
10月前
|
人工智能 数据安全/隐私保护
还在搜 CTF 题库?AiPy本地 AI 助手,一句话处理100 + 题表格题目,秒答理论题超高效
CTF赛前搜题太痛苦?题库杂乱难找,考点难梳理?试试Aipy本地AI助手,秒速检索、分类、答题,准确率100%。一句话指令“回答桌面questions.csv”,高效备战不慌张,赛前冲刺更轻松!
|
11月前
|
安全 Linux iOS开发
Tenable Nessus 10.9.3 (macOS, Linux, Windows) - 漏洞评估解决方案
Tenable Nessus 10.9.3 (macOS, Linux, Windows) - 漏洞评估解决方案
799 0
Tenable Nessus 10.9.3 (macOS, Linux, Windows) - 漏洞评估解决方案
|
人工智能 数据可视化 前端开发
DB-GPT v0.6.0 版本更新,发布六大核心新特性!
DB-GPT v0.6.0 版本已发布,这是一个开源的AI原生数据应用开发框架,带来了多项新特性,包括AWEL协议升级至2.0,支持复杂编排;改进的数据应用创建与生命周期管理,支持多模式构建;GraphRAG增强图社区摘要与混合检索,图索引成本降低50%;丰富的Agent Memory类型;支持Text2NLU与Text2GQL微调;GPT-Vis前端可视化升级。这些更新助力企业快速构建智能数据应用,推动数字化转型。
|
数据采集 前端开发 Java
@ControllerAdvice:你可以没用过,但是不能不了解
`@ControllerAdvice` 是 Spring MVC 中用于定义全局行为的注解,如异常处理、数据绑定和预处理。它从 `@Component` 派生,确保被扫描并纳入容器。`@ExceptionHandler` 用于全局异常处理,提供统一的错误响应。例如,当处理不当的异常时,它能返回友好的错误信息。`@InitBinder` 在数据绑定前对参数进行处理,如格式转换。`@ModelAttribute` 可以用于全局绑定模型属性,如登录用户信息。Spring MVC 通过 `DispatcherServlet` 和 `HandlerAdapter` 在请求处理流程中应用这些全局配置。
1275 3
@ControllerAdvice:你可以没用过,但是不能不了解
|
监控 NoSQL Redis
redis-server --service-install redis.windows.conf --loglevel verbose 命令的作用是什么?
redis-server --service-install redis.windows.conf --loglevel verbose 命令的作用是什么?
1032 3
|
机器学习/深度学习 人工智能 安全
python和Java的区别以及特性
Python:适合快速开发、易于维护、学习成本低、灵活高效。如果你需要快速上手,写脚本、数据处理、做点机器学习,Python就是你的首选。 Java:适合大型项目、企业级应用,性能要求较高的场景。它类型安全、跨平台能力强,而且有丰富的生态,适合更复杂和规模化的开发。
1236 4
|
分布式计算 关系型数据库 MySQL
使用 PySpark 读取csv数据进行分析,将结果数据导入招聘数据
使用 PySpark 读取csv数据进行分析,将结果数据导入招聘数据
484 2
|
前端开发 JavaScript 安全
React与React Native的优缺点
【8月更文挑战第7天】React与React Native的优缺点
685 1
|
XML 监控 安全
OWASP-TOP 10 漏洞概述
OWASP-TOP 10 漏洞是指由开放式Web应用程序安全项目(OWASP)发布的,关于Web应用程序最可能、最常见、最危险的十大安全漏洞的列表。
1790 0