了解DNS的资源记录相关知识

发布时间:2021-01-06编辑:脚本学堂
DNS 资源记录

A记录
    A记录代表"主机名称"与"IP"地址的对应关系, 作用是把名称转换成IP地址
    DNS使用A记录来回答"某主机名称所对应的IP地址是什么?"
    主机名必須使用A记录转译成IP地址,网络层才知道如何选择路由,并将数据包送到目的地

CNAME记录
     某些名称并没有对应的IP地址,而只是一个主机名的别名。
     CNAME记录代表别名与规范主机名称(canonical name)之间的对应关系
    
     如管理员可能公告他们网站的主机名称为www.a.com, 但其实www.a.com只是一个指向server1.a.com的CNAME记录而已。而在server1.a.com维护期间,可以临时将www.a.com指向server2.a.com

MX记录
      MX记录提供邮件路由信息
      提供网域的"邮件交换器"(Mail Exchanger)的主机名称以及相对应的优先值
      当MTA要将邮件送到某个网域时,会优先将邮件交给该网域的MX主机
      同一个网域可能有多个邮件交换器, 所以每一个MX记录都有一个优先值,供MTA作为选择MX主机的依据

PTR记录
      PTR记录代表"IP地址"与"主机名"的对应关系,作用刚好与A记录相反
      DNS系统使用PTR记录来回答"某IP地址所对应的主机名是什么?"
      RFC 882构想,A记录与PTR记录应是互逆的,也就是说
        从A记录可以查到域名到IP, 从PTR可以查到从IP到域名
        但当多个域名对应同一个IP时,PTR记录应指向该IP地址的规范主机名

      某些网络使用PTR记录来检验客户端的主机名称是否可信

#---------------------
DNS资源记录语法:
{name}  {TTL}  addr-class   record-type   record-specific-data

name
      域记录的名字
      通常只有第一个DNS资源记录设置name栏
      对于区域文件中其他的资源记录,name也可能是空白,这种情况下,其他的资源记录接受先前的资源记录的名字

TTL
      Live栏可选择的时间
      它指定该数据在数据库中保管多长时间
      此栏为空表示默认的生存周期在授权资源记录开始中指定

addr-class
      地址类
      大范围用于Internet地址和其他信息的地址类为IN

record-type
      记录类型
      常为A  NS  MX  CNAME      

record-specific-data
      记录类型的数据

#----------------------
.对于每个Internet域或区域,需要两个配置文件
 1) 主机名到IP的转换设置域
      ;主域
      ;如果希望名字服务器是特定域的授权名字服务器,应设置主要的区域
      ;这里名字服务器配置为abc.com域的主要的名字服务器
      ;file用来指定区域或域特有的配置文件名, 如果这里指定的文件名和服务器的工作目录有关系,它必须在工作目录里
      zone  "abc.com"{
            type  master;
            file  "abc.db";
      };

       ;从域
      ;
      ;如果为特定的域设置多个名字服务器,可以使用type master选项只设置其中一个为主要的或授权名字服务器
      ;其它的名字服务器(个数不限)必须设置为从名字服务器
      ;
      ;这里当前名字服务器设置为abc.com域的从名字服务器
      ;主要的名字服务器列表指定一个或多个IP地址
      ;从名字服务器可以用来与这些IP地址联系更新其区域拷贝
      ;如果指定file选项,则区域配置的拷贝写在此文件中,推荐使用file可以加速服务器启动
      zone  "abc.com"{
           type slave;
           masters  {206.171.50.10; 206.171.50.12; };
           file     path_name;
      };
 
      ;用来指定一组根名字服务器
      ;当名字服务器启动时,它使用此列表(暗示)来发现一个根名字服务器,得到根名字服务器的最近列表
       zone  "."{
             type  hint;
             file  path_name;
       };

       ;
       ;把域名服务器设置为206.171.50.0网络的主要的域名服务器
       ;所有对此206.171.50.0网络的IP到主机名的转换(即反向DNS)都由此域名服务器处理
       zone  "50.171.206.in-addr.arpa"{
              type  master;
              file  "db.206.171.50";
       };
 
#------------------
;SOA授权的开始
;
;SOA或授权的开始记录用来表示区域的启动
;每个区域必须只有一个SOA记录
;从名字服务器,在不能和主服务器通信的情况下,将提供12小时DNS服务, 在指定的时间后停止为那个区域提供DNS服务;不过经仍要尝试和主服务器通信
;
@  IN  SOA   nameserver.      contact-email-address(
                 serial_number;
                 refresh_number;   //以秒为单位, 从名字服务器与主名字服务器比较才决定是否要更新
                 retry_number;       //以秒为单位, 由于外部原因,   从服务器重新传输一个失败的区域前要等多长时间
                 expire_number;    //以秒为单位, 是从名字服务器使用区域数据有效期的上限值
                 minimum_number; //以秒为单位, 是指在区域文件中没有指定生存期的资源记录上生存期TTL的限制,如果在一些区域的资源记录上有TTL值,则这里的minimum_number也是最低限度
)

@
       是名字
       并且总是被设置为@
        在同一文件中别的资源记录不能重复
 
nameserver
        指定当前域名服务器的主机名

contact-email-address
         指定系统管理员的email

;
;名字服务器主机名为ns.abc.com
;电子邮件地址是kabir@abc.com   (在SOA记录中邮件的@被换成.)

@    IN    SOA  ns.abc.com.    kdent.abc.com.  (
            1049310513     ;serial
            10800              ;refresh
            3600                ;retry
            604800           ;expire
            900                  ;ttl
)          

#-----------------
NS
       名字服务器
       用来为域指定名字服务器

        IN   NS   name-server-hostname
        注意:没有指定name和TTL, 因为名字仅需要使用@字符在SOA记录中指定 ;  TTL使用SOA记录中的minimum

        IN   NS   ns.abc.com.               //说明ns.abc.com.是当前区域文件的名字服务器,  可以指定多个NS记录
;
; Nameservers
;
abc.com.       IN   NS   ns.abc.com.

#---------------------
A记录
   Address记录
   用来为特定主机指定IP地址
   语法:  hostname   IN   A   IP-Address
   A记录把主机名指定为IP地址
   完整的主机名后应有一个点.
   每个主机至少应有一个A记录
   可以使用缩写, 此时缩写被增加到短名上  www    IN   A   206.171.50.51  ;将指定 www.abc.com
;
; Host Addresses
;
abc.com.                    IN   A  192.168.100.50
www                            IN   A  192.168.100.50
server1.abc.com.     IN   A  192.168.100.200
ns.abc.com.              IN   A   192.168.100.5
mail1.abc.com.        IN   A   192.168.100.6
mail2.abc.com.        IN   A   192.168.100.50
mail3.abc.com.        IN   A   192.168.100.123

#-----------------------------
PTR记录
 域名指针
  PTR记录代表"IP地址"与"主机名"的对应关系,作用刚好与A记录相反
  DNS系统使用PTR记录来回答"某IP地址所对应的主机名是什么?"
  RFC 882构想,A记录与PTR记录应是互逆的,也就是说
    从A记录可以查到域名到IP, 从PTR可以查到从IP到域名
    但当多个域名对应同一个IP时,PTR记录应指向该IP地址的规范主机名

    某些网络使用PTR记录来检验客户端的主机名称是否可信
    格式
       ip      IN   PTR   hostname.
       206.171.50.51   IN   PTR   www.abc.com.

      可也以使用缩写
      206.171.50.51   IN   PTR   www      //同样也是指定www.abc.com.

#----------------------
CNAME
    规范命名
    指定规范(正式)主机名的别名
    格式:      
    alias   IN   CNAME    Canonical-hostname
;     
; CNAME  Records
;
pop.abc.com.    IN  CNAME   mail1.abc.com.
www.abc.com.    IN  CNAME   server1.abc.com.
 
也可使用缩写如下
pop    IN  CNAME   mail1.abc.com.
www    IN  CNAME   server1.abc.com.

#-----------------
MX
   邮件交换
   用来指定设置为域的SMTP服务器的主机名
   格式:
      IN   MX  preference-value    mail-server-hostname.
;
; Mail  Exchanger
;
      IN   MX   0    mail.abc.com.
      IN   MX  10   mail1.abc.com.
      IN   MX  20   mail2.abc.com.
      IN   MX  30   mail3.abc.com.