DNS迭代查询与递归查询的区别.docx
只要发出递归查询,效劳器必需答复目标IP与域名的映射关系。
而迭代查询是,效劳器收到一次迭代查询回复一次结果,这个结果不一定是目标IP与域名的映射关系,也可以是其它DNS效劳器的地址。
?
如下图:从客户端到本地DNS效劳器是属于递归查询,而DNS效劳器之间就是的交互查询就是迭代查询。
?
DNS查询模式?
1.递归查询:?
一般客户机和效劳器之间属递归查询,即当客户机向DNS效劳器发出请求后,假设DNS效劳器本身不能解析,那么会向另外的DNS效劳器发出查询请求,得到结果后转交给客户机;
2.迭代查询(反复查询):?
一般DNS效劳器之间属迭代查询,如:假设DNS2不能响应DNS1的请求,那么它会将DNS3的IP给DNS2,以便其再向DNS3发出请求;
迭代查询和递归查询的区别
????迭代查询和递归查询
迭代查询和递归查询是可以发送到域名效劳器的两种请求。递归查询是最常见的发送到本地域名效劳器的请求。当本地域名效劳器接受了客户机的查询请求时,本地域名效劳器将力图代表客户机来找到答案,而在域名效劳器执行所有工作的时候,客户机只是等待。如果本地域名效劳器不能直接答复,那么它将在域名树中的各分支上下递归搜索来寻找答案。
对于一个递归查询,DNS效劳器将持续搜索直到收到答复。这种答复可以是主机的IP地址,也可以答复“主机不存在”。不管是哪种结果,递归域名效劳器将把结果返回给客户机。
一个域名效劳器假设设置为使用前向效劳器,那么它将发送递归查询到指定的前向主机。这台收到前向查询的主机也将工作在递归模式以答复查询。如果本地效劳器不是一个附属效劳器,过一会儿它可能会自行开始查询过程,尽管它仍然希望从它的前向主机处得到答复。如果本地域名效劳器设置为一个前向效劳器的附属效劳器,那么工作方式会有所不同。客户机可以发送递归查询到一台附属效劳器,但附属效劳器不能进行递归查询,它实质上将成为其前向效劳器的客户机等待答复。第3章曾对前向效劳器和附属效劳器进行了介绍。
迭代查询那么有所不同。迭代查询的最好例子是一台本地域名效劳器发送请求到根效劳器。当某个企业的本地域名效劳器向根效劳器提出查询,根效劳器并不一定代表本地域名效劳器来担当起答复查询的责任。另一种说法是根效劳器不接收递归查询。事实上,根效劳器只是为解析查询做一件事:指引本地域名效劳器到另一台主机来查询答复。这种做法通常称为重指引,也是期望得到的迭代查询的结果。例如,当根效劳器被要求查询的地址,根效劳器不会到ISI域名效劳器查询www主机的地址,它只是给本地域名效劳器返回一个提示,告诉本地域名效劳器到ISI域名效劳器去继续查询和得到结果。
DNS域名解析过程??
主机向本地域名效劳器的查询采用递归查询:
?????????????主机向本地域名效劳器的查询一般都是采用递归查询。如果主机所询问的本地域名效劳器不知道被查询域名的IP地址,那么本地域名效劳器就以DNS客户的身份,向其他根域名效劳器继续发出查询请求报文。
?
?
本地域名效劳器向根域名效劳器的查询通常采用迭代查询:
??????本地域名效劳器向根域名效劳器的查询通常是采用迭代查询。当根域名效劳器收到本地域名效劳器的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名效劳器:“你下一步应当向哪一个域名效劳器进行查询”。然后让本地域名效劳器进行后续的查询。
?
?
常见的两种方法“递归”和“迭代”:
?
?
合理使用DNS中的递归查询和迭代查询
://zhumeng8337797.blog.163/blog/static/100768914201082910759244/
《RedHatLinux效劳器配置与应用》第6章将详细介绍DNS效劳器的根本概念、工作原理、配置及使用方法。本文为DNS查询的工作原理。