我试图了解迭代和递归DNS查找之间的区别。从根本上讲,我认为迭代就像打电话给百货公司寻找产品一样,当他们没有产品时,他们会给您另一个分支机构的电话号码,然后您自己给另一个分支机构打电话。相对于递归而言,这就像给百货商店打电话,而当他们没有您要的东西时,他们会代表您呼叫另一个分支以寻找产品。事实是,在DNS方面,我对此有不一致的看法。当我想到递归时,我想到的是这样的:
但是,尽管在网上阅读文章,甚至在Google图像上搜索DNS递归,我还会看到更多类似以下的示例:
在我看来,第二个示例比递归看起来更具迭代性,因为每个“其他DNS服务器”都在告诉“首选DNS服务器”要查找的下一台计算机的地址,而不是代表首选计算机DNS服务器。我看到的唯一递归元素是首选DNS服务器代表DNS客户端进行查找,但是从这里开始,它肯定看起来是迭代的。
因此,我想我的问题是,“递归” DNS查找是否真的就意味着首选DNS服务器代表客户端做某事的意义上是递归的,但是从此以后真的是迭代的?我在Google图片搜索中看到的大多数结果都使我相信这一点,这又引出了一个问题,即帖子中的第一张图片是否完全错误?