局域网内的设备越来越多,用ip访问就比较麻烦了。另一方面我们用的公网的dns服务器可能会被投毒。这时候搭建一个本地的DNS服务器,想用什么域名就用什么域名,岂不是很舒服。拿起我们的树莓派,说干就干。

准备材料

1、树莓派:这里是安装了64位操作系统的树莓派4B。

2、dnsmasq:提供 DNS缓存和DHCP服务。

安装

ssh登录进我们的树莓派,切换到root用户,搜索一下仓库里有没有dnsmasq这个软件。

apt-cache search dnsmasq

很顺利,我们看到了这个软件。

树莓派查看dns:想用什么域名就用什么域名(1)

dnsmasq

那就不客气了,开始安装。

apt-get install dnsmasq

装好之后是个servcie服务,我们看一下它的状态。

service dnsmasq status

树莓派查看dns:想用什么域名就用什么域名(2)

dnsmasq状态

打开,关闭和重启都跟普通的service服务一样。

service dnsmasq start service dnsmasq stop service dnsmasq restart

接下来我们配置一下它。

配置

主要的配置文件位于三个地方,这里列举主要的配置,更详细的请查看看官网。

1、dnsmasq.conf

主配置文件,我们不作修改,在dnsmasq.d文件夹里创建我们自定义的配置文件。

2、/etc/dnsmasq.d

我们创建个custom.conf,添加下面的配置。

2.1 加载自定义的上游dns服务器,这里有个地方需要注意,如果安装了dns管理软件,默认的/etc/resolv.conf是会被覆盖,我们自定义一个自己的。

虽然自定义了,但还需要配置一个地方,否则不会生效,编辑下/etc/default/dsnmasq文件,修改IGNORE_RESOLVCONF=yes,忽略系统的resolvconf.

resolv-file=/etc/dnsmasq/resolv.conf

2.2 严格按照从上到下的顺序执行。

strict-order

2.3 配置下缓存。

cache-size=10000

2.4 只开启dns

no-dhcp-interface=enp3s0

2.5 给我们的树莓派添加一个自定义域名。

address=/pi.me/192.168.3.5

2.6 设置下日志和日志路径,看一下解析效果,之后可以注释掉。

log-queries log-facility=/var/log/dnsmasq.log

保存配置文件。

重启服务

配置完毕后重启下服务

service dnsmasq restart

查看下服务的状态

service dnsmasq status

树莓派查看dns:想用什么域名就用什么域名(3)

服务状态

一切正常,接下来就可以使用了。

使用

修改下电脑的dns服务器,注意这里要修改两个:ipv4和ipv6

ipv4dns服务器修改:比如我这里改成192.168.3.5.

树莓派查看dns:想用什么域名就用什么域名(4)

win10修改ipv4 dns服务器

ipv6dns服务器修改: ipv6的地址需要去树莓派上看看,执行下面的命令

ifconfig

树莓派查看dns:想用什么域名就用什么域名(5)

ipv6地址

把这段复制下来填到win10 ipv6地址上。

树莓派查看dns:想用什么域名就用什么域名(6)

ipv6 dns配置

查看日志可以看到dns服务器已经正常运行,域名也可以正常解析。

树莓派查看dns:想用什么域名就用什么域名(7)

dns解析日志

,