第十八天 DNS服务原理及bind详细配置

1、DNS服务原理详解

2、DNS服务原理详解

3、bind基本配置详解


一、DNS 服务

    Domain name server 域名服务,工作在53号端口,查询时使用udp协议,传输时使用tcp协议。

    FQDN (Full Qualified Domain Name)完全合格域名

            根域:root domain   如:.
                        一级域:top-level domain  如: com\net\cn\ gov\org\mil\edu\cc\info
                        二级域:公司、组织、个人使用 如:mageedu\baidu\sohu
                        主机:www\mail\ftp

        

        递归:A --> B --> C --> D        
        迭代:A --> B、A --> C、A --> D      

        互联网上真正的DNS查询时递归+迭代,本地DNS发出一次请求,递归查询,互联网其他DNS则迭代查询。

        DNS的主机名和主机名称没关系,一个名称能对应几个IP,一个IP也能对应几个名称。


        DNS名称解析:FQDN --> IP、IP --> FQDN ( .in-addr.arpa反向解析),邮件服务器要求反向解析

        

        域(domain)和区域(zone)

                    正向解析:FQDN--->IP 解析库

                    反向解析:IP--->FQDN 解析库

                     区域解析库:
                                    资源记录:rr(resource record)有类型的概念:用于此记录解析的属性
                                                     SOA: Start Of Authority, 起始授权记录,一个区域文件只能有一个
                                                     NS:Name Server
                                                     MX: Mail eXchange, 邮件交换器,MX记录有优先级属性(0-99) 
                                                     A:FQDN --> IP,专用于正向解析库
                                                     PTR: IP --> FQDN,专用于反向解析库
                                                     AAAA:FQDN --> IPv6,专用于正向解析库
                                                     CNAME: Canonical Name,正式名称

2、负责解析当前域内所有主机的DNS服务器称之为权威DNS服务器

     查询过程先查找hosts-->local DNS cache-->DNS server(cache)-->根-->一级域-->主机
     由DNS服务器缓存回复的查询结果称之为非权威应答。

     

     DNS服务器类型
              主DNS服务器,

                         一个域中只有一个主DNS,如有多台DNS服务器提供解析必须告知上级域,并通过轮询方式接受请求,
              从DNS服务器,只能从主服务器同步解析库,同步解析库的过程叫区域传送(zone transfer,单方向传送)

              缓存DNS服务器,


          完全区域传送:axfr。区域传送为tcp传送,查询时为udp传送,第一次传送时为全部传送。之后为增量传送。
          增量区域传送:ixfr。

        DNS服务器区域传送为周期性检查+通知机制,当主服务器在设定时间内没有应答,从将不再提供DNS解析功能。



     

资源记录类型,任何资源解析库文件第一条记录类型必须是SOA,用于标记主DNS服务器
              Name [ttl] IN RRType value
                                 Name:区域名称,可以简写@
                                 ttl:响应客户端后最多缓存多少时间
                                 IN:固定字符
                                 RRType:资源记录类型
                                 Value:主DNS服务器的FQDN
                                 Mail:邮箱地址,value和mail最后的.不能省略。如www.magedu.com.
                                ():可以表示为换行符,只要在括号中的都视为同一行记录。
                                 Serial namber:解析库的版本号。不能超过10位,;分号为注释信息
                                 Refresh time:周期性同步时间间隔
                                 Retry time:重试的时间间隔,如主服务器没有应答,多久去查看一次
                                 Expire time:过期时长,如果主服务器超过设定时间内没有响应,从服务器也不在提供服务。
                                 negative answer ttl ;否定答案的统一缓存时长
        例如:@IN  SOA  ns.magedu.com.   admin.magedu.com.  (
                                             serial number   ;解析库的版本号,例如2014080401
                                             refresh time    ;周期性同步的时间间隔
                                             retry time      ;重试的时间间隔
                                             expire time     ;过期时长
                                             negative answer ttl ;否定答案的统一缓存时长
                                           )

       NS:name server名称服务器
              Name :区域名称
              Value:DNS服务器的FQDN
      例如: @   IN   NS   ns.magedu.com.

       如果有多台ns服务器,每一个都必须有对应的NS记录
       对于正向解析文件来讲,每一个NS的FQDN都应该有一个A记录



       MX:mail exchanger:邮件服务器
               Name :区域名称
               Value:DNS服务器的FQDN

       例如:
                IN  MX  10   mail.magedu.com.
                @ IN  MX  20   mail2.magedu.com.
            如果有多台MX服务器,每一个都必须有对应的MX记录;但各MX记录还有优先级属性
            对于正向解析文件来讲,每一个NS的FQDN都应该有一个A记录;


        A: Address 对于正向解析库A记录最为关键
                           name: FQDN
                            value: IP
             同一个域名可以有多个地址。同一个地址也可以有多个名称
             例如:
                      www.magedu.com.     IN    A  1.1.1.1
                      www.magedu.com.     IN    A  1.1.1.2
                      pop3.magedu.com.    IN    A   1.1.1.3
                      imap.magedu.com.    IN    A   1.1.1.3


        AAAA: ipv6 IP


        CNAME: Canonical Name
                       name: FQDN
                       value: FQDN
               
例如:
                          www.magedu.com.    IN    A                1.1.1.5
                          web.magedu.com.     IN    CNAME      www.magedu.com.


        PTR: pointer反向解析
              
 name: 逆向的主机IP地址加后缀in-addr.arpa,例如172.16.100.7/16, 网络地址为172.16, 主机地址为100.7,其name为7.100.in-addr.arpa.value: FQDN


        例如: 7.100.in-addr.arpa.     IN   PTR     www.magedu.com.
        
       bind linux上常见的DNS服务器,bind:(bekerley internet name domain)
               服务脚本:/etc/rc.d/init.d/named
               主配置文件:/etc/named.conf, /etc/named.rfc1912.zones,2个文件组成主配置文件
               区域解析库文件:/var/named/zone_name.zone
 
      安全:
              服务进程以系统用户的身份运行:named, named
              可以运行于chroot模型下,即工作jail环境

       Dns是协议,named是进程名称,bind是工具


3、bind的基本配置详解
              泛域名解析:*IN  1.1.1.1
     

      安装配置过程:
              安装程序包
              修改主配置文件:每个语句解释都必须以分号结束,否则语法错误。
                      
options {
                                       全局配置段;
                                      // directory "/var/named";指定工作目录
                                     };
                       zone "ZONE_NAME" IN {           可以指向DNS根
                                     type {master|slave|hint|forward}; 
                                     file "mageedu.com.zone";
             };
                       logging {
                                      用于指定日志文件;
                                     }

              为每一个区域提供解析库
                       变量的定义
                       资源记录

      named-checkconf 用于检查主配置文件语法。
                               
       随机数生成器:
                   
/dev/urandom:先返回熵池中的随机数,耗尽后会用软件算法生成随机数;进程不会阻塞;
                   /dev/random: 只返回熵池中的随机数; 随机数耗尽,进程会被阻塞;
 
       DNS:缓存DNS服务器,不负责解析任何区域信息,缓存客户请求。

       客户端测试工具host 、nslookup、dig :

host -t RRType NAME [SERVER],例如:host -t NS mageedu.com 192.168.142.8
                             nslookup
                              nslookup>
                              server IP:
      set type={A|SOA|NS|MX}
                              name
                dig -t TYPE name @server例如: dig -t AXFR mageedu.com  @192.168.142.8
                         测试反解不使用-t PTR,而使用-x选项
           
       反向区域:
                区域名称为逆向网络地址加.in-addr.arpa做后缀

       说明:
               1、正向解析和反向解析文件中的名称可以仅使用相对名称,它们均相对当前区域而言;
               2、绝对后缀可以使用$ORIGIN来定义;






你可能感兴趣的:(server,互联网,主机)