题 什么是胶水记录?


这是一个 典型问题 关于DNS胶水记录。

什么(但简要)是DNS胶水记录?为什么需要它们以及它们如何工作?


125
2017-09-09 03:54




描述“胶水记录”含义的RFC部分。 - Vladimír Čunát


答案:


粘合记录是由对区域不具有权威性的DNS服务器所服务的记录的术语,以避免DNS区域不可能存在依赖性的情况。

假设我拥有一个DNS区域 example.com。我想拥有托管这个域的权威区域的DNS服务器,以便我可以实际使用它 - 为域的根添加记录, wwwmail所以,我把名称服务器放在注册中委托给他们 - 这些都是名字,所以我们会把它放进去 ns1.example.com 和 ns2.example.com

有诀窍。 TLD的服务器将委托给whois记录中的DNS服务器 - 但它们在内 example.com。他们试图找到 ns1.example.com, 咨询 .com 服务器,并被引回... ns1.example.com

胶水记录的作用是允许TLD的服务器在其对查询的响应中发送额外信息 example.com zone - 发送为名称服务器配置的IP地址。它不具有权威性,但它是指向权威服务器的指针,允许循环得到解决。


112
2017-09-09 04:39





我要求将这个答案从一个重复的问题中合并,因为现有的答案并未解释该问题的作用 ADDITIONAL 部分。

要查看其工作原理,请键入: dig +trace +additional google.com SOA

这将从根服务器开始跟踪名称服务器权限(+trace)。添加 +additional 还会告诉你 ADDITIONAL 每个DNS服务器响应的一部分。通常大多数人都会想到DNS QUESTION 和 ANSWER 部分,但是 ADDITIONAL 也发挥了重要作用:如果名称服务器知道与答案相关的任何查询的答案,它可以先发制人地提供答案。 ADDITIONAL 部分,无需客户的其他查询。

请注意权威的名称服务器 google.com 根植于他们具有权威性的领域。 (ns1.google.comns2.google.com等)

当您要求名称服务器提供域的名称服务器列表时,它们通常会提供列表 A - 中的类型记录(IP地址) ADDITIONAL 部分,而不仅仅是 NS型回答:这些被称为 胶水记录,用于防止循环依赖。在这种情况下,那些 A 记录由TLD(.com,.org等)名称服务器根据某人提供负责该域的DNS注册商的IP地址提供。通常可以通过登录他们为您提供的管理Web界面来更改它们。

(免责声明: AAAA 包含IPV6地址的记录也可以作为粘合剂的一部分提供,但为了简单起见,我把它留下了。)


48
2018-02-03 03:08



谢谢您的详细解释。我学到了很多东西。 - Egemenk
非常好的解释。希望在上一次面试之前,我偶然发现循环依赖解决方案的这个细节。我很确定我对这个问题的无知让我付出了沉重的代价。 - converter42
@ converter42公平地说,我不认为大多数系统管理员实际上都希望你能够正确地解决这个问题。我是DNS领导,我当然不是。它 不 告诉我,当受访者知道DNS比其他管理员的80%更好。 :) - Andrew B


有一个精确(简洁)的解释 在维基百科上
报价:

 循环依赖关系和粘合记录

代表团中的名称服务器是   通过名称而不是IP地址识别。这意味着一个   解析名称服务器必须发出另一个DNS请求来查找   已被引用的服务器的IP地址。
  如果名字   在委托中给出的是域的子域   正在提供授权,存在循环依赖。在这   如果提供代表团的名称服务器也必须提供一个或   更多的权威名称服务器的IP地址   代表团。此信息称为胶水。

。 。 。

例如,如果是权威名称服务器   for example.org是ns1.example.org,一台试图解决的计算机   www.example.org首先解析ns1.example.org。由于包含ns1   在example.org中,这需要首先解析example.org   呈现循环依赖。
  为了打破依赖,   组织顶级域名的名称服务器包括胶水和   example.org代表团。胶水记录是地址记录   为ns1.example.org提供IP地址。旋转变压器使用一个或   更多这些IP地址来查询域名的权威性   服务器,允许它完成DNS查询。


30
2017-09-09 04:37





经过长时间的搜索并阅读了很多关于胶水记录的信息,仍然没有理解它们是什么或者如何制作它们我终于找到了答案,这是一个非常简单的答案。

据我所知,从某处发送没有神奇的额外信息,这就是它的工作原理。

假设您的域名是example.com,并且您想使用自己的名称服务器ns1.example.com和ns2.example.com,则至少需要两个DNS服务器。

  • ns1.example.com的IP为192.0.2.10
  • ns2.example.com的IP为192.0.2.20

为了使其现在正常工作,您需要顶级域名所有者将以下记录放入其DNS中。

example.com NS ns1.example.com
example.com NS ns2.example.com

ns1.example.com A 192.0.2.10 
ns2.example.com A 192.0.2.20

这两个A记录是胶水记录,它们需要位于顶级域名,在本例中为.com,并非所有注册商都可以为您完成此操作。

如果这是错的,请纠正我。我只是想我尝试以一种简单的方式解释那些找不到正确答案的人。


24
2017-08-07 06:22



您回答的唯一警告是胶水记录不仅限于出现在顶级域中。你也可以有一个 sub.example.com 被委派给 ns1.sub.example.com 和 ns2.sub.example.com 在里面 example.com 区。名称服务器 com已委派 example.com 远离自己,不能为任何孩子提供胶水。 - Andrew B
关键点似乎是没有粘合记录,如果请求的子域和名称服务器位于同一个域下,您将陷入无限循环: sub.example.com  - > example.com  - > ns1.example.com  - > example.com  - > ns1.example.com... 等等 - Daniel Waltrip