DNS相关概念

DNS:域名解析 常用BIND  域名服务器(Domain Service)

主机名:www.magedu.com

  域名:magedu.com  (在.com下保存了magedu这个域)

       FQDN:完全限定域名

DNS:名称解析(背后有查询过程,数据库) 

              FQDN(域名) <--> IP(地址)

nsswitch:为多种需要实现名称解析的机制,提供名称解析的平台

主机本地/etc/hosts存放着主机名与IP地址之间的关系

当ping www.magedu.com的时候通过stub resolver名称解析器去寻找/etc/hosts文件

如果里面没有就去找DNS解析

hosts:

 IPADDR     FQDN           Ailaese

172.16.0.1  www.magedu.com www

早期的时候通过周期性任务去更新hosts中的信息,但是随着条目的越来越多;

IANA建立了Server服务器,客户提出请求,server返回请求

之后服务器也不好使了 ,出现了分布式数据库,就是把权限分片儿划分


                      DNS根域  


        .net          .com           .org    <----TLD顶级域

                     |    |            |

                 magedu    ibm       kernel

                  

TLD:常见的有三类:

               组织域:.com .org .net .cc

               国家域:.cn  .tw  .hk  .iq  .jp .ir

               反向域:将IP --> 主机名(FQDN)

               正向域:主机名(FQDN)--> IP  正反不是一个数据库

  

    

递归式:A问B B问C C答B B再告诉A

迭代式:A问B B回答说C懂 A再问C C再回答A 

 为了安全而言 DNS根域,不给任何人递归

我们常常这么玩:

例:ibm下有一台客户主机st1 想找www.magedu.com   (NS是一台服务器用于解析域名)

st1给NS发起请求,NS去找根域,根说.com知道NS又去找.com ;.com告诉你magedu知道,NS又去找magedu;magedu回复说我知道把信息返回给NS,NS就将这天信息储存了起来。

当sta2又想访问magedu的时候,对NS发起请求,就可以直接提取储存的地址   (对于st1来说是递归,对NS来说是迭代;对客户端来讲是递归,对服务器端来讲是迭代)

但是缓存也是有期限的,因为mageduIP是可能会改变的。缓存时长,跟你IP的变换频率相关     


但是NS服务器也是钱啊;其实一台服务器是可以供多个顶级域访问的

例:在根域下面,顶级域上面设置一台NS,这台机器的数据库叫授权数据库。他明确标识了顶级域的相信信息。

总结:

  查询:

   递归 :只发出一次请求

   迭代 :发出多次请求

  解析:

    正向:FQDN --> IP 

    反向:IP --> FQDN

    两段式:客户递归,服务器迭代

  DNS:分布式数据库

     上级仅知道其直接下级

     下级需要配置才能知道上级是谁

    TTL:返回的缓存时长,否定答案也是有缓存的,可以指定时长

  DNS服务器:

     接受本地客户端的查询请求(递归)

     外部客户端请求(请求权威答案) 


还有一种贱贱的可能性:ibm下面的用户去访问kernel的NS ,访问的是非权威答案

DNS只给自己片内的用户递归,不是片内的不给递归



19--2

全球跟服务器有13台,大多数在美国

NDS服务器:

    主DNS服务器:数据修改在这里完成(并提示辅助服务器,该更新了啊)

    辅助DNS服务器:请求数据同步(每隔一段时间就请求一次对对账本)

    主服务器挂了,辅助DNS就会定期去访问一下,超过规定时间自己也就挂掉了

    主DNS服务器有一个版本号,从DNS服务器也有一个版本号;主的一改变版本号就加1;从的发现主的变了,从的也就跟着变;;;所以我们要定义!!!

      serial number:版本号

      refresh:检查的时间周期

      retry :检查一次,主DNS没有给响应,定义重试时间

      expire:过期时间,辅助服务器殉职的时候

      nagative answer TTL:否则答案的缓存时长

  

总结

DNS服务器类型:

     缓存DNS服务器

    转发器

     主DNS服务器

     辅助DNS服务器

#########################################

FQDN:主机名 

###########################################

数据库中每一个条目称作一个资源记录

资源记录的格式:

资源一:

    NAME        TTL(可省;可以定全局)   IN    RRT(资源记录类型)  value

www.magedu,com.  600                    IN    A                  1.1.1.1

资源二:

1.1.1.1        600                      IN    PTR              www.magedu.com.

 

RRT:资源记录类型(靠它来标识谁是邮件服务器,等等)

     【SOA必须出现在区域数据文件的第一条,标明一个区域内多台DNS服务器是如何完成同步的】 

0、SOA:起始授权记录;标识区域之间如何同步数据   

           ZONE_NAME   TTL  IN   SOA   FQDN  ADMINISTRATOR_MAILBOX(邮箱地址)(

                        serial number 版本号

                        refresh  检查的时间周期

                        retry    主DNS没有给响应,定义重试时间

                        expire   过期时间

                        na ttl   否定答案的缓存时长)

         时间单位:M分钟 H小时 D天 W周 默认单位秒

         邮箱格式: admin.magedu.com (将@替换为.)

         @:他的意思代表区域名称

         正规写法一:

            maged.com.  600  IN  SOA  ns1.magedu.com.  admin.magedu.com.(

                                        2013040101版本号,不能超过10位

                                        1H   刷新时间1小时

                                        5M   5分钟做重试

                                        1W   过期时间1周

                                        1D  否定答案的缓存时长1天) 

                             【可以写在一行,括号可以省略,空格隔开,分号后可以跟注释】

            

                                             

1、NS: Name Server 从域名 --> FQDN

           格式:说明这个片的片长是这家伙:

              片名:        缓存时长                 主机名

              magedu.com.     600      IN    NS   ns.magedu.com.

              ns.magedu.com.  600      IN    A    1.1.1.2

5、MX:邮件交换器   从区域 --> FQDN 

    邮件服务器靠优先级 0-99,数字越小级别越高,一旦高级别不在线,次之顶上;

          ZONE_NAME    TTL  IN  MX   pri(优先级)   VALUE

          magedu.com.  600  IN  MX     10         mail.magedu,com.

          mail.magedu.com  600  IN  A  1.1.1.3  这条记录是FQDN -->主机名       

          [如果有多台DNS服务器,我们在定义域的时候就会标识谁是主谁是从]

 

2、A:FQDN --> IPv4    主机名转换成IP地址

3、AAAA:   FQDN --> IPv6 将主机名转换成IPv6

4、PTR: IP ---> FQDN      

6、CNAME: FQDN --> FQDN 别名记录;   www2是www的别名;www是www2的正式名称

     www2.magedu.com.    IN    CNAME    www.magedu.com.

7、TXT

8、CHAOS

9、SRV

######################################################################

域和区域的区别:

1、域:Domain 逻辑概念 域里面既要实现正向解析、又要实现反向,所以要建两个数据文件;他们加起来就是域。

2、区域:Zone 物理概念 区域就是域里面真正存储的数据文件


举例:我们获得了一个域名,又从ICANN获得了一个IP

    前提:我们在.com上明确定义、授权

    magedu.com.       IN        NS       ns,magedu.com.

    ns.magedu.com     IN        NS       192.168.0.10

    magedu.com.   192.168.0.0/24

   然后在咱们公司买好主机,布好网线,把哪台主机配置成192.168.0.10哪台机器就是DNS服务器(负责我们整个域内的网络的解析,我们有两台服务器分别是:

     www     192.168.0.1

     mail    192.168.0.2,MX  (这是邮件服务器)

     建立两个区域文件(正向反向)

       正向区域文件:  (简写用@替换)

      magedu.com./@   IN   SOA(第一条一定是SOA) NS  

       反向区域文件:(网段地址反过来写)

      0.168.192.in-addr.arpa.    IN   SOA

    PRT写法:FQDN -->IP

         www.magedu.com.   IN   A   192.168.0.1

     简写 www   IN   A   192.168.0.1   

    PTR写法:IP --> 主机名

           192.168.0.1  IN   PTR  www.magedu.com.

           不能简写

          1.0.168.192.in-addr.arp.    IN    PTR   www.magedu.com.

    简写:1   IN    PTR   www.magedu.com.   

############################################################

MX:只定义在正向当中

NS:记录正反都定义

A:只能定义在正向

PTR:只能定义在反向

############################################################

区域传送类型:

    完全区域传送:axfr 全部传送一遍

    增量区域传送L:ixfr 只传送改变的内容

区域类型:

    主区域:master 

    从区域:slave    

    提示区域: hint  定义根在什么地方

    转发区域:forward

##########################################################



你可能感兴趣的:(DNA工作原理)