DNS递归查询与迭代查询

DNS递归迭代查询次数计算 DNS递归迭代查询次数计算@(计算机网络)设计缘由 理论上说,整个因特网可以只用一个域名服务器。使它装入因特网上所有的主机域名,并回答所有对IP地址的查询。 但是这么做,这个服务器肯定扛不住,因为因特网太大了。而且一旦这个服务器宕机了,整个因特网就要崩溃,瘫痪。由此,引入的是层次树状结构,用的是分布式域名系统。在域名服务器的层次结构中要仔细体会分布式从哪里得到保证。因特网的域名系统时联机分布式 阅读详情

DNS递归查询与迭代查询


summary

一直以来对于DNS查询的“递归”与“迭代”方式感到困惑。一般人就直接跟你说“DNS客户端向DNS服务器请求叫递归查询”,“DNS服务器之间的查询请求是迭代查询”,听了之后根本不知所谓。。。直到我看了《网络操作系统——windows server 2003配置与管理》(陈景亮主编)一书,明白了具体情况。以下主要是“摘抄”,包括附图。不自己整理,主要是因为它写得确实好,而且组织起来有一定的麻烦性。

递归查询

递归查询要求DNS服务器在任何情况下都要返回结果。一般DNS客户端向DNS服务器提出的查询请求属于递归查询。标准递归查询过程如下图:

递归查询

假设域名为test1.abc.com的主机要查询域名为www.info.xyz.com的服务器的IP。

    第一步:向本地DNS服务器abc.com查询;
    第二步:本地DNS服务器查询不到,则通过根提示文件向负责.com顶级域的根DNS服务器查询;
    第三第:根DNS服务器根据所查询域名中的“xyz.com”再向xyz.com DNS服务器查询;
    第四步:xyz.com DNS服务器直接解析域名www.info.xyz.com,将查询结果按照原路返回给请求查询客户端test1.abc.com

递归与迭代相结合的查询

采用上边的递归查询方法,根DNS服务器需要经过逐层查询才能获得查询结果,效率很低,而且还会增加根DNS服务器的负担。为了解决这个问题,实际上采用递归与迭代相结合的查询方式,如图:

递归+迭代查询

查询过程如下:

    第一步:向本地DNS服务器abc.com查询;
    第二步:本地DNS服务器查询不到,则通过根提示文件向负责.com顶级域的根DNS服务器查询;
    第三步:根DNS服务器直接将下属的DNS服务器IP地址返回给本地DNS服务器;
    第四步:本地DNS服务器直接向xyz.com DNS服务器查询。

这其中,迭代查询将对DNS服务器进行查询的任务交给DNS客户端,DNS服务器只是给客户端返回一个提示,告诉它到另一台DNS服务器继续查询,直到查到所需结果为止。如果最后一台DNS服务器也不能提供所需答案,则宣告查询失败。所以说“一般服务器之间的查询请求属于迭代查询”。

个人理解

单独地讲什么是递归查询什么是迭代查询是没有意义的,递归和迭代本身就是在一个群体(不是1也不是2的数量)中的行为方式,直接说“DNS客户端向DNS服务器请求叫递归查询”,“DNS服务器之间的查询请求是迭代查询”,从概念上来说就是错的。

那现在我们可以来讲讲,为什么叫它“递归查询”?“迭代查询”?

从第一个例子中,我们站在test1.abc.com的角度看,发出了查询请求后,这个请求通过一层一层递交,直到最后得到了一个明确的解析结果才把它返回给test1.abc.com。这过程就看出来它是递归的。

从第二个例子中,我们站在abc.com服务器的角度看,发出了查询请求后,查询结果直接返回来了,如果没有解析出来,那么我们就进行下一次查询(根据返回的指引),这样是一次次重复同样的操作的,这个叫做迭代。而我们上边说到的的“递归结合迭代”,这里的递归在于进行操作的并不直接是我们的test1.abc.com主机,而是abc.com,查询主机test1.abc.com也是在最后才收到一个最终的查询结果哦,就像递归例子讲的那样。

DNS协议(wireshark进行分析,图示递归查询迭代查询 DNS协议(Domain Name System)就是将IPv4地址IPv6地址一大串鬼都看不懂的数字符号,变成人能看懂的符号。 阅读详情

相关推荐

WorkBuddy入门到 多Agent团队协作完全指南(附实操代码配图)

WorkBuddy的Agent Teams功能支持多智能体协作,通过创建AI团队提升复杂任务处理效率。该功能支持自然语言创建团队、任务分配依赖管理、成员间消息通信(包括直接消息广播),并提供任务审批机制。典型应用场景包括软件开发、内容创作等协作任务。环境要求WorkBuddy 2026年3月及以上版本,支持WindowsmacOS系统。用户可快速创建包含不同角色的AI团队,通过共享任务列表信箱系统实现协作。高级功能包括委派模式、任务依赖管理成员自主认领等,适合各类协作场景。

三棱球的专栏 5881

[架构之路-237]:目标系统 - 纵向分层 - 网络通信 - DNS递归查询迭代查询

DNS(Domain Name System)协议是互联网中的一种协议,它用于将域名转换为相应的 IP 地址,以实现将人类可读的域名映射到计算机可理解的 IP 地址的过程。在互联网上,每个设备都有一个唯一的 IP 地址,通过这个 IP 地址,可以定位并访问到设备上提供的服务,比如网页服务器、电子邮件服务器等。然而,IP 地址是一串数字,很难被人类轻松记忆。为了方便人们使用,DNS 协议提供了一种映射机制,使用易于记忆的域名来引用每个设备的 IP 地址。

文火冰糖(王文兵)的博客 4189

A robust and easy to implement method for IMU calibration without external equipments(IMU标定)

A robust and easy to implement method for IMU calibration without external equipments 1 标定原理1 亲试可用,还有动态演示效果不错。相比商用产品的简易标定流程,该标定方法有以下几点不同: 给出了加速度计陀螺仪更复杂的模型。 利用Allan方差的定义,标定陀螺仪的偏置。 大量冗余数据,保证最优化收敛。利用数十...

擦擦擦大侠的博客 3919

DNS查询过程——迭代递归查询

目录 基础知识 域名解析过程 递归查询迭代查询 工具命令 DNS缓存机制 基础知识 1.域名系统 2.域名服务器 域名解析过程 1.在浏览器中输入www.qq.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。 2.如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。 3.如果hosts本地DNS解析器缓存都没有相应的网址映.

qq_36610334的博客 2万+

DNS原理总结及其解析过程详解

一、域名系统 1、域名系统概述         域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了“域名”这个名词。“域名系统”明确地指明这种系统是应用在因特网中。        

yipiankongbai的专栏 12万+

DNS递归查询以及迭代查询

DNS域名查询的两种方式

weixin_49401971的博客 2253

DNS递归迭代查询

转自:https://www.jianshu.com/p/6b502d0f2ede 一、DNS解析分类 DNS解析流程分为递归查询迭代查询递归查询是以本地名称服务器为中心查询递归查询是默认方式,迭代查询是以DNS客户端,也就是客户机器为中心查询。其实DNS客户端本地名称服务器是递归,而本地名称服务器其他名称服务器之间是迭代 二、DNS递归解析原理 递归解析(或叫递归查询)是最常见,也是默...

hxt的博客 8856

DNS迭代查询递归查询

只要发出递归查询,服务器必需回答目标IP域名的映射关系。 而迭代查询是,服务器收到一次迭代查询回复一次结果,这个结果不一定是目标IP域名的映射关系,也可以是其它DNS服务器的地址。   如图所示:从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间就是的交互查询就是迭代查询。   DNS查询模式  1.递归查询:  一般客户

hhf1029的专栏 2389

DNS递归查询迭代查询有什么区别

递归查询是指客户端向 DNS 递归解析器发出查询请求,递归解析器负责完成整个解析过程,并将最终结果返回给客户端。迭代查询是指客户端(通常是 DNS 递归解析器)向 DNS 服务器发出查询请求,DNS 服务器返回尽可能接近最终结果的答案。如果 DNS 服务器无法直接提供答案,则会返回下一级服务器的地址,客户端需要继续向下一级服务器查询

sinat_29173481的博客 2285

DNS解析:递归查询迭代查询详解

DNS查询分为递归查询迭代查询两种模式。递归查询由客户端向本地DNS服务器发起,服务器负责完成整个解析过程并返回最终结果,客户端只需一次请求。迭代查询发生在DNS服务器之间,被查询服务器仅提供最佳答案或指向下一级服务器的推荐,解析责任由查询服务器自行承担。实际解析流程通常是客户端发起递归查询,本地DNS服务器通过多次迭代查询(根→TLD→权威服务器)获取最终IP地址返回给客户端。递归查询简化了客户端的负担,而迭代查询实现了DNS层级结构的协作解析。

HTTP404_CN的博客 2308

迭代DNS查询递归DNS查询的区别

迭代DNS查询递归DNS查询的区别 作者:Sarath Pillai 日期:2013月1月12日 原文:https://www.slashroot.in/difference-between-iterative-and-recursive-dns-query 翻译:tommwq 译文:http://tommwq.tech/blog/2021/05/06/349 DNS是最关键的基础设施,它对所有人都是公开可用的。实际上可以这么说,如果DNS发生故障,足以摧毁万维网。 我曾经在文章中阐述了DN

tq1086的博客 1676

什么是DNS递归查询迭代查询

通常,当一个终端用户的设备开始 DNS 查询时,首先是递归查询,因为它查询的本地 DNS 服务器或 ISP 的 DNS 服务器,期望得到一个完整的答案。但在 DNS 解析过程中,涉及的其他服务器间的查询迭代的。在 DNS 查询中,有两种主要的查询方式:递归查询迭代查询

weixin_41777118的博客 5505

DNS迭代查询,递归查询

相信很多人都对DNS协议有所了解,你肯定会说,不就是根据域名转换成IP地址再访问吗.那你知道它是如何查询的吗? 第一,主机向本地域名服务器的查询一般为递归查询,所谓递归查询就是如果本地域名服务器不知道被查询域名的IP地址,就会以DNS客户的身份向其他根域名服务器查询(即代替主机进行查询). 第二,本地域名服务器向根域名服务器的查询一般为迭代查询,当根域名服务器接收到本地域名服务器的查询请求时,会告诉本地域名服务器下一步应该去请求哪一个域名服务器.然后本地域名服务器再进行后续查询. 证明主机向本地域名服务器

klwsa的博客 3381

DNS递归查询迭代查询

1)递归查询 递归查询是一种DNS 服务器的查询模式,在该模式下DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。 如果DNS 服务器本地没有存储查询DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。 客户机服务器之间的查询递归查询递归查询告诉客户机IP (2)迭代查询 DNS 服务器另外一种查询方式为迭代查询DNS 服务器会向客户机提供其他能够解析查询请求的DNS 服务器地址,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果

Jerry00713的博客 8081

dns迭代查询配置_DNS迭代查询递归查询

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

weixin_39862871的博客 1565

DNS迭代查询递归查询

DNS迭代查询递归查询

brian0031的专栏 3414

DNS递归查询迭代查询的区别

迭代查询: 1.被查询服务器返回域名解析服务器的名字; 2.“我不认识这个域名,但是你可以问这个服务器” 如下图所示,这是一段解析: 首先,主机1想查主机2的IP地址,那local DNS server作为本地服务器,作为主机1的代理就只能帮助主机1去查询主机2的地址。 local DNS server 向根服务器root DNS server 服务器询问是否知道主机2的地址,那根服务器就返回一个顶级服务器的地址TLD DNS server,让本地服务器去问这个顶级服务器。 顶级服务器返回一个代

RWautumn的博客 3726

DNS递归查询迭代查询的区别

递归查询迭代查询的区别 (1)递归查询 递归查询是一种DNS 服务器的查询模式,在该模式下DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果DNS 服务器本地没有存储查询DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

Dream home 5万+

网狐6.6完整源码+内核源码+105款游戏源码(已解密).zip

网狐6.6完整源码+内核源码+105款游戏源码(已解密)

上一篇: XSS防御方法
下一篇: 【burpSuite】浏览器设置代理后无法访问https
AlimSah
博客等级 码龄11年 8粉丝 18原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值