DNS查询过程

来源:互联网 发布:linux中vim后如何退出 编辑:程序博客网 时间:2024/05/22 01:50

From: http://blog.csdn.net/cz_hyf/archive/2006/02/19/603022.aspx

如果某个用户结点希望获得对应"DPT1.SEU.EDU.CN"的IP地址,该结点的处理动作如下:
1) 向本地DNS服务器发送"解答"请求,为了提高工作效率,采用面向无连接的数据报服务。如果本地DNS服务器知道对应DPT1.SEU.EDU.CN的 IP地址,则直接返回IP地址;否则,如果本地DNS服务器知道对应SEU.EDU.CN的DNS的IP地址,则访问SEU.EDU.CN的DNS,获得 DPT1.SEU.EDU.CN的DNS系统的IP地址;否则,如果本地DNS服务器知道对应EDU.CN的DNS的IP地址,则访问EDU.CN的DNS,获得SEU.EDU.CN的DNS系统的IP地址;否则,如果本地DNS服务器知道对应CN的DNS的IP地址,则访问CN的DNS,获得EDU.CN的DNS系统的IP地址;否则

2) 本地DNS系统向根DNS系统发送"解答"请求,根DNS系统返回"CN"的DNS系统的IP地址;

3) 本地DNS系统访问CN的DNS,获得EDU.CN的DNS系统的IP地址;

4) 本地DNS系统访问EDU.CN的DNS,获得SEU.EDU.CN的DNS系统的IP地址;

5) 本地DNS系统访问SEU.EDU.CN的DNS,获得DPT1.SEU.EDU.CN的DNS系统的IP地址;

6) 本地DNS系统向用户结点返回对应DPT1.SEU.EDU.CN的IP地址。

因特网上设置许多互为备份的根结点DNS服务器,用户查询本着就近访问的原则。为了避免每次对自己无法查到的请求转发到根服务器和利用上级服务器的缓存,DNS服务器还可以设置转发器。如果该DNS本身没有对应记录,就向转发器标记的那个DNS查询。

为了保证DNS服务器的可靠性,在每个域内设置了一个、甚至多个DNS服务器,并将其中之一设置为主服务器,其它的为次级服务器。一旦主服务器出现故障,用户结点自动查询次级服务器。

作为性能改进的一个措施是每个DNS服务器和主机都维护一个缓存装置,暂时存储检索到的域名/IP地址映射信息,从而减少间接访问DNS的次数。带来的问题是缓存信息和原始信息的一致性。因此在实用中,DNS返回的信息内还包含了地址映射的生存期(Time_to_live),该生存期以秒为单位计数。生存期内的地址映射信息被保存,并在必要是被引用。

原创粉丝点击