使用dnsmasq快速搭建内网DNS
背景介绍
公司有一批测试服务器,之间希望通过自定义的域名进行访问,这样比较方便,但每个人每台机器都维护一个hosts的话会非常麻烦,于是想搭建一个内部的DNS服务器,对自定义的域名进行解析,同时缓存公网的域名。
首先,向导的DNS服务器肯定是bind9,但所谓杀鸡焉用牛刀,并且bind9的配置和后期维护都是比较麻烦的,而内网这种测试环境又经常需要更新配置。
于是,我们采用了dnsmasq,它简直太简单了,只需要下面几步就完成配置了。
1. 安装dnsmasq
$ sudo apt-get install dnsmasq
2. 添加域名解析记录
$ sudo vim /etc/hosts
192.168.10.10 hadoop-master.heylinux.com
192.168.10.11 hadoop-node-1.heylinux.com
3. 配置上级DNS服务器地址
$ sudo vim /etc/resolv.conf
nameserver 61.139.2.69
4. 重启DNS服务
$ sudo /etc/init.d/dnsmasq restart
5. 配置客户端,填入dnsmasq所在地址
$ sudo vim /etc/resolv.conf
nameserver 192.168.10.5
6. 测试内网DNS
$ ping hadoop-master.heylinux.com
7. 测试反解析
$ dig PTR 10.10.168.192.in-addr.arpa.
dnsmasq默认使用了/etc/hosts和/etc/resolv.conf,这样DNS本机也可以共享这些配置,但如果想要分开专门进行维护的话,可以在/etc/dnsmasq.conf中指定。
dnsmasq默认还集成了DHCP与TFTP服务器,默认如果不配置的话服务不会启动。
dnsmasq的优点在于快捷方便并易于维护,如果想实现比如多IP轮询,根据IP源做智能解析等高级功能,毫无疑问,安心上bind9吧。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通