如果我注册了一个域名,那么所有的 DNS 服务器都会更新我的域名,但谁真正控制这些 DNS 服务器呢?我发现它们像 godaddy.com 一样独立,它们如何相互交互?是否没有一个系统可以控制所有的 DNS 服务器并且它们都与它绑定?
答案1
首先,对英语感到抱歉。
嗯,在过去,DNS 完全由大学和军队控制,他们在他们之间复制所有信息,但是大量的寄存器导致这些服务器崩溃。
因此,解决方案是转向分布式系统,其中少数 DNS(根)由国际机构控制。
根服务器之后是“com”和“gov”DNS,它们可能与根相同或不同(在某些情况下),并且可以由国家控制(或不控制)...它们也可以出售(“tv”就是一个例子)给私人公司。
之后,我们发现了负责其区域的我们的 DNS 服务器,这个系统非常好,因为只需在不同的服务器上进行几次迭代,就可以比在庞大的 DNS 记录数据库中更快地获取页面。
答案是 DNS 分布式系统由许多不同的实体控制,但采取必要的措施来避免问题或黑客攻击。
这些链接也会给你提供一些有用的信息:
答案2
它的工作原理如下:
用户查询www.yourdomain.com->缓存服务器(缓存服务器的IP由用户或DHCP指定):
www.yourdomain.com isn't existed in cache server, ...
缓存服务器查询 -> 根DNS服务器 (根DNS服务器的IP由OS指定)
root DNS server just forward the query to .com server, ...
根 DNS 服务器查询 -> .com 服务器
(the nameserver of yourdomain.com is registered here.) .com server just forward the query to your nameserver, ...
.com 服务器查询 -> 您的名称服务器
您的名称服务器响应查询:www.yourdomain.com=1.2.3.4
缓存服务器收到查询,并将其缓存以供将来使用
缓存服务器响应用户。
答案3
当您注册域名时,您可以通过 godaddy 等注册商进行注册。通常,您可以(根据注册商)选择几种方式来处理域名的 DNS 授权:
使用他们的 DNS 服务。然后,您可以通过他们的控制面板或 API 管理您域名的 DNS 记录。注册商的名称服务器对您的域名具有权威性,您无需运行自己的名称服务器。
使用 DNS 托管服务。如果您不喜欢注册商提供的服务,但又不想运营自己的名称服务器,可以使用第三方 DNS 托管选项。
运行自己的名称服务器。这通常是由那些想要更好地控制其域名 DNS 的人做的:注册商提供的服务太有限,您对可用性有特殊要求,或者您只是不信任注册商来处理您的域名 DNS。
运行自己的名称服务器,但让注册商提供 DNS 服务。这是一种“隐身主控”方法。您在只有您的注册商可以访问的名称服务器上管理域名的 DNS。然后,他们将您域名的 DNS 数据传输到自己的名称服务器,供全世界使用。这对于那些希望对其 DNS 记录进行细粒度控制但又不想管理自己的公共 DNS 服务器的人来说很有用。但对于外界来说,它看起来与选项 #1 没什么不同(因此有“隐身”部分)。
无论您选择哪种选项,委派信息(即根据您采取的方法告诉全世界哪些名称服务器对您域名的 DNS 具有权威性)都会从您的注册商传递到顶级域名(.com、.net、.us、.de 等)的注册中心。
对于上述选项 #1 和 #4,所涉及的名称服务器如下所示:
root nameservers --> top level domain --> registrar's nameservers
(managed by various nameservers (managed (managed by your registrar)
entities*) by the TLD registry)
对于托管选项 #2,略有不同:
root nameservers --> top level domain --> DNS hosting company's nameservers
(managed by various nameservers (managed (managed by, of course,
entities*) by the TLD registry) the DNS hosting company.)
对于选项 3(自己动手):
root nameservers --> top level domain --> your nameservers
(managed by various nameservers (managed (managed by you!)
entities*) by the TLD registry)
(每个 --> 代表一个 DNS 委派)
* 根名称服务器信息由美国商务部签订合同的 ICANN 所有,并由 VeriSign 与 ICANN 合作管理,由许多不同的组织运营在全球范围内。
您的顶级域名的名称服务器通常由顶级域名的注册机构拥有、运营和管理。
无论如何,我希望这会有所帮助。
答案4
所有 DNS 服务器彼此之间不交互。任何 DNS 服务器都不会“更新”您的 DNS 信息。DNS 是一种拉取技术,而不是推送技术。我的 DNS 服务器了解您的 DNS 记录的唯一方式是它们(或它们的 DNS 客户端之一)提交对您的 DNS 记录之一的查询。然后我的 DNS 服务器提交查询以使用转发器或根提示查找您的名称服务器,然后根据该答案查询您的名称服务器以查找相关记录。在其他任何时候,我的 DNS 服务器都不知道有关您的域 DNS 记录的任何信息。