首页 > 代码库 > Linux学习之路之DNS的配置文件和正解区域文件、反解区域文件

Linux学习之路之DNS的配置文件和正解区域文件、反解区域文件

DNS正解区域文件

在DNS中,我们知道有域和区域的概念,域的英文名称是domain,它是一种逻辑概念;而区域英文全称zone,它是一种物理概念。且zone分为正解区域和反解区域

正解区域:提供正向解析的服务,即FQDN-->IP的过程

反解区域:提供反向解析的服务,即IP-->FQDN的过程

不管好似正解区域还是反解区域,都通过了一个配置文件,这个文件中的每一个条目就是一个资源记录(Resource Record,RR)。

资源记录的类型主要有这些,且这些资源记录的格式为:

SOA:起始授权记录(Start Of  Authority ),定义数据文件是为哪个区域创建的

            格式:

            ZONE_NAME  TTL      IN     SOA         (主DNS)FQDN        ADMINISTRATOR_MAILBOX (
                                                             serial number

                                                              refresh

                                                              retry

                                                              expire

                                                              nagitive TTL )

说明:TTL是某个解析记录保存在DNS服务器上面的有效时长,可以省略。如果每个资源记录的TTL一样,可以在该文件中的最前面这样声明即可:TTL  600

切记SOA记录必须是文件中的第一个资源记录条目,可以出现在正解和反解区域文件中

这里的邮件地址不能使用@符号,@符号在这里表示为域名。因此邮件地址一般这样写:

admin.xsl.com.

例如:写一个SOA的资源记录条目

            xsl.com.     600   IN   SOA      ns.xsl.com.     admin.xsl.com.   (

                                                2014082001

                                                1H

                                                5M

                                                1W

                                                1D        )

注意:这里的单位可以是分钟(M),小时(H),天(D),周(W),默认单位是秒

 

 

NS:Name Server,NS记录表示的是某个域内的DNS服务器,因此它的格式是这样的:

            ZONE_NAME    TTL     IN      NS      NS_FQDN

            NS_FQDN          TTL     IN       A        IP

由于NS记录是指定DNS服务器的,因此这里需要指定某个域内的DNS服务器的是谁?这个服务器的ip地址是什么。因此需要两条记录。

这里的A表示的是A记录,格式就是上面的。

例如:在这里写一个NS记录的例子:

              xsl.com.            TTL        IN      NS     ns1.xsl.com.    #这里的域名可以使用@表示

              xsl.com.            TTL        IN      NS     ns2.xsl.com.

              ns1.xsl.com.     TTL        IN       A        1.1.1.1            #其实这里的主机名也可以省略,即写ns1

              ns2.xsl.com.     TTL        IN       A         2.2.2.2

 

A:Address,A记录是定义某个主机(FQDN)到ipv4的过程,格式在上面已经说过,这里不再写了。

       不过要说明的时,A记录只能出现在正解区域文件中。

AAAA:这个也是A记录,不过定义的是FQDN到ipv6的过程

 

MX:Mail  eXchanger,这是邮件资源记录。由于邮件服务器可能有多个,因此我们使用优先级pri来判断优先选择使用哪个邮件服务器。优先级pri范围是0-99,数字越小越优先

邮件资源记录条目一般定义在正解区域文件中

邮件资源记录的格式和NS资源记录的格式大致相同:

            ZONE_NAME    TTL         IN      MX    PRI   FQDN

            FQDN                 TTL        IN        A                IP

例如:在这里写个MX资源记录的例子:

            xsl.com.                600        IN       MX     10    mail.xsl.com.

            mail.xsl.com.        600        IN        A                3.3.3.3

             

CNAME:Canonical NAME,一般之出现在正解区域文件中

              格式是:

                FQDN(new)        TTL      IN      CNAME    FQDN(old)

例如:mail.xsl.com.这个主机的别名为ml.xsl.com.

                ml.xsl.com    600   IN   CNAME     mail.xsl.com(这个是真名)

 

PTR:domain  name  pointer   ,这是一个反向解析的资源记录,只能出现在反解区域文件中。

格式是:IP.in-addr.arpa    TTL     IN    PTR     FQDN

例如:192.168.20.10的域名为www.xsl.com.,可以这么写:

             10.20.168.192.in-addr.arpa     600   IN   PTR  www.xsl.com.

 

例如:以192.168.20.10的主机名是www.xsl.com.为了建立DNS反解区域文件

 .20.168.192.in-addr.arpa      600    IN    SOA    ns1.xsl.com.   admin.xsl.com.  (

                                                                     2014082101

                                                                     1H

                                                                     10M

                                                                     1D

                                                                     1D  )

10.20.168.192.in-addr.arpa    600    IN      PTR     www.xsl.com.

 

刚刚说个区域分为正解和反解区域。这只不过是从查询角度来说的,如果从传输数据的角度来划分,那么区域类型可以这么划分:

            主区域:Master,定义主服务器的区域

            从区域:Slave,定义从服务器的区域

            提示区域:hint,定义根域DNS服务器的区域

            转发区域:forword,定义转发到某个DNS服务器的区域

其中这些区域包含正解区域或者反解区域。懂了吗?

 

 

本文出自 “linux学习之路” 博客,谢绝转载!