什么是胶水记录?


Answers:


129

胶粘记录是由DNS服务器提供的对区域不具有权威性的记录的术语,以避免对DNS区域造成不必要的依赖性。

假设我拥有的DNS区域example.com。我想有DNS服务器that're托管此域的授权区域,这样我可以真正地使用它-添加记录域的根wwwmail等等。所以,我把域名服务器中登记委托给它们-这些始终是名称,因此我们将输入ns1.example.comns2.example.com

有窍门。TLD的服务器将委派给whois记录中的DNS服务器-但它们在内example.com。他们试图找到ns1.example.com,请问.com服务器,并获得交回... ns1.example.com

胶粘记录的作用是允许TLD的服务器在响应example.com区域查询时发送额外的信息-也发送为名称服务器配置的IP地址。它不是权威性的,而是指向权威性服务器的指针,可以解决该循环。


57

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

要查看其工作方式,请输入以下内容: dig +trace +additional google.com SOA

这将从根服务器(+trace)开始跟踪名称服务器权限。添加+additional还将向您显示ADDITIONAL每个DNS服务器响应的部分。通常,大多数人会在QUESTIONANSWER部分中考虑DNS ,但ADDITIONAL也起着重要作用:如果名称服务器知道与该答案相关的任何查询的答案,它就可以抢先在该ADDITIONAL部分中提供这些答案而无需来自客户的其他查询。

请注意,的权威名称服务器google.com根植于其权威的域下。(ns1.google.comns2.google.com等)

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

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


感谢您的详细说明。我学到了很多。
Egemenk

很好的解释。希望我在上一次面试之前偶然发现了循环依赖解决方案的详细信息。我很确定我对这个问题的无知使我付出了沉重的代价。
converter42

@ converter42公平地说,我认为大多数系统管理员实际上并不希望您正确地解决该问题。我是DNS主管,但我当然不是。它确实告诉我,何时受访者比80%的其他管理员更了解DNS。:)
Andrew B

1
@Patrick 执行时,默认情况下打开附加部分+trace。这就是为什么它在那里。
安德鲁B

1
@AndrewB指出,但是在我的dig +trace测试中,它似乎至少依赖于dig版本或其他内容,添加+additional完全不会改变输出)
Patrick Mevzek

36

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

循环依赖关系和粘合记录

委托中的名称服务器是通过名称而不是IP地址来标识的。这意味着解析名称服务器必须发出另一个DNS请求,以查找已被引用的服务器的IP地址。
如果委托中给出的名称是为其提供委托的域的子域,则存在循环依赖性。在这种情况下,提供委托的名称服务器还必须为委托中提到的权威名称服务器提供一个或多个IP地址。此信息称为胶水。

。。。

例如,如果exam​​ple.org的权威名称服务器是ns1.example.org,则尝试解析www.example.org的计算机首先会解析ns1.example.org。由于ns1包含在example.org中,因此需要首先解析example.org,这呈现了循环依赖性。
为了打破依赖关系,组织顶级域的名称服务器包括胶水和委托(例如example.org)。胶水记录是为ns1.example.org提供IP地址的地址记录。解析器使用这些IP地址中的一个或多个来查询域中的一台权威服务器,这使它可以完成DNS查询。


30

经过长期搜索并阅读了大量有关胶粘记录的信息,但仍然不了解它们是什么或如何制作它们,我终于找到了答案,这是一个非常简单的答案。

据我了解,没有什么神奇的额外信息可以从某个地方发送,这就是它的工作方式。

假设您的域为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),并且并非所有注册服务商都能为您完成这项工作。

如果这是错误的,请纠正我。我只是想我尝试以一种简单的方式为无法找到正确答案的其他人解释。


4
您需要回答的唯一警告是,胶粘记录不仅限于出现在顶级域中。你也可以有一个sub.example.com被授予ns1.sub.example.comns2.sub.example.comexample.com区。的名称服务器com已经example.com离开了自己,不能为其任何子代提供胶水。
安德鲁·B

3
关键点似乎是,如果没有粘合记录,如果请求的子域和名称服务器位于同一域下,则将陷入无限循环:sub.example.com-> example.com-> ns1.example.com-> example.com-> ns1.example.com...以此类推
Daniel Waltrip

我的脑子屁,每次阅读胶水的说明时,我都无法获得足够的信息-由于我确信我对术语含义的了解不足……在您回答此问题时,@当您说“这两个A记录是胶水记录,它们必须位于最高域名时”……哈斯……您所说的“最高域名”到底是什么意思?
克劳德

1
@Claud顶级域名(我认为他的意思是顶级域名或TLD)是在域名层次结构的顶部找到的com,net,org等域名(列表不胜枚举)。每个域名都是另一个域名的子域名。这些顶级域名除外。
frezq

我看不到域注册表如何适合这些关于胶粘记录的答案。我的域注册表有一个DNS,可以指向其自己的名称服务器或我的自定义名称服务器。但是我无法更改TTL,因此可以快速迁移网站。这与胶水记录有关吗?
David Spector
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.