Linux搭建DNS服务器

DNS相关概念

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

       作用:解析域名

       区域:正向区域、反向区域

       记录:

              A记录

              MX记录:搭建邮件服务器

              PTR记录:反向记录,出现在反向区域中

              CNAME记录:别名记录

              NS记录:DNS授权服务器

       服务器类型:主服务器、从服务器

Linux搭建DNS服务器

       软件: bind-9.8.2****

                  bind-chroot****

       服务名称:named

       端口号:UDP 53             TCP 53

       配置文件:

              主配置文件:/var/named/chroot/etc/named.conf

              记录文件:/var/named/chroot/var/named/记录文件名

搭建主DNS服务器

需求:XX公司存在一台网站服务器,网站名称为www.bj.com,网站服务器的IP地址为192.168.1.1;有一台ftp服务器,ftp的名称为ftp.bj.com,ftp服务器的IP为192.168.1.2;现希望所有员工可以通过域名的方式访问网站服务器和ftp服务器

1、安装bind软件

# rpm -ivh bind-9.8.2-0.10.rc1.el6.i686.rpm

# rpm -ivh bind-chroot-9.8.2-0.10.rc1.el6.i686.rpm

2、生成named.conf主配置文件,建立区域

# vim /var/named/chroot/etc/named.conf

options {

        directory "/var/named";

};

zone "bj.com" {

        type master;

        file "bj.com.zone";

};
 

3、生成记录文件,创建记录

# cp /usr/share/doc/bind-9.8.2/sample/var/named/named.localhost /var/named/chroot/var/named/bj.com.zone

# vim /var/named/chroot/var/named/bj.com.zone
$TTL 1D

@       IN SOA  bj.com. qq.bj.com. (

                                        0       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        NS      @

        A       127.0.0.1

        AAAA    ::1

www     A       192.168.1.1

ftp       A       192.168.1.2

~        
记录                     

4、启动DNS服务,测试

# rndc-confgen -r /dev/urandom -a

# /etc/init.d/named start

本机测试:

# vim /etc/resolv.conf

nameserver 10.1.1.1

# nslookup

> server

Default server: 10.1.1.1

Address: 10.1.1.1#53

> www.bj.com

Server:          10.1.1.1

Address:       10.1.1.1#53

 

Name:    www.bj.com

Address: 192.168.1.1

> ftp.bj.com

Server:          10.1.1.1

Address:       10.1.1.1#53

 

Name:    ftp.bj.com

Address: 192.168.1.2

> 
内容

5、将dns服务设置为开机自动启动

# chkconfig --level 2345 named on

# chkconfig --list named

named              0:关闭   1:关闭   2:启用   3:启用   4:启用   5:启用   6:关闭

6、建立反向区域,测试反向解析

1)在named.conf主配置文件中建立反向区域

 zone "1.168.192.in-addr.arpa" {

        type master;

        file "192.168.1.zone";

 };

2)生成反向区域相关的记录文件

vim 192.168.1.zone
$TTL 1D

@       IN SOA  bj.com. qq.bj.com. (

                                        0       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        NS      @

        A       127.0.0.1

        AAAA    ::1

1       PTR     www.bj.com.

2       PTR     ftp.bj.com.

~                             
记录

3)重启DNS服务,测试

# /etc/init.d/named restart

停止 named:.                                              [确定]

启动 named:                                               [确定]
# nslookup 
> server

Default server: 10.1.1.1

Address: 10.1.1.1#53

> 192.168.1.1

Server:          10.1.1.1

Address:       10.1.1.1#53

 

1.1.168.192.in-addr.arpa   name = www.bj.com.

> 192.168.1.2

Server:          10.1.1.1

Address:       10.1.1.1#53

 

2.1.168.192.in-addr.arpa   name = ftp.bj.com.

> exit
View Code

搭建从DNS服务器

需求:现有两台服务器,IP地址分别为10.1.1.1和10.1.1.2.其中10.1.1.1为主DNS服务,为避免主DNS服务宕机,在10.1.1.2上搭建从DNS服务器,作为备份使用

1、修改主DNS服务器的配置文件,指定从DNS服务器的IP

#vim /var/named/chroot/etc/named.conf
  options {

           directory "/var/named";

   };

  

   zone "bj.com" {

           type master;

           file "bj.com.zone";

           allow-transfer { 10.1.1.2; };

   };

  

  zone "1.168.192.in-addr.arpa" {

          type master;

          file "192.168.1.zone";

          allow-transfer { 10.1.1.2; };

  };
配置文件

2、在从DNS服务器上安装bind软件

# mount /dev/cdrom /mnt/

# rpm -ivh /mnt/Packages/bind-9.8.2-0.10.rc1.el6.i686.rpm

# rpm -ivh /mnt/Packages/bind-chroot-9.8.2-0.10.rc1.el6.i686.rpm

3、在从DNS服务器上建立DNS的配置文件,在配置文件中指定主DNS服务器的IP

# vim /var/named/chroot/etc/named.conf
options {

        directory "/var/named";

};

 

zone "bj.com" {

        type slave;

        masters { 10.1.1.1; };

        file "slaves/bj.com.zone";

};

 

zone "1.168.192.in-addr.arpa" {

        type slave;

        masters { 10.1.1.1; };

        file "slaves/192.168.1.zone";

};
配置文件

4、启动从DNS服务器上的服务,测试文件是否同步

# /etc/init.d/named start

Generating /etc/rndc.key:                                       [确定]

启动 named:                                               [确定]

效果:
# ls /var/named/chroot/var/named/slaves/
192.168.1.zone  bj.com.zone

 windows解析nslookup查看

C:UsersAdministrator>nslookup

默认服务器:  UnKnown

Address:  0.0.0.0

 

> server 10.1.1.2

默认服务器:  [10.1.1.2]

Address:  10.1.1.2

 

> www.bj.com

服务器:  [10.1.1.2]

Address:  10.1.1.2

 

名称:    www.bj.com

Address:  192.168.1.1

 

> ftp.bj.com

服务器:  [10.1.1.2]

Address:  10.1.1.2

 

名称:    ftp.bj.com

Address:  192.168.1.2

 

> 192.168.1.1

服务器:  [10.1.1.2]

Address:  10.1.1.2

 

名称:    www.bj.com

Address:  192.168.1.1

 

> 192.168.1.2

服务器:  [10.1.1.2]

Address:  10.1.1.2

 

名称:    ftp.bj.com

Address:  192.168.1.2

 

> 
View Code

递归查询:

options {

        directory "/var/named";

        forwarders { 8.8.8.8; 4.4.4.4; };

};

原文地址:https://www.cnblogs.com/renfanzi/p/5686489.html