1:用CentOS搭建DNS的目的是想解析一台下载服务器,IP地址172.18.0.58,现在是用IP地址方的式访问,想搭建DNS服务器用域名的方式访问。
使用下面的命令查看一下当前系统的Bind版本。
yum info bind
版本是9.11.36.我的CentOS是最小化安装的。
2:安装Bind和测试工具包。
yum install bind bind-utils -y
3:安装完成后使用下面命令可以查看Bind的安装信息,配置文件,主服务,日志等,Bind程序安装完成后,默认即可做缓存服务器器使用,如果没有专门需要解析的区域,直接启动服务即可。
rpm -ql bind
4:主配置文件在/etc/named.conf中,查看主配置文件一般有三个配置段,全局配置段options{...},日志配置段logging{...},区域配置段zone{...},其中区域配置段复制解析由本机负责解析或者转发的的区域。
5:编辑主配置文件.
vi /etc/named.conf
去掉全局配置段中的127.0.0.1,换成any,表示监听本机所有地址,也可以写入自己想监听的地址,要注意{}前后都有空格,每个地址后面都有 ;号,否则会有语法错误。allow-query也换成any。
7: 检查配置文件是否有错误。
named-checkconf
8:启动服务,加入开机自启。
systemctl enable --now named
9:查看TCP和UDP的53号端口是否已经监听。
ss -tnul
11: 编辑配置文件,定义区域。
vi /etc/named.rfc1912.zones
12:在配置区域文件中添加下面的信息。一个正向,一个反向。
zone "xz.com" IN {
type master;
file "xz.com.zone";
};
zone "0.18.172.in-addr.arpa" IN {
type master;
file "0.18.172.zone";
};
13:配置正向区域文件,默认路径在/var/named下面。在这下面有模板可以拷贝一个直接修改,named.localhost,named.loopback一个正向一个反向。用cp -p保留权限拷贝。
vi /var/named/xz.com.zone
14:填写下面内容。其中DNS是本机的IP地址。
$TTL 1D
@ IN SOA xz.com. root.xz.com. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.xz.com.
dns A 172.18.50.70
www A 172.18.0.58
14:配置反向区域文件。
vim /var/named/0.18.172.zone
15:添加下面的内容。
$TTL 3H
@ IN SOA xz.com. root.xz.com. (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.xz.com.
58 PTR www.xz.com.
16:检查区域是否正确。
named-checkzone xz.com /var/named/xz.com.zone
17:重新加载区域。下面的命令相当于systemctl重启服务。rndc还有很多命令,比如flush清除缓存。
rndc reload
18:设置本机的DNS为本机的IP地址。
vi /etc/resolv.conf
nameserver 172.18.50.70
19:放行TCP和UDP53号端口,如果防火墙关闭这个可以不做。
firewall-cmd --permanent --add-port=53/tcp --zone=public
firewall-cmd --permanent --add-port=53/udp --zone=public
firewall-cmd --reload
20:重新启动服务。
systemctl restart named
21:使用nslookup命令进行测试。
22:找一台主机没有配置DNS是无法打开网页的。
22:配置测试主机的DNS为DNS服务器的IP地址,进行访问。