DNS服务器搭建

发布时间 2023-08-16 21:26:23作者: 村尚chun叔

DNS服务器搭建

bind软件搭建dns服务器

1.准备好机器 172.16.1.61机器服务端
客户端   172.16.1.7 这个机器作为客户端


2.服务端部署bind软件
bind软件是dns服务器的主软件,bind-utils是提供dns解析的命令,如dig这个命令
yum install bind bind-utils -y




3.安装完毕后,检查防火墙,别禁止了dns查询请求
[root@master-61 ~]# getenforce
Disabled
[root@master-61 ~]#
[root@master-61 ~]#
[root@master-61 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 

4.创建dns配置文件即可 ,先操作主配置文件,然后修改子配置文件(二级域名的配置文件)
vim /etc/named.conf  # 主配置文件

# 修改允许dns服务端,运行在0.0.0.0:53 上
listen-on port 53 { 127.0.0.1; any; };
allow-query     { localhost;any; };  #允许客户端的访问


5.创建 laoliulinux.cn的域配置文件即可
vim /etc/named.rfc1912.zones

zone "laoliulinux.cn" IN {
type master;
file "laoliulinux.cn.zone";
allow-update { none; };
};


6.创建该二级域名的 主机记录配置文件
laoliulinux.cn.zone
需要以主机记录的格式去创建,且必须存放在 /var/named/目录下才行
# cp -p 保持原文件的属性 
cp -p /var/named/named.localhost /var/named/laoliulinux.cn.zone


7.添加 A记录即可
一般的网站首页,都会叫做  www.二级域名.com

[root@master-61 ~]#cat /var/named/laoliulinux.cn.zone  
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	172.16.1.61
	AAAA	::1

www   A   172.16.1.61  
linux A   172.16.1.61


8.这里就是添加了2个三级域名
只需要启动bind程序即可
[root@master-61 ~]#systemctl start named


9.检查named程序状态
[root@master-61 ~]#netstat -tunlp |grep named
[root@master-61 ~]#ps -ef|grep named


10.需要设置该dns地址,方可使用该dns解析查询
在给172.16.1.61机器部署dns服务端(权威服务器的角色)

[root@master-61 ~]#cat /etc/resolv.conf 
nameserver 172.16.1.61


11.客户端想使用自建的这个dns服务器
vim /etc/resolv.conf 
nameserver 172.16.1.61

访问局域网内的域名,能够直接在master-61机器上查询到
如果访问的是互联网中的域名,该bind软件,默认会递归查询,继续向上, 从dns解析流程走一遍

dnsmasq软件搭建dns服务器

这是一个轻量级,很容易就实现dns服务器的一个软件,部署简单,不像bind那么复杂,重量级

很多软件,大型软件的集群,内部需要部署dns环境,都是通过dnsmasq

1.安装
yum install dnsmasq -y


2.创建dnsmasq配置文件,设置上游dns服务器地址,设置本地域名解析记录
[root@master-61 ~]#vim /etc/dnsmasq.conf 
resolv-file=/etc/resolv.dnsmasq.conf      #指定上游dns服务器地址
listen-address=172.16.1.61     #指定运行地址是内网环境
addn-hosts=/etc/hosts.dnsmasq.conf # 需要指定你想要添加的本地 域名解析记录,默认 /etc/hosts文件
conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig


3.创建对应的数据文件即可
echo "nameserver 223.5.5.5" > /etc/resolv.dnsmasq.conf
cat >/etc/hosts.dnsmasq.conf <<EOF
172.16.1.61 master-61
172.16.1.5 slb-5
172.16.1.6 slb-6
172.16.1.7 web-7
172.16.1.8 web-8
172.16.1.9 web-9
172.16.1.31 nfs-31
172.16.1.41 rsync-41
172.16.1.51 db-51
EOF


4.启动dnsmasq服务,即可生效如上的自定义记录
systemctl start dnsmasq 


5.测试该dnsmasq是否可用,你还得主动的指定本地dns配置文件的记录,使用这个dnsmasq的服务端地址(172.16.1.61)

客户端想使用自建的这个dns服务器
vim /etc/resolv.conf 
nameserver 172.16.1.61