What is a Glue Record and Custom Nameservers

如果您想在您拥有的域名下运行您自己的名称服务器 — 例如 ns1.yourdomain.com — 您会遇到经典的"先有鸡还是先有蛋"问题。要解析 yourdomain.com,解析器需要 ns1.yourdomain.com 的 IP。但 ns1.yourdomain.com 正好在要被解析的域名下。胶水记录的存在就是为了打破这种循环依赖。

什么是胶水记录?

胶水记录是存储在注册商或父级区域中的 A(或 AAAA)记录,而不是在域名的自有区域文件中。这样解析器可以在成功解析名称服务器所属的域名之前学习名称服务器的 IP 地址,从而打破循环依赖。

胶水记录有时也被称为"子名称服务器"记录或"域内 NS"记录,因为名称服务器子域位于同一域名内(在该域名的"范围内")。

为什么需要胶水记录?

假设您想让 yourdomain.com 使用名为 ns1.yourdomain.com 和 ns2.yourdomain.com 的名称服务器 — 无论是出于品牌考虑还是在您自己的 VPS 上自托管 DNS:

  1. 解析器向注册表询问哪些名称服务器服务 yourdomain.com
  2. 注册表回答:ns1.yourdomain.com 和 ns2.yourdomain.com
  3. 解析器需要 ns1.yourdomain.com 的 IP — 但该主机名位于 yourdomain.com 下,而它还无法解析!
  4. 循环依赖 — 解析完全失败

胶水记录通过让注册表将 ns1 和 ns2 的 IP 地址直接存储在其自有数据库中来解决这个问题。当解析器询问名称服务器时,注册表同时返回主机名和 IP 地址。

如何设置胶水记录

步骤 1 — 在您的服务器上配置 DNS 服务器软件

首先,在您的 VPS 上安装 DNS 服务器软件,例如 BIND、PowerDNS 或 Knot DNS,并为您的域名配置区域文件。

步骤 2 — 在注册商处注册子名称服务器

登录到您的注册商(如 AsiaGB)的域名管理面板,找到"子名称服务器"或"主机记录"部分。输入:

使用不同的 IP 地址对 ns2 重复此操作。强烈建议至少有两个名称服务器以实现冗余。

步骤 3 — 将域名的 NS 指向 ns1.yourdomain.com

保存胶水记录后,更新域名的名称服务器为 ns1.yourdomain.com 和 ns2.yourdomain.com。等待 24–48 小时以实现完全 DNS 传播。

注意: 胶水记录仅在名称服务器主机名是所服务域名的子域(域内)时才需要。如果您使用来自其他提供商的名称服务器,例如 ns1.someotherprovider.com,则不需要胶水记录,因为 someotherprovider.com 可以独立解析。

胶水记录的真实用例

验证您的胶水记录

使用此命令确认胶水记录已正确注册:

dig +additional NS yourdomain.com @a.iana-servers.net

输出的 Additional 部分应显示 ns1 和 ns2 的 IP 地址以及 NS 记录。

胶水记录与 DNSSEC — 您需要了解的内容

如果您的域名使用 DNSSEC(域名系统安全扩展),在设置域内胶水记录时需要额外注意。DNSSEC 依赖从根区延伸到您域名的信任链。当您运行自己的名称服务器时,您将成为该链中的一环,必须正确管理。

将胶水记录与 DNSSEC 结合使用时的关键步骤:

如果您的使用场景不需要这种级别的安全管理,使用注册商或托管提供商的名称服务器(如 AsiaGB 的名称服务器)可自动处理 DNSSEC。

配置胶水记录的常见错误

尽管概念上比较直观,胶水记录仍然是常见的配置错误来源。以下是最常遇到的错误及如何避免:

错误 影响 解决方法
区域文件中缺少 A 记录 解析器获得胶水 IP 但无法连接到名称服务器 在区域文件中也为 ns1/ns2 添加 A 记录
胶水 IP 与实际 DNS 服务器不匹配 所有查询超时 每次迁移服务器时都要在注册商处更新胶水记录
只注册了一个名称服务器 任何故障都会导致域名完全无法访问 始终在不同 IP 或网络上注册至少两条 NS 记录
在胶水记录传播之前切换 NS 域名在 24–48 小时内无法解析 先用 dig 验证胶水记录,再将域名的 NS 指向新服务器

胶水记录与 Anycast DNS — 高级架构

大型 DNS 运营商将胶水记录与 Anycast 路由相结合,从全球多个节点提供相同的名称服务器 IP。BGP 路由将每个查询引导至最近的可用节点,在不更改注册在胶水记录中的 IP 的情况下降低延迟。

简化的 Anycast DNS 拓扑示意:

当您需要全球 DNS 延迟低于 20ms 时,这种架构非常值得。对于一般网站,两条胶水记录指向位于不同数据中心的两台 VPS 实例,即可提供足够的冗余,而无需 Anycast 的复杂性。

How TTL Affects Glue Record Changes

Time To Live (TTL) determines how long resolvers cache a DNS response. When you need to change a Glue Record — for example, moving to a new server IP — TTL governs how long the old value will be served from caches around the world.

Best practices for managing TTL around Glue Record changes:

Note that Glue Record TTL is controlled by the registry, not your zone file. Check your registrar's documentation for the default TTL they apply, as it often ranges from 172800 seconds (48 hours) to 86400 seconds (24 hours).

Register a Domain with Custom Nameserver Support

AsiaGB supports Child Nameserver (Glue Record) configuration for all domains registered through us. Register a .com domain for just 500 THB/year.

Register a Domain