DNS域名解析服务

DNS:Domain Name Service

基于C/S架构的应用层协议
port:53/udp(用于名称解析),53/tcp(用于区域传送)

DNS域的类别:

  1. . :根域(用.号表示)
  2. tld:顶级域(Top Level Domain)
      组织域:.com,.net,.org,.gov,.edu,.mil,...
      国家或地区域:.cn,.us,.uk,.es,.de,.jk,.hk,.tw,...
  3. 二级域:
  4. 三级域:

注意:域的级别在FQDN中从右往左看,越靠右侧,级别越高;

DNS查询类型:

  1. 递归查询(recursion):如果主机所询问的本地域名服务器不知道被查询的域名的IP地址,那么本地域名服务器就以DNS客户端的身份,向其它根域名服务器继续发出查询请求报文(即替主机继续查询),而不是让主机自己进行下一步查询。
  2. 迭代查询(iteration):当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地服务器进行后续的查询。根域名服务器通常是把自己知道的顶级域名服务器的IP地址告诉本地域名服务器,让本地域名服务器再向顶级域名服务器查询。顶级域名服务器在收到本地域名服务器的查询请求后,要么给出所要查询的IP地址,要么告诉本地服务器下一步应当向哪一个权限域名服务器进行查询。

DNS名称解析方式:

名称 --> IP:正向解析;
IP --> 名称:反向解析;

注意:二者的名称空间,非为同一个空间,即非为同一个树状结构;因此,也不是同一个解析库;

DNS服务器类型:

  • 负责解析至少一个域:
     主名称服务器;
     辅助名称服务器;
  • 不负责解析:
     缓存名称服务器;

一次完整的查询请求经过的流程:

 Client --> hosts文件 --> DNS Local Cache --> DNS Server(recursion) -->
  自己负责解析的域:直接查询数据库并返回答案;
  不是自己负责解析域:Server Cache --> iteration(迭代)

解析答案:
 肯定答案:
 否定答案:不存在查询的键,因此,不存在与其查询键对应的值;

 权威答案:由直接负责的DNS服务器返回的答案;
 非权威答案:由缓存服务器返回的答案;


主-辅DNS服务器:

  • 主DNS服务器:维护所负责解析的域的数据库的那台服务器;读写操作均可进行;
  • 从DNS服务器:从主DNS服务器哪里或其它的从DNS服务器那里“复制”一份解析库;但只能进行读操作;

“复制”操作的实施方式:

序列号:也即是数据库的版本号;主服务器数据库内容发生变化时,其版本号递增;
刷新时间间隔:refresh,从服务器每多久到主服务器检查序列号更新状况;
重试时间间隔:retry,从服务从主服务器请求同步解析库失败时,再次发起尝试请求的时间间隔;
过期时长:expire,从服务器始终联系不到主服务器时,多久之后放弃从主服务器同步数据;停止提供服务;
否定答案的缓存时长:

区域(zone)和域(domain):

域由正向和反向两个区域组成;
例:google.com域(domain)
   FQDN --> IP
    正向解析库,叫做正向解析区域(zone);
   IP --> FQDN
    反向解析库,叫做反向解析区域(zone);

主服务器“通知”从服务器随时更新数据;

区域(zone)传送:
 全量传送:axfr,传送整个数据库;
 增量传送:ixfr,仅传送变化的数据;

区域数据库文件:

  • 资源记录:Resource Record,简称rr;
  • 记录类型:
    SOA:Start Of Authority,起始授权记录;一个区域解析库只能有一个SOA记录,而且必须放在第一条;
    NS:Name Service,域名服务记录;一个区域解析库可以有多个NS记录;其中一个为主的;
    A:Address,地址记录,FQDN --> IPv4;
    AAAA:地址记录,FQDN --> IPv6;
    CNAME:Canonical Name,别名记录;
    PTR:Pointer,IP --> FQDN;
    MX:Mail eXchanger,邮件交换器;
      优先级:0-99,数字越小优先级越高;

资源记录的定义格式:

  • 语法:name [TTL] IN RR_TYPE value
  • SOA:
     name:当前区域的名字;例如"magedu.com",或者"2.3.4.in_addr.arpa.";
     value:有多部分组成
      1. 当前区域的区域名称(也可以使用主DNS服务器名称);
      2. 当前区域管理员的邮箱地址;但地址中不能使用@符号,一般使用点号来替代;
      3. (主从服务协调属性的定义以及否定答案的TTL)
    • 例如:
      [root@node1 ~]# cat /var/named/named.localhost 
      magedu.com.  86400  IN SOA  magedu.com. admin.magedu.com. (
                                              0       ; serial
                                              1D      ; refresh
                                              1H      ; retry
                                              1W      ; expire
                                              3H )    ; minimum
      
  • NS:
     name:当前区域的区域名称
     value:当前区域的某DNS服务器的名字,例如ns.magedu.com.;
      注意:一个区域可以有多个ns记录;
    • 例如:
      magedu.com.  86400  IN  NS  ns1.magedu.com.
      magedu.com.  86400  IN  NS  ns2.magedu.com.
      
  • MX:
     name:当前区域的区域名称
     value:当前区域某邮件交换器的主机名;
      注意:MX记录可以有多个,但每个记录的value之前应该有一个数字表示其优先级;
    • 例如:
      magedu.com.        IN  MX  10  mx1.magedu.com.
      magedu.com.        IN  MX  20  mx2.magedu.com.
      
  • A:
     name:某FQDN,例如www.magedu.com
     value:某IPv4地址;
    • 例如:
      www.magedu.com.        IN  A    1.1.1.1
      www.magedu.com.        IN  A    1.1.1.2
      bbs.magedu.com.        IN  A    1.1.1.1
      
  • AAAA:
     name:FQDN
     value:某IPv6地址;
  • PTR:
     name:IP地址,有特定格式,IP反过来写,而且加特定后缀;例如1.2.3.4的记录应该写为4.3.2.1.in-addr.arpa.
     value:FQDN
    • 例如:
      4.3.2.1.in-addr.arpa.        IN  PTR    www.magedu.com.
      
  • CNAME:
     name:FQDN格式的别名;
     value:FQDN格式的正式名字;
    • 例如:
      web.magedu.com.        IN  CNAME    www.magedu.com.
      

注意:
 1. TTL可从全局继承;
 2. @表示当前区域的名称;
 3. 相邻的两条记录其name相同时,后面的可省略;
 4. 对于正向区域来说,各MX,NS等类型的记录的value为一个FQDN,此FQDN应该有一个A记录;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345