我试图了解迭代和递归 DNS 查找之间的区别。从根本上说,我认为迭代就像打电话给百货公司寻找产品,当他们没有产品时,他们会给你另一个分店的电话号码,然后你自己打电话给另一个分店。与递归相比,这就像打电话给百货公司,当他们没有你想要的东西时,他们会代表你打电话给另一个分店寻找产品。问题是,当涉及到 DNS 时,我对此有不同的看法。当我想到递归时,我想到的东西是这样的:
但是在阅读网络上的文章,甚至对DNS recursive进行 Google 图片搜索时,我看到了更多类似这样的示例:
对我来说,第二个示例看起来比递归更具有迭代性,因为每个“其他 DNS 服务器”都告诉“首选 DNS 服务器”要查找的下一台机器的地址,而不是代表首选服务器查找它DNS 服务器。我看到的唯一递归元素是首选 DNS 服务器代表 DNS 客户端进行查找,但从这里开始,它确实看起来是迭代的。
所以我想我的问题是,“递归”DNS 查找是否真的只意味着首选 DNS 服务器代表客户端做某事的意义上的递归,但从现在开始真的是迭代的?我在谷歌图片搜索中看到的大多数结果都让我相信这一点,这就引出了一个问题,这篇文章中的第一张图片是完全错误的吗?