DNS 区域传送与 TSIG

DNS 区域传送允许经过授权的辅助服务器使用 AXFR 获取完整区域,或使用 IXFR 获取增量更新(暂不支持)。 OpenResty Edge 按来源 CIDR 限制每个辅助服务器,还可以额外要求辅助服务器提供 TSIG 密钥。

DNS 区域传送允许经过授权的辅助服务器使用 AXFR 获取完整区域,或使用 IXFR 获取增量更新(暂不支持)。 OpenResty Edge 按来源 CIDR 限制每个辅助服务器,还可以额外要求辅助服务器提供 TSIG 密钥。

此功能在 OpenResty Edge 26.9.1-1 中首次引入。

准备 DNS 区域

启用传送前,请确认:

  • 已启用权威 DNS,且 TCP 53 端口可达;
  • 区域具有有效的主名称服务器和 SOA 邮箱;
  • 区域顶点有静态且无条件的 A 或 AAAA 记录;
  • 区域顶点没有 CNAME 等冲突记录。

预检会报告无效或为空的顶点数据。发布区域前请先修复这些问题。

创建 TSIG 密钥

打开 DNS > TSIG 秘钥,选择 新建 TSIG 秘钥,填写 密钥名算法密钥(base64 编码)。 默认算法为 hmac-sha256;为兼容不同服务器,还可以选择 SHA-224、SHA-384、SHA-512、SHA-1 和旧版 HMAC-MD5 变体。

秘钥只在创建或轮换时显示一次。由于 GET 和列表响应都不会返回它,请在关闭弹窗前将其保存到密钥管理系统。编辑时留空秘钥表示保留原值,填写新值则轮换密钥。

仍被引用的密钥无法删除。引用方 会把已禁用的辅助服务器计入引用,且始终不显示秘钥。

TSIG 密钥列表

新建 TSIG 密钥表单

添加传送辅助服务器

打开 DNS 区域并选择 区域传输。启用传送后,为每个辅助服务器填写来源网段 (CIDR)、可选的 TSIG 密钥,以及 启用 状态。

未配置密钥的辅助服务器仅凭来源地址授权;配置了密钥的,则必须既来自允许的 CIDR,并用该密钥签名 AXFR 或 IXFR 请求。

保存不等于发布。请发布该区域,等待网关同步,再用 使用 dig 测试 生成的 dig ... AXFR +tcp 命令验证。

区域传送页签与传送辅助服务器列表

权限与安全

DNS 读权限可以查看密钥及其引用;创建、轮换、删除密钥以及修改传送设置,都需要 DNS 写权限。

请把来源 CIDR 收得尽可能窄,优先使用 TSIG 而非仅凭地址授权,定期轮换共享密钥,并在发布后分别验证允许来源和拒绝来源。