场景分析:现在有若干个测试系统在内网中,与外网无法直接连接,但是现在非开发人员需要访问测试系统,不想连接vpn和修改本地hosts信息,如何让业务人员便捷的访问测试环境?
DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能 。自己搭建公共DNS更加灵活,如果是在本地搭建,还可以大幅提高解析速度 。
安装DNSmasq#centos安装yum -y install dnsmasq#如果是ubuntu系统apt-get -y install dnsmasq配置DNSmasqDNSmasq配置文件再/etc/dnsmasq.conf,我们需要修改几个参数,分别为:
- resolv-file=/etc/resolv.dnsmasq.conf 这个参数表示 dnsmasq 会从这个指定的文件中寻找上游 dns 服务器
- 取消注释的 strict-order ,表示严格按照 resolv-file 文件中的顺序从上到下进行 DNS 解析, 直到第一个成功解析成功为止
- 注释掉 no-hosts, 默认情况下这是注释掉的, dnsmasq 会首先寻找本地的 hosts 文件再去寻找缓存下来的域名, 最后去上游 dns 服务器寻找.
- 设置 listen-address=127.0.0.1 ,127.0.0.1改成自己服务器IP
#指定淘宝使用114 DNS进行解析server=/taobao.com/114.114.114.114#google指定8.8.8.8进行解析server=/google.com/8.8.8.8也可以对指定的域名进行解析,相当于就是本地hosts指向,可以利用这个功能实现广告屏蔽等效果 。也是需要修改/etc/dnsmasq.conf文件,DNSmasq也可以对域名进行泛解析,填写*.xiaoz.me,这样的格式即可 。
#将广告域名指向到127.0.0.1实现广告屏蔽address=/ad.youku.com/127.0.0.1address=/ad.iqiyi.com/127.0.0.1#对xiaoz.me进行泛解析address=/*.xiaoz.me/192.168.20.138启动与测试比如我在本地一台linux服务器(192.168.20.127)安装了DNSmasq,并在局域网内其它PC将DNS配置为192.168.20.127,使用dig命令进行测试,第一次查询相对较长,第二次几乎再10ms内,如下截图 。
文章插图
【使用DNSmasq搭建公网DNS】
推荐阅读
- 地下城与勇士|DNF:职业转换之间的不同改变点,转职书使用应该这样考虑
- 香水的选择和使用:小白必学
- 如果手机号码注销了,微信、支付宝还能继续使用吗?望周知
- 手机“越用越慢”?让我来教你手机的正确使用姿势!
- 芦荟胶擦脸会变黄吗?
- 甩干机如何正确使用
- 地板打蜡机使用注意事项
- 自己手机怎么拍证件照
- 9个暗藏惊喜的微信小程序,硬核又实用,请大家低调使用
- Fiddler移动端抓包