如何搭建一个公共DNS服务器

    选择打赏方式

相信大家把现在的阿里DNS/114DNS/谷歌DNS都用烦了,今天,我就教教大家如何搭建一个自己的DNS服务器

一、服务器环境

必须为centos6.x的 环境 centos7.x不能按照本教程 centos5.x未测试

二、安装并启动DNSMASQ

yum install -y dnsmasq
service dnsmasq start 


 三、dnsmasq配置

1、Dnsmasq的配置文件路径为:/etc/dnsmasq.conf
# ll -d /etc/dnsmasq.conf 
-rw-r--r-- 1 root root 21237 Feb 23 00:17 /etc/dnsmasq.conf
2、编辑/etc/dnsmasq.conf
resolv-file=/etc/resolv.dnsmasq.conf    //dnsmasq 会从这个文件中寻找上游dns服务器
strict-order             //去掉前面的#
addn-hosts=/etc/dnsmasq.hosts         //在这个目里面添加记录
listen-address=127.0.0.1,192.168.1.123//监听地址 如果想对所有计算机服务,则为0.0.0.0
3、修改/etc/resolv.conf
echo 'nameserver 127.0.0.1' > /etc/resolv.conf
4、创建resolv.dnsmasq.conf文件并添加上游dns服务器的地址
touch /etc/resolv.dnsmasq.conf
echo 'nameserver 119.29.29.29' > /etc/resolv.dnsmasq.conf
5、创建dnsmasq.hosts文件
cp /etc/hosts /etc/dnsmasq.hosts
echo 'addn-hosts=/etc/dnsmasq.hosts' >> /etc/dnsmasq.conf

提示:resolv.dnsmasq.conf中设置的是真正的Nameserver,可以用电信、联通等公共的DNS。

 

三、DNSmasq启动

1、设置Dnsmasq开机启动并启动Dnsmasq服务:
chkconfig dnsmasq on
/etc/init.d/dnsmasq restart
2、netstat -tunlp|grep 53 查看Dnsmasq是否正常启动:
# netstat -tlunp|grep 53
tcp        0      0 0.0.0.0:53                  0.0.0.0:*                   LISTEN      2491/dnsmasq        
tcp        0      0 :::53                       :::*                        LISTEN      2491/dnsmasq        
udp        0      0 0.0.0.0:53                  0.0.0.0:*                               2491/dnsmasq        
udp        0      0 :::53                       :::*                                    2491/dnsmasq        


 

3、dig smallxu.me,第一次是没有缓存,所以时间是400多

QQ截图20180413193705.png

4、第二次再次测试,因为已经有了缓存,所以查询时间已经变成了2.

QQ截图20180413193803.png

为了防止故意进行DNS劫持,这里不贴出

四、DNSMASQ的配置

1、本地DNS使用

dnsmasq-2-4.jpg

这里我们本地DNS可以使用服务器中配置的IP,这样我们本机就使用到自己的DNS,备用DNS可以用一个第三方公用DNS。

2、屏蔽网站/广告

vi /etc/dnsmasq.conf

如果我们需要屏蔽某个网站或者广告,可以修改上面的文件

address=/itbulu.com/127.0.0.1
address=/smallxu.me/127.0.0.1

比如我希望无法打开这两个网站,就在配置文件中添加指定的IP或者其他劫持的IP,比如我们打开某个网站被指定到其他的服务器或者网站中,就这样被劫持的。同样的,我们也可以将广告目录屏蔽。

添加后 smallxu.me和itbulu.com将会被解析到127.0.0.1

第五、Dnsmasq配置和使用总结

Dnsmasq实际功能不仅仅局限在上面的搭建我们本地需要的DNS服务器功能,如果真就这么简单的用法,那我们也没有必要用一台服务器配置。使用点第三方公共DNS还是没有问题的,有点广告也无妨。

 

转载请保留版权,已发布百家号:http://baijiahao.baidu.com/builder/preview/s?id=1597728095861104318

版权声明:若无特殊注明,本文皆为《 小徐 》原创,转载请保留文章出处。
本文链接:如何搭建一个公共DNS服务器 https://smallxu.me/jianshe/289.html
正文到此结束

热门推荐

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗 胜利 不高兴 阴险 乖 酷 滑稽

评论信息框

吃奶的力气提交吐槽中...


既然没有吐槽,那就赶紧抢沙发吧!