Linux ,c/c++, web,前端,php,js
分类: LINUX
2011-09-15 10:35:58
先看下 普通递归查询的拓扑 很简单的一次查询,Client 请求递归查询,DNS Server 支持并使用递归,完成所有工作,然后返回结果给Client! 然后看看 dig @202.101.01.10 +trace 后的拓扑! dig @202.101.10.10 +trace 步骤: 1:-> DNS Server 发送递归查询 . NS #查询 . 根 2:DNS Server 返回 . NS 记录! 3:-> . (root) NS 发送迭代查询 4:. (root) NS 返回 .com NS 记录,和对应的A 记录! 5:-> DNS Server 发送递归查询 com NS记录对应的IP. 6:DNS Server 返回 com NS 记录! 7:-> com NS 发送迭代查询 8: com NS 返回 ming.com NS 记录,和对应的A 记录! 9:-> DNS Server 发送递归查询 ming.com NS记录对应的IP. 10:DNS Server 返回 ming.com NS 记录 11: -> ming.com NS 发送迭代查询 12: ming.com NS 放回 的A 记录! 其中省略是 查询. NS, 然后 -> DNS Server 发送递归查询 . NS记录对应的IP. 之所以设计成,既有递归,又有迭代,是为了模拟DNS Server递归查询! dig +trace 主要还是用于追踪 DNS 查询顺序,用于排错! 而且感觉有些步骤还是有点多余,比如 5 、9 都已经返回了对应的A记录,去还去查询对应A 记录! |