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基础——多线程(持续更新中)

    如何建立一个执行路径呢? 通过查询API文档 java.lang.Thread类 该类的描述中有创建线程的两种方式 1.继承Thread类 (1).将类声明为 Thread 的子类 (2).该子类应重 ...

  2. MacBook IDEA激活码(附视频)

    Windows激活请看这里:IDEA激活码 此教程实时更新,请放心使用:如果有新版本出现猪哥都会第一时间尝试激活: idea官网下载地址:https://www.jetbrains.com/idea/ ...

  3. 在Windows上使用Docker运行.NetCore

    今天我们来说下如何在windows下使用docker运行.net core,既然是docker,那么我们首先得在windows上安装docker. 在Windows安装 docker 有两种选择 :1 ...

  4. Maven常用命令:

    Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ 一,Maven常用命令: 1. 创建Maven的 ...

  5. LindDotNetCore~Aspect面向方面编程

    回到目录 Aspect面向方面编程 面向侧面的程序设计(aspect-oriented programming,AOP,又译作面向方面的程序设计.观点导向编程.剖面导向程序设计)是计算机科学中的一个术 ...

  6. DSAPI 图形图像篇(上)

    彩色文字对象 基于一些特殊需求,本人开发了彩色文字对象,该功能通过类似html代码的方式指示文本,并输出图像. 我们还是先来看一张图像. 这不是文本,是通过指定文本代码输出的图像.我们来看一下实现代码 ...

  7. WinForm客户端限速下载(C#限速下载)

    最近由于工作需要,需要开发一个能把服务器上的文件批量下载下来本地保存,关键是要实现限速下载,如果全速下载会影响服务器上的带宽流量.本来我最开始的想法是在服务器端开发一个可以从源头就限速下载的Api端口 ...

  8. 【Tomcat】Tomcat工作原理及简单模拟实现

    Tomcat应该都不陌生,我们经常会把写好的代码打包放在Tomcat里并启动,然后在浏览器里就能愉快的调用我们写的代码来实现相应的功能了,那么Tomcat是如何工作的? 一.Tomcat工作原理 我们 ...

  9. 对HTML5标签的认识(三)

    这篇随笔继续来认识HTML标签.这次随笔主要是对<table>标签的认识和最近我学习到的一些标签来和大家分享. 一.<table>标签 <table>标签的作用主要 ...

  10. VSCode瞎折腾记

    搬到小机房后终于能用VSCode啦(没错以前的系统是xp) 但是这东西比Dev难搞多了qwq,简单记一下自己的DIY历程吧(不然全搞炸就凉了) 设置语言为中文 可以直接下载插件 让VSCode支持编译 ...