本文通过dnsmasq搭建本地DNS服务器,dnsmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于本地局域网,所配置的域名不会再全球DNS服务器中出现,它提供了DNS功能和可选择的DHCP功能。
1、下载并安装dnsmasq
yum install -y dnsmasq
2、编辑配置文件dnsmasq.conf
设置本地连接服务器的网口和地址,并设置用户和组:
在配置文件最后加入配置:
conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig
#上游DNS服务器配置文件
resolv-file=/etc/resolv.dnsmasq.conf
strict-order
addn-hosts=/etc/dnsmasq.hosts
listen-address=127.0.0.1,[本机网口IP]
server=114.114.114.114
bogus-nxdomain=114.114.114.114
3、设置上游DNS服务器
vi resolv.dnsmasq.conf
nameserver 114.114.114.114
nameserver 8.8.8.8
4、让DHCP客户端将本地地址加入DNS文件
vi resolv.conf
5、保护resolv.conf不被修改
chattr +i /etc/resolv.conf
6、增加用户和组
groupadd dnsmasq
useradd -m -g dnsmasq dnsmasq
查询组:
cat /etc/group
查询用户:
cat /etc/passwd
7、将相关dnsmasq文件赋权
chown root:dnsmasq dnsmasq*
8、设置dnsmasq服务
重启服务:
systemctl restart dnsmasq
systemctl status dnsmasq
设置为开机启动:
systemctl enable dnsmasq
此处报错,需要将resolv.dnsmasq.conf文件权限设置为644,并新建dnsmasq.hosts文件
查看配置文件语法是否正确:
dnsmasq --test
查看端口是否启动成功:
netstat -antp|grep 53
9、新建/etc/dnsmasq.hosts文件,用来后续增加DNS域名解析文件
注意:每次新增DNS解析地址时,都要重启dnsmasq服务
10、测试本地DNS服务器
本地配置DNS后,正反向解析dnsmasq.hosts中的地址:
测试成功 :