DNS:Domain Name Service,协议(C/S,53/udp,53/tcp);应用层协议。

BIND:Bekerley Internat Name Domain,ISC(www.isc.org)

Top Level Domain:tld

  com,edu,mil,gov,net,org,int

  三类:组织域、国家域、反向域

DNS查询类型:

  递归查询

  迭代查询

名称服务器:域内负责解析本域内的名称的主机;

  根服务器:13组服务器

解析类型:

  Name --> IP

  IP --> Name

  注意:正反向解析是两个不同的名称空间,是两棵不同的解析树。

DNS服务器类型:

  主DNS服务器

  辅助DNS服务器

  缓存DNS服务器

  转发器

  

  主DNS服务器:维护所负责解析的域内解析库服务器;解析库由管理员维护;

  从DNS服务器:从主DNS服务器或其它的从DNS服务器那里“复制”(区域传递)一份解析库;

    序列号:解析库的版本号;前提:主服务器解析库内容发生变化,其序列号递增;

    刷新时间:从服务器从主服务器请求同步解析库的时间间隔;

    重试时长:从服务器从主服务器请求同步解析失败时,再次尝试的时间间隔;

    过期时长:从服务器始终联系不到主服务器时,多久之后放弃从服务器角色,停止提供服务;

    ”通知“机制:

  区域传送:

    全量传送:传递整个解析库。

    增量传送:传递解析库变化的那部分内容。

DNS:

  Domain:

    正向:FQDN --> IP

    反向:IP --> FQDN

    正向反向各需要一个解析库来分别负责本地域名的正向和反向解析

      正向区域

      反向区域

  FQDN:Full Qualified Domain Name

    www.magedu.com

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

  Client --> hosts文件 --> DNS Service

    Local Cache --> DNS Server(recursion) --> Server Cache --> iteration(迭代)

    解析答案:

      肯定答案;

      否定答案:请求的条目不存在等原因导致无法返回结果;

        

      权威答案;

      非权威答案;

区域解析库:由众多RR组成;

  资源记录:Resource Record,RR

    记录类型:A,AAAA,PTR,SOA,NS,CNAME,MX

    SOA:Start Of Authority,起始授权记录;一个区域解析库有且仅能有一个SOA记录,而必须为解析库的第一条记录;

    A:internet Address,作用,FQDN --> IP

    AAAA:FQDN --> IPv6

    PTR:PoinTeR,IP --> FQDN

    NS:Name Server,专用于标明当前区域的DNS服务器。

    CNAME:Canoical Name,别名记录。

    MX:Mail eXchanger,邮件交换器

  资源记录定义的格式:

    语法:name  [TTL]  IN  rr_type  value

    注意:

      (1)TTL可以从全局继承;

      (2)@可用于引用当前区域的名字;

      (3)同一个名字可以通过多条记录定义多个不同的值;此时DNS服务器会以轮询方式响应;

      (4)同一个值也可能有多个不同的定义名字;通过多个不同的名字指向同一个值进行定义;此仅表示通过多个不同的名字可以找到同一个主机而已。

    SOA:

      name:当前区域的名字,例如”magedu.com.";

      value:有多部分组成

        (1)当前区域的主DNS服务器的FQDN,也可以使用当前区域的名字;

        (2)当前区域管理员的邮箱地址;但地址中不能使用@符号,一般用.替代,例如linuxedu.magedu.com

        (3)(主从服务器协调属性的定义以及否定的答案的统一的TTL)  #属性就是笔记上面那些刷新时间啥的。

      例如:

      magedu.com   86400   IN   SOA   ns.magedu.com.   nsadmin.magedu.com.   (

              2015042201;序号

              2H               ;刷新时间

              10M             ;重试时间

              1W    ;过期时间

              1D               ;否定答案的TTL值

      )

    NS:

      name:当前区域的名字

      value:当前区域的某DNS服务器的名字,例如ns.magedu.com.;

        注意:一个区域可以有多个NS记录;

      例如:

      magedu.com   IN   NS   ns1.magedu.com.

      magedu.com   IN   NS   ns2.magedu.com.

      注意:

        (1)相邻的两个资源记录的name相同时,后续可省略

        (2)对NS记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录;

    MX:

      name:当前区域的名字

      value:当前区域的某邮件服务器(smtp服务器)的主机名;

        一个区域内,MX记录有多个;但每个记录的value之前应该有一个数字(0-99),表示此服务器的优先级;数字越小优先级越高;

      例如:

      magedu.com.   IN   MX   10   mx1.magedu.com.

               IN   MX   10   mx2.magedu.com.

      注意:

        (1)对MX记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录;

    A记录:

      name:某主机的FQDN,例如www.magedu.com.

      value:主机名对应主机的IP地址;

      例如:

        www.magedu.com.   IN   A   1.1.1.1

        www.magedu.com.   IN   A   1.1.1.2

        mx1.magedu.com.    IN  A    1.1.1.3

        mx2.magedu.com.    IN  A    1.1.1.3

      注意:

        *.magedu.com.    IN    A    1.1.1.4

        magedu.com.    IN    A    1.1.1.4

        避免用户写错名称时给错误答案,可通过泛域名解析进行解析至特定地址;

    AAAA:

      name:FQDN

      value:IPv6

    PTR:

      name:IP,有特定格式,把IP地址反过来写,1.2.3.4,要写作4.3.2.1;而有特定后缀:in-addr.arpa.   所以完整写法为:4.3.2.1.in-addra.arpa.

      value:FQDN

      例如:

        4.3.2.1.in-addr.arpa.  IN  PTR  www.magedu.com

        简写成:

          4  IN  PTR  www.magedu.com.

        注意:网络地址及后缀可省略;主机地址依然需要反着写;

    CNAME:

      name:别名的FQDN

      value:正式名字的FQDN;

      例如:

        web.magedu.com  IN  CNAME  www.magedu.com.

    

Linux:Day18(上) dns服务基础进阶的更多相关文章

  1. DNS服务基础原理介绍

    FQDN 全称域名 localhost(主机名或者是别名).localdomain(域名)    FQDN=主机名.域名 根域               . 顶级域名       .com   .n ...

  2. Bind DNS服务——基础知识

    Linux基础--Bind DNS服务 Part0 DNS简介 域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库 ...

  3. LINUX中的DNS服务---高速缓存DNS

    一.什么是DNS     Domain Name System,域名系统.     万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网.他主要负责把域名和IP的相互转换 ...

  4. 监控Linux服务器上python服务脚本

    提供给公司使用的测试平台这两天频繁地挂掉,影响到相关同事的正常使用,决定在服务器上写个监控脚本,监控到服务挂了就启动起来,一分钟检查一次.注:后台服务使用的是python.监控脚本如下: NUM=`p ...

  5. LINUX中的DNS服务---DNS集群

    一.DNS集群的理解 在使用DNS的时候,为了缓解服务器的压力,会使用多个辅助DNS服务器来分担主DNS的工作.这些DNS就叫做DNS集群. 二.配置过程 1)在辅DNS中操作如下:(主机号为172. ...

  6. LINUX中的DNS服务---DNS正向、反向和双向解析

    一.DNS的正向解析 也就是域名解析为IP地址进行访问! 1)vim  /etc/named.conf   ---->  删除forwarders所在行 2)vim  /etc/named.rf ...

  7. 1、DNS服务基础

    w'indows上名称解析目录: C:\Windows\System32\drivers\etc https://jocent.me/2017/06/18/dns-protocol-principle ...

  8. DNS服务基础

    DNS服务器的功能 – 正向解析:根据注册的域名查找其对应的IP地址 – 反向解析:根据IP地址查找对应的注册域名(不常用) NS(声明DNS记录) A(正向解析记录) CNAME(解析记录别名) 安 ...

  9. Linux 域名和DNS

    名字解析的作用: TCP/IP网络中,设备之间的通信依赖IP地址来实现,但是IP地址不好记忆,所以就将每一台设备用一个名字来进行标识,但是这个名字计算机不能解析.所以就需要借助名字解析服务来实现将名字 ...

随机推荐

  1. Java线程组(ThreadGroup)使用

    JDK 对线程组类注释: A thread group represents a set of threads. In addition, a thread group can also includ ...

  2. Gradle的一些技巧和遇到的问题

    全局变量的使用 在多个module的情况下,不同module的build.gradle文件中有部分配置项类似,或者依赖的类库,有部分是相同的,在维护上不是很方便,这个时候就可以考虑统一配置.在项目根目 ...

  3. ajax data属性传值的方式总结

    在和后台同事对接口的时候,有一个小问题一直困扰着我.那就是用ajax请求后台接口数据,需要用data属性传值的时候,data属性传值的方式感觉没有统一用一种方式. 后来仔细想想,其实哪种方式都可以,主 ...

  4. jenkins 自动化部署实战

    jenkins 作为一个自动化的集成工具,已经是必不可少的了.它里面提供各种插件,以及完备的基础流程设施,为大家的自动化集成之路提供了很多的方便.所以,我们有必要完整的实践一回.以切身体会到它的好处! ...

  5. qml demo分析(clocks-时钟)

    一.效果展示 效果如图1所示,时钟列表支持鼠标左右拖动,带有黑色背景的是晚上时钟,无黑色背景的是白天时钟 二.源码分析 1.main.cpp文件中只包含了一个宏,该宏的具体解释请看qml 示例中的关键 ...

  6. 《深入理解Java虚拟机》-----第7章 虚拟机类加载机制——Java高级开发必须懂的

    代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步. 7.1 概述 上一章我们了解了Class文件存储格式的具体细节,在Class文件中描述的各种信息,最终都需要 ...

  7. springboot~thymeleaf页面布局的步骤

    参考:https://ultraq.github.io/thymeleaf-layout-dialect/Installation.html 依赖包 注意里面的thymeleaf-layout-dia ...

  8. Tomcat 对 HTTP 协议的实现(下)

    在<Tomcat 对 HTTP 协议的实现(上)>一文中,对请求的解析进行了分析,接下来对 Tomcat 生成响应的设计和实现继续分析.本文首发于(微信公众号:顿悟源码) 一般 Servl ...

  9. 【面试】我是如何在面试别人Spring事务时“套路”对方的

    “中国最好面试官” 自从上次写了一篇“[面试]我是如何面试别人List相关知识的,深度有点长文”的文章后,有读者专门加我微信,说我是“中国最好面试官”,这个我可受不起呀. 我只是希望把面试当作是一次交 ...

  10. c# 正则表达式替换字符串中常见的特殊字符

    第一种,若字符串中含有字母,则使用以下方法 public static string RemoveSpecialCharacterToupper(string hexData) { //下文中的‘\\ ...