在centos8系统安装DNS服务器,通过在本地创建DNS解析服务器,可以建立企业内部的dns内网解析系统。

1、安装DNS支撑服务;
yum install bind  //安装DNS服务;

yum install bind-utils   //安装nslookup工具

2、编辑named.conf配置文件

vi  /etc/named.conf

文档:centOS 8安装DNS服务器.note 链接:http://note.youdao.com/noteshare?id=94ba504625c05efc689c69fbf7e8a97c&sub=8B95AC876C61464A97339E72266A50DD

 

centos8 chrony服务器配置 centos8服务器安装_bind

listen-on port 53 { 192.168.1.123; };      //新增
        listen-on port 53 { any; };       //新增
        //listen-on-v6 port 53 { ::1; };   //注释掉原先的
        directory       "/var/named";       //定义正反向配置文件的目录位置
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        //allow-query     { localhost; };      //注释掉原先的
        allow-query     { any;};     //新增
3、检查语法错误

直接执行:named-checkconf
如果报错的话,根据具体的报错行数进行修改错误。

4、编辑配置文件

vim /etc/named.rfc1912.zones
在文件最后添加“正向”和“反向”配置,

centos8 chrony服务器配置 centos8服务器安装_centos8 chrony服务器配置_02

//正向区域配置,域名解析IP
zone "hello.com"IN{           
type master;
file "hello.com.zone";        //对应步骤2中的配置文件位置,对应步骤5中的文件名
allow-update{none;};
};

//反向区域配置,IP解析域名
zone "1.168.192.in-addr.arpa"IN{    //这里要倒着写
type master;
file "hello.com.local";        //对应步骤2中的配置文件位置,对应步骤6中的文件名
allow-update{none;};
};

5、编写正向解析配置文件

cd /var/named
cp -p named.localhost hello.com.zone    #编辑正向区域数据配置文件,注意复制配置文件时,要保持源文件权限
vi hello.com.zone    //编辑正向区域数据配置文件内容

[root@litian named]# more hello.com.zone 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	192.168.1.123           //添加A记录,为本机IP
www	IN A	192.168.1.123    //添加www的A记录,即www.hello.com
ftp	IN A	192.168.1.123    //添加ftp的A记录,即ftp.hello.com
	AAAA	::1



6、编辑反向解析配置文件
cp -p hello.com.zone hello.com.local  #复制反向区域数据配置文件
vi hello.com.local  

[root@litian named]# more hello.com.local 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	192.168.1.123
123	PTR	www.hello.com.   //最后面这个.不能少
123        PTR	ftp.hello.com.   //最后面这个.不能少
AAAA	::1


7、测试成果

service named restart    #重新启动服务
vi /etc/resolv.conf      #添加新的DNS  nameserver 192.168.1.1623
nslookup www.hello.com   #正向测试DNS
nslookup 192.168.73.160  #反向测试DNS

[root@litian named]# nslookup www.hello.com
Server:		192.168.1.123
Address:	192.168.1.123#53

Name:	www.hello.com
Address: 192.168.1.123

[root@litian named]# nslookup ftp.hello.com
Server:		192.168.1.123
Address:	192.168.1.123#53

Name:	ftp.hello.com
Address: 192.168.1.123
Name:	ftp.hello.com
Address: ::1

[root@litian named]# nslookup 192.168.1.123
123.1.168.192.in-addr.arpa	name = ftp.hello.com.
123.1.168.192.in-addr.arpa	name = www.hello.com.


======================================
漂亮,再进化一次!
======================================

进化:上面的两个域名www.hello.com和ftp.hello.com如果按照上面的配置解析出来的ip都是192.168.1.123,这不符合正常的使用逻辑,正常情况下,不同的域名承担不同的作用,应该备解析到不同 的ip上面,下面即将对上面的配置进行更换,实现这个功能。

1、优化上面的步骤5,优化正向解析配置文件

[root@litian named]# more hello.com.zone 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
    	A	192.168.1.123        //这里不变
www	IN A	192.168.1.125        //重新指定www.hello.com的解析地址为192.168.1.125,这样就可以在192.168.1.125这台机器上安装www服务。
ftp	IN A	192.168.1.124        //重新指定ftp.hello.com的解析地址为192.168.1.124,这样就可以在192.168.1.124这台机器上安装ftp服务。
    	AAAA	::1


2、优化上面的步骤6,优化反向解析配置文件
[root@litian named]# more hello.com.local 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
    	NS	@
    	A	192.168.1.123
125	PTR	www.hello.com.   //指定125
124        PTR	ftp.hello.com.   //指定124
    	AAAA	::1

3、再次验证结论如下:

[root@litian named]# nslookup www.hello.com
Server:		192.168.1.123
Address:	192.168.1.123#53

Name:	www.hello.com
Address: 192.168.1.125

[root@litian named]# nslookup ftp.hello.com
Server:		192.168.1.123
Address:	192.168.1.123#53

Name:	ftp.hello.com
Address: 192.168.1.124
Name:	ftp.hello.com
Address: ::1

[root@litian named]# nslookup 192.168.1.123
** server can't find 123.1.168.192.in-addr.arpa: NXDOMAIN

[root@litian named]# nslookup 192.168.1.124
124.1.168.192.in-addr.arpa	name = ftp.hello.com.

[root@litian named]# nslookup 192.168.1.125
125.1.168.192.in-addr.arpa	name = www.hello.com.