使用Bind搭建DNS服务

时间:2023-03-10 04:20:31
使用Bind搭建DNS服务

DNS域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析反向解析

  正向解析:根据主机名(域名)查找对应的IP地址。

  反向解析:根据IP地址查找对应的主机名(域名)。

工作形式上又分主服务器从服务器缓存服务器

  主服务器:在特定区域内具有唯一性、负责维护该区域内的域名与IP地址对应关系。

  从服务器:从主服务器中获得域名与IP地址对应关系并维护,以防主服务器宕机等情况。

  缓存服务器:通过向其他域名解析服务器查询获得域名与IP地址对应关系,提高重复查询时的效率

安装Bind服务程序:
 yum -y install bind-chroot 

域名解析服务Bind的程序名称叫做named,服务程序的配置文件如下:

主程序 /usr/sbin/named
主配置文件 /etc/named.conf
区域配置文件 /etc/named.rfc1912.zones
编辑主配置文件:

  [root@Centos ~]# vim /etc/named.conf

#listen-on port  { 127.0.0.1; };//127.0.0.1修改为any,代表允许监听任何IP地址。

 listen-on port  { any; }; 
 #allow-query { localhost; };localhost修改为any,代表允许任何主机查询。
 allow-query { any; };
正向解析:

第1步:配置区域数据信息。

正向解析的作用是根据主机名(域名)查找到对应的IP地址,区域文件中已有一些默认信息,可不必理会,直接在下面追加即可:

vim /etc/named.rfc1912.zones

zone "music.com" IN {
type master;
file "music.com.zone";
allow-update { none; };
};

第2步:配置解析数据信息:

  我们可以直接复制正向解析模板文件:"/var/named/named.localhost",填写信息后即可直接使用。

[root@Centos ~]# cd /var/named/
[root@Centos named]# cp -a named.localhost music.com.zone
[root@Centos named]# vim music.com.zone
[root@Centos named]# vim music.com.zone $TTL 1D      
@ IN SOA music.com. scottcho.qq.com. (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.music.com.
ns IN A 192.168.0.85
IN MX mail.music.com.
mail IN A 192.168.0.85
www IN A 192.168.0.85
bbs IN A 192.168.0.95

重启named服务让配置文件立即生效:

[root@Centos named]# systemctl restart named

第3步:检验解析结果。

将本机的DNS设置为本机的IP 192.168.0.85

[root@Centos named]# cat /etc/resolv.conf
# Generated by NetworkManager
search test nameserver 192.168.0.85

nslookup命令用于检测能否从网络DNS服务器中查询到域名与IP地址的解析记录,检测named服务的解析能否成功。
此为查询DNS服务器的信息:

[root@Centos named]# nslookup
> www.music.com
Server: 192.168.0.85
Address: 192.168.0.85# Name: www.music.com
Address: 192.168.0.85
> mail.music.com
Server: 192.168.0.85
Address: 192.168.0.85# Name: mail.music.com
Address: 192.168.0.85
> bbs.music.com
Server: 192.168.0.85
Address: 192.168.0.85# Name: bbs.music.com
Address: 192.168.0.95
> ns.music.com
Server: 192.168.0.85
Address: 192.168.0.85# Name: ns.music.com
Address: 192.168.0.85
反向解析实验

第1步:配置区域数据信息。

  反向解析的作用是根据IP地址查找到对应的主机名(域名),在区域文件(named.rfc1912.zones)中默认已存在一些注释内容与区域信息,可不需要删除上面实验及默认区域信息,直接在下面追加即可。

[root@Centos named]# vim /etc/named.rfc1912.zones

zone "0.168.192.in-addr.arpa" IN {
type master;
file "192.168.0.arpa";
allow-update { none; };
};

第2步:配置解析数据信息。

[root@Centos named]# vim /etc/named.rfc1912.zones
[root@Centos named]# cp -a named.loopback 192.168..arpa [root@Centos named]# vim 192.168..arpa $TTL 1D          
@ IN SOA music.com. scottcho.qq.com. (
    #授权信息开始:#DNS区域的地址#域名管理员的邮箱(不要用@符号)
       ; serial    #更新序列号
1D ; refresh #更新时间
1H ; retry   #重试延时
1W ; expire   #失效时间
3H ) ; minimum  #无效解析记录的缓存时间
NS ns.music.com.       #域名服务器记录    
ns A 192.168.0.85        #地址记录
PTR ns.music.com.      #PTR为指针记录,仅用于反向解析中
PTR mail.music.com.
PTR www.music.com
PTR bbs.music.com

第3步:检验解析结果。

重启named服务程序,让配置文件立即生效:

[root@Centos named]# systemctl restart named

执行nslookup命令检查反向解析结果:

root@Centos named]# nslookup
> 192.168.0.85
Server: 192.168.0.85
Address: 192.168.0.85# 85.0.168.192.in-addr.arpa name = mail.music.com.
85.0.168.192.in-addr.arpa name = ns.music.com.
85.0.168.192.in-addr.arpa name = www.music.com.0.168..in-addr.arpa.
> 192.168.0.95
Server: 192.168.0.85
Address: 192.168.0.85# 95.0.168.192.in-addr.arpa name = bbs.music.com.0.168..in-addr.arpa.