DNS基础知识

一、DNS介绍:

  1、DNS: Domain  Name Service,域名解析服务

     部署方式为分布式部署,如图所示:

q.png

    

  2、查询类型:

    递归查询:仅发出一次请求,要求对方回复最终结果 

    迭代查询:对方响应的可能是个参考答案

  3、解析类型:

    正向解析:FQDN———>IP 

    反向解析:IP———>FQDN

  4、区域类型:    

    domain:域,逻辑空间

    zone:区域,物理空间

  5、区域解析库数据库包含:

      资源记录:resource record,简称为rr  

       资源记录类型: recourse record type 

         SOA:起始授权记录,一个区域文件有且只能有一个SOA记录,SOA还必须是第一次资源记录

         MX : 邮件交换器,负责处理邮件信息

         NS : 名称服务器

         A : FQDN——>IPv4

         AAAA: FQDN—–>IPv6

         PTR : 指针,IP—–>FQDN

         CNAME : 正式名称

   6、服务器响应结果类型:

     权威应答; 

     非权威应答;

   7、服务器类型

     主DNS类型:负责某区域解析的服务器;对区域所有的更新都在此服务进行;

     从DNS类型负责某区域解析的服务器;但不负责更新操作,只从同一个区域的主服务器或从服务器同步区域数据文件

     DNS缓存服务器不负责任何区域的权威应答,仅用于帮执行此DNS服务器的客户端做递归查询

    

   8、DNS服务器的主从协调过程: 周期性检查 + 通知

      (1)需要在主服务器定义以属性下信息(在SOA中定义)

          区域数据文件版本号(序列号)serial

          刷新时间(检查周期): refresh

          重试时间(重试周期): retry, 此值要小于刷新时间

          过期时间(失效时长): expire

     (2)协调过程

         从服务器在时间间隔到refresh指定的时长后发起同步请求至主服务器;主服务器响应serial,从服务器与本地serail进行比较;如果主服务器serial大于本地serial,意味着主服务器区域数据库文件跟新了,因此请求同步更新。

      (3)notify机制即使刷新时间未到;主服务器为了能让从服务器及时得到最新数据,会触发从服务器更新请求。       

    

   9、DNS区域传送类型:

     完全区域传送axfr

    增量区域传送: ixfr

二、资源记录定义格式:

  语法: name [ttl]    IN   rr_type  value

   以mylinux.com.为例;

  1、SOA定义:

     name:区域名称

     value: 

      (1)主DNS服务器的FQDN,或者当前区域名称

      (2)当前区域管理员邮箱;@表示当前区域的名字,所以邮箱地址中不能出现@符号

      (3)主从服务器协调属性和否定应答的TTL值

     例如:mylinux.com.   IN  SOA  mylinux.com.  admin.mylinux.com. (

                         2015051301 ; serial

                         1H ; refresh

                         5M ; retry

                         1D ; expire

                         5H); TTL

  2、NS定义:

     一个区域数据库文件可以有多个NS记录;

     name:区域名称,可使用@代替

     value:dns服务器的FQDN

    例如: @   IN  NS  ns1.mylinux.com.

             IN  NS  ns2.mylinux.com.

     注意事项:

        (1)相邻的资源记录类型name相同时,后面的可省略

         (2)在任何一个value中指定的FQDN;在其域的正向解析文件中应该有记录

 3、MX定义:

     一个区域数据库文件中可以有多个MX记录;

    name区域名称,可使用@代替

    value邮件服务器的FQDN,在value之前还有一个数字表示优先级,0-99,数字越小优先级越高

   例如@  IN  MX  10  mail.mylinux.com.

           IN  MX  20  mail2.mylinux.com.

 4、A/AAAA定义:

      应用于正向区域文件

     nameFQDN

     valueIP 

    例如: www.mylinux.com.    IN  A  1.1.1.1

          www.mylinux.com.    IN  A  2.2.2.2

 5、PTR定义:

     应用于反向区域文件

    name: IP地址的逆向书写格式;并附加.in-addr.arpa.后缀

    value: FQDN

   例如10.168.192.in-addr.arpa.  IN    PTR   www.mylinux.com.

 6、CNAME定义:

     name:别名FQDN

     value: 正名FQDN

   例如: web.mylinux.com.   IN  CNAME  www.mylinux.com.

三、BIND介绍

   1、BIND: Berkeley   Internet   Name  Domain 

       是dns服务的实现方式

   

   2、bind工作端口:

        udp/53: 主要用于DNS解析服务

        tcp/53: 主要用于区域传送

   3、程序包:bind
       服务器程序:named

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

       服务脚本:/etc/rc.d/init.d/named

       主配置文件: /etc/named.conf ; /etc/named.rfc1912.zones

       区域解析库: /var/named/zonefile.zone

   

   4、主配置文件格式:/etc/named.conf

      optios{

       ………..;

       };

        全局配置文件,定义named工作特性

     logging { 

      ………..;

      };

        定义日志功能

  

     zone {

     ………..;

      };

      定义本named进程负责解析的区域,zone可以有多个

    注释类型:

     //: 代表单行注释

     /*…….*/: 代表多行注释

      

原创文章,作者:马行空,如若转载,请注明出处:http://www.178linux.com/4375

(0)
马行空马行空
上一篇 2015-05-18
下一篇 2015-05-18

相关推荐

  • bash功能特性五 重定向和管道

    一、管道     使用“|”符号来实现管道功能;管道可以实现在一行中处理使用管道符号连接的多个命令,后面的命令使用前面命令的输出结果做为处理对象。 二、数据流重定向     数据输入和输出的类型:         标准输入(std…

    Linux干货 2015-04-21
  • 整型、浮点型在内存中的存储方式

      在学习C语言的过程中,有时候会想,数据到底是以什么样的方式在内存中存储的呢?经过一段时间的查阅资料,小编终于整理了一些…… 以VC6.0编译器为测试环境(int型为4Byte) 先简介一下大小端模式,具体资料可参考 http://blog.csdn.net/ce123_zhouwei/article/details/6971544  …

    Linux干货 2016-01-14
  • Linux用户与用户组的详解

    添加用户   创建或添加新用户使用useradd命令来实现,其命令用法为:   useradd [option] username   该命令的option选项较多,常用的主要有:   -c 注释      用户设置对账户的注释说明文字  …

    Linux干货 2016-08-05
  • RAID简介

    RAID是什么? RAID英文名字叫Redundant Arrays of Independent Disks,也叫磁盘阵列?阵列有是什么意思?通俗的理解就是把很多的硬盘组织在一起来使用。       RAID可以根据性能来划分为两种:有无冗余(容错)能力     &n…

    Linux干货 2016-02-14
  • 单台主机lnmp+wordpress配置示例

    单台主机lnmp+wordpress fpm配置 ]# yum install php php-fpm php-mysql –y ]# vim /etc/php-fpm.d/www.conf 配置服务监听地址和程序运行者身份 listen = 127.0.0.1:9000 user = nginx group = nginx ]# chown -R ngin…

    Linux干货 2016-11-07
  • 测试so接口函数的脚本 [python]

    下面是一个测试solib库中调用函数的测试脚本,但该脚本还存在这一些问题,我目前无法理解和解决; 问题: 1.我定义了logging采用日志滚动的方式,写日志,并且每个日志的大小是20M,但测试结果发现日志连1M都没到就开始轮转了,并且在轮转过程中,还出现logging写日志,却发现,日志轮转了,结果竟然报了,轮转日志不存在。 Traceback (most…

    Linux干货 2016-01-05

评论列表(1条)

  • Pavel86
    Pavel86 2015-07-15 19:58

    楼主辛苦,写得很详细,个人感觉很受教,非常感谢!