DNS查询以多种方式解决. 有时,客户端还可以使用从先前查询中获得的缓存信息来就地回答查询. DNS服务器可以使用其自己的资源记录信息缓存来回答查询. DNS服务器还可以代表发出请求的客户端查询或联系其他DNS服务器,以完全解析该名称,然后将响应返回给客户端. 此过程称为递归.

此外,客户端本身也可以尝试与其他DNS服务器联系以解析名称. 客户端执行此操作时,它将基于服务器的参考答案使用其他独立查询. 这个过程称为迭代.

只要发出递归查询,服务器就必须回答目标IP与域名之间的映射关系.

迭代查询是服务器收到对迭代查询的响应并返回结果. 此结果不一定是目标IP与域名之间的映射关系,而是其他DNS服务器的地址.

如图所示: 从客户端到本地DNS服务器是递归查询,DNS服务器之间的交互查询是迭代查询.

2010-10-13 14:09上传

下载附件(81.93 KB)

简而言之,DNS查询过程分为两个部分:

名称查询从客户端计算机开始,并发送到DNS客户端服务程序以进行解析.

当查询无法到位解析时,您可以查询DNS服务器以根据需要解析名称.

以下各节将更详细地说明这两个过程:

第1部分: 本地解析器

下图显示了完整的DNS查询过程的概述.

如查询过程的初始步骤所示,本地程序使用DNS域名. 然后,该请求将传递到DNS客户端服务以使用本地缓存的信息进行解析. 如果查询的名称可以解析,则回答查询并完成该过程.

本地解析器的缓存可以包含从两个可能的来源获得的名称信息:

如果在本地配置了主机文件,则在DNS客户端服务启动时,从该文件到地址映射的任何主机名都将被预加载到缓存中.

从对先前DNS查询响应的响应中获得的资源记录将添加到缓存中,并保留一段时间.

如果此查询与缓存中的项目不匹配,则解析过程将继续,客户端将查询DNS服务器以解析名称.

第2部分: 查询DNS服务器

如上图所示,客户端将查询首选的DNS服务器. 从全局列表中选择此过程的初始客户端/服务器查询部分中使用的实际服务器. 有关如何编译和更新此全局列表的详细信息,请参阅客户端功能.

当DNS服务器接收到查询时,它首先根据在服务器的本地配置区域中获得的资源记录信息检查是否可以做出权威响应. 如果查询的名称与本地信息中的相应资源记录匹配,则使用该信息来解析查询的名称,然后服务器做出权威响应.

如果区域信息中没有查询的名称,则服务器将检查是否可以使用上一次查询中的本地缓存信息来解析名称. 如果找到匹配的信息,则服务器使用该信息来回答查询. 然后,如果首选服务器可以使用来自其缓存的肯定匹配响应来响应发出请求的客户端,则查询完成.

如果查询的名称(无论是从缓存还是从区域信息)在首选服务器中都找不到匹配的答案,则查询过程可以继续,使用递归完全解析该名称. 这涉及其他DNS服务器的支持dns 关闭递归查询,以帮助解析名称. 默认情况下,DNS客户端服务要求服务器使用递归过程来代表客户端完全解析名称,然后返回答案. 在大多数情况下,默认情况下,DNS服务器都配置为支持递归过程,如下图所示.

为了使DNS服务器正确执行递归过程,必须在DNS域名空间中具有一些有关其他DNS服务器的有用联系信息. 此信息以根提示的形式提供. 它是初始资源记录的列表. DNS服务可以使用这些记录来查找其他DNS服务器. 他们对DNS域名空间树的根拥有绝对控制权. 根服务器对DNS域名空间树中的根域和顶级域具有绝对控制权. 有关更多信息,请参阅更新根提示.

使用根提示查找根服务器. DNS服务器可以递归使用. 从理论上讲,此过程使DNS服务器可以对那些完全控制在域名空间树的任何级别使用的任何其他DNS域名的服务器启用.

例如,当客户端查询单个DNS服务器时,请考虑使用递归过程查找名称“ host-b.example.microsoft.com”. 首次启动DNS服务器和客户端时,并且没有本地缓存​​信息可帮助解决名称查询时,将执行上述过程. 根据其配置区域,假定客户端查询的名称是域名,而服务器对域名没有本地了解.

首先,首选服务器分析全名,并确定对顶级域“ com”进行权威控制所需的服务器位置. 随后,在“ com” DNS服务器上使用迭代查询来获取“ microsoft.com”服务器的参考信息. 然后dns 关闭递归查询,来自“ microsoft.com”服务器的引用响应将传输到“ example.microsoft.com”的DNS服务器.

最后,联系服务器“ example.microsoft.com”. 由于服务器将查询名称作为其配置区域的一部分,因此它对开始递归的源服务器做出权威性的响应. 当原始服务器收到指示已获得对所请求查询的权威响应的响应时,它将响应转发给发出请求的客户端,从而完成了递归查询过程.

尽管执行上述递归查询过程可能需要大量资源,但对于DNS服务器仍具有一些性能优势. 例如,在递归过程中,执行递归查询的DNS服务器获取有关DNS域名空间的信息. 该信息由服务器缓存,可以再次使用,以提高使用此信息或与之匹配的后续查询的响应速度. 尽管在打开和关闭DNS服务时将清除缓存信息,但随着时间的推移,它们将继续增加并占用大量服务器内存资源.

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/jisuanjixue/article-181714-1.html

dns迭代查询配置_DNS迭代查询和递归查询相关推荐

  1. dns迭代查询配置_dns解析?瞅瞅这篇文章

    dns( Domain Name System),顾名思义,就是用来将主机名和域名转换为IP地址的系统,那么dns是怎么运作的呢,本文简单记录下龙叔的理解 1·研究环境 为了研究dns,当然要自己搭建 ...

  2. Centos 安装DNS服务器并配置无查询结果转发功能

    文章目录 什么是DNS 安装DNS服务 安装软件包 启动DNS服务 iptables 放行53号端口 修改DNS服务的配置文件 修改主配置文件 设置转发器 修改主域文件 修改域文件 测试结果 修改本机 ...

  3. DNS同时占用UDP和TCP端口53——传输数据超过512时候用tcp,DNS服务器可以配置仅支持UDP查询包...

    DNS同时占用UDP和TCP端口53是公认的,这种单个应用协议同时使用两种传输协议的情况在TCP/IP栈也算是个另类.但很少有人知道DNS分别在什么情况下使用这两种协议. 先简单介绍下TCP与UDP. ...

  4. .NET应用架构设计—面向查询服务的参数化查询设计(分解业务点,单独配置各自的数据查询契约)...

    阅读目录: 1.背景介绍 2.对业务功能点进行逻辑划分(如:A.B.C分别三个业务点) 2.1.配置映射关系,对业务点配置查询契约(构造VS插件方便生成查询契约) 2.2.将配置好的映射策略文件放在调 ...

  5. 日常工作问题解决:centos7下配置网卡以及查询网卡UUID

    日常工作问题解决:centos7下配置网卡以及查询网卡UUID 参考文章: (1)日常工作问题解决:centos7下配置网卡以及查询网卡UUID (2)https://www.cnblogs.com/ ...

  6. linux配置MYSQL慢查询的一些错误解决方案

    linux配置MYSQL慢查询的一些错误解决方案 参考文章: (1)linux配置MYSQL慢查询的一些错误解决方案 (2)https://www.cnblogs.com/wuqichuan666/p ...

  7. MySQL慢查询配置和使用

    当数据库速度相应慢是,解决慢查询问题是非常重要的手段,通过以下配置可以开启慢查询. 一.检查是否启动慢查询配置 show variables like '%log_output%'; show var ...

  8. Java @queryhint_11个JPA和Hibernate查询配置小技巧

    11个JPA和Hibernate查询配置小技巧 JPA和Hibernate提供了一系列暗示hints能够帮助你更好地定制你的查询语言,这些小暗示或暗语是一种附加信息,你可以利用这些暗语做很多事情,比如 ...

  9. 通过velocity自定义模板字符串实现可配置的外部调用查询接口

    背景公司的系统被其他很多行内系统调用,查询某一个实体信息但是由于安全管控,每个系统调用我们系统获得的字段是不一样的.目前有两种方案可以实施: 1.利用行内的数仓系统,将表备份,然后通过数据交换平台sf ...

最新文章

  1. CountDownLacth详解
  2. 2017.5.6 联合权值 思考记录
  3. JAVA导出excel如何设置表头跨行或者跨列,跪求各位大神了
  4. webform窗体怎么实现session唯一标识_微信小程序用户登录和登录态维护的实现_javascript技巧...
  5. js加载本地shp数据到地图上_地图服务矢量数据获取方法总结
  6. SQL常见面试题总结
  7. android半透明引导页
  8. 安卓接入融云即时通讯的简单步骤
  9. 华为薪资等级结构表2020_[新版文件]2020年华为员工标准岗位工资明细及分析
  10. ENVI_IDL:批量拼接Modis Swath的逐日数据并输出为Geotiff格式
  11. 冷色系清新调、日系清新调 、电影色调复古风、欧美风复古,用曲线就可以调了!!!...
  12. 利用Catmull-Rom算法画人脸轮廓
  13. iOS 判断是否为iPhoneX以上设备
  14. ABAQUS均布载荷的悬臂梁静力学计算
  15. 960帧高速摄影原理及知识普及(红米K20Pro)
  16. mysql.server 脚本解析
  17. 基于ArcGIS Pro城市用地适宜性评价
  18. 云计算与人工智能的结合及其应用
  19. cron每半个小时执行一次
  20. 2023年市场增长10倍,云安全成香饽饽了?

热门文章

  1. CAD系统变量之GRIPS
  2. 智力题——5L的桶和3L的桶如何装4L的水
  3. [区块链安全-Damn-Vulnerable-DeFi]区块链DeFi智能合约安全实战-连载中
  4. mySQL数据库Sql语句执行效率检查--Explain命令
  5. 美颜相机毕设项目零基础教学
  6. 萌斗三国服务器维护,FAQ_萌斗三国_九游手机游戏
  7. 昨日日期 php,php昨天日期_PHP日期实例 php获取今天、昨天、明天的日期
  8. 财务报表之资产负债表
  9. 基于easyx 下用C播放音乐
  10. 用计算机算鞋码,鞋码怎么计算?鞋子尺码测量图