了解DNS域查找机制

导致我尝试并取消这个过程的具体查询是:

如果父域example.com已被parsing,那么DNS查找子域(例如assets.example.com )的速度会更快吗?

通过我的(天真的)理解,将域名翻译成IP地址的基本过程非常简单。 知道如何解决像comnet这样的顶级域的十三台根服务器的地址在networking硬件中被有效地硬编码。 在查找example.com的情况下,我们的本地DNS服务器(可能是我们的路由器)查询这些根域名服务器中的一个,并将其称为com的顶级域名服务器。 然后它会询问这个名称服务器是否知道如何parsingexample 。 如果是这样,我们就完成了,如果没有,我们被引用到另一台服务器。 在这个过程中的一些服务器可能是caching,所以一段时间以来,我们的本地路由器现在将知道在哪里寻找comexample

不过,我真的不明白。

  • 我知道还有其他的中间DNS服务器,比如ISP提供的。 他们在什么时候被质疑?
  • 如果我们所提到的com TLD域名服务器不知道如何解决这个example ,那么说这是行结束: example.com无法解决?
  • 当我注册一个域并configuration域名服务器时,我是否正在为该TLD的域名服务器使用的数据库中的子域名编辑一组NSlogging? 注册商本身是否维护“代理”域名服务器?

维基百科解释说,一些DNS服务器将caching与recursion查询实现相结合,使得它们能够caching命中并可靠地解决caching未命中。 我不明白这些服务器是如何被查询的,或者parsingalgorithm的工作原理(甚至是广泛的)。 所有权威的com名称服务器,例如精确的镜像,还是parsing器都必须依次尝试?

回顾我最初的问题,假设Alogging都在同一个域名服务器上,我可能会采取一个非“猜测”的猜测。 我会非常感谢任何能够减less我的无知的人!

如果父域example.com已被parsing,那么DNS查找子域(例如assets.example.com)的速度会更快吗?

假设在场景中有一个caching服务器,是的。 这是因为要为example.com中的任何内容findAlogging,example.com的名称服务器。 必须知道。 当请求assets.example.com。 是example.com的域名服务器。 应该已经被caching了,所以唯一的查询就是assets.example.com。 本身。

我知道还有其他的中间DNS服务器,比如ISP提供的。 他们在什么时候被质疑?

这些通常是caching或recursion名称服务器。 这些代表你的努力工作(遍历树的多个请求),然后caching结果以加快以后对相同名称的查询。

所有权威的COM名称服务器,例如精确的镜像,还是parsing器都必须依次尝试?

是的,他们包含相同的信息。 parsing器只需find一个实际工作的。

如果我们所提到的com TLD域名服务器不知道如何解决这个问题,那么说是行尾:example.com无法parsing?

如果.com。 域名服务器响应并说example.com。 不存在,那么结果是名称不存在。 如果.com。 名称服务器不响应查询parsing器应该尝试一个不同的.com。 域名服务器。

当我注册一个域并configuration域名服务器时,我是否正在为该TLD的域名服务器使用的数据库中的子域名编辑一组NSlogging? 注册商本身是否维护“代理”域名服务器?

正确。 当你注册域名的时候,你提供了NSlogging(还有一些Alogging,如果你需要粘贴的话)插入父域。 注册服务商本身并不一定运行这些域名服务器,而是有一个机制来修改这些域名服务器的数据库。

您的计算机最有可能被configuration为在您的ISP上使用DNS服务器。 这可能是一个caching名称服务器。 这意味着它会在一段时间内(通常是TTL)caching命中(有些时候会丢失命中)。 如果你在caching中查询这个名字服务器,你就完成了。 它会告诉你的IP。

如果是未命中,它将查询域的顶级域名服务器(com,net,org等)。 在这个例子中,它会询问COM在哪里可以findEXAMPLE.COM,COM将使用EXAMPLE.COM域的授权名称服务器地址(ip)进行响应。 然后,它会询问名称服务器的EXAMPLE.COM的IP是什么,它会告诉caching名称服务器,它会告诉你(这是一个Alogging)。 此外,它会caching它,以防别人以后问。

如果您正在查找ASSETS.EXAMPLE.COM,则会发生同样的情况,但是当您findEXAMPLE.COM的权威名称服务器时,您可以直接询问ASSETS.EXAMPLE.COM,它将使用Alogging(ip), CNAME或NSlogging(还有其他types,比如用于ipv6的AAAA,用于邮件的MX …但是这个例子就足够了)。 如果它给你一个logging,你就完成了。 你有一个IP。 如果它给你一个NS,这意味着这个服务器对于ASSETS.EXAMPLE.COM来说是权威的,你应该去问这个人是什么IP。

CNAME是开始整个过程​​的另一种types,无论如何实际上并不在顶点logging(如example.com)上可用。