首页/网络/协议速查/RRSIG 记录(记录集签名)
DNS 与域名解析60 条

RRSIG 记录(记录集签名)

对每个 RRset 的数字签名:验证解析器用 DNSKEY 校验,确认记录未被篡改且来自权威区域。

协议速查网络更新于 2026-10-13

RRSIG 是什么

RRSIG(TYPE 46)是 DNSSEC 中每个记录集(RRset)的数字签名:验证解析器用区域 DNSKEY 校验它,确认记录来自该权威区域且未被篡改(RFC 4034 §3)。签名带明确的起止时间,必须定期重签,因此 DNSSEC 的日常运维重点就是「签名有效期」与「自动重签是否正常」,而不是签一次就永久有效。

基本信息

类型RRSIG(TYPE 46)
字段覆盖类型、算法、标签数、原始 TTL、起始与过期时间、key tag、签名者、签名值
规范RFC 4034 §3
有效期由起始与过期时间决定,过期即验证失败
运维要点自动重签与密钥轮换必须留重叠期

典型使用场景

  • DNSSEC 验证失败排障:第一件事就是看签名是否过期
  • 自动化运维:确认签名轮换与重签任务正常运行
  • 解释解析器行为:为什么权威直查正常、走验证解析器却 SERVFAIL
  • 安全审计:确认区域内所有记录集都被签名覆盖
  • 变更管理:改记录后必须重签,否则记录集与签名不匹配
  • 迁移演练:区域搬移后验证整条签名链是否完整

查看记录与签名

查看记录与签名
# 查看 A 记录及其对应的 RRSIG
dig +dnssec +noall +answer example.com A
dig +dnssec +noall +answer example.com RRSIG
# example.com. 3600 IN RRSIG A 13 2 3600 (
#   20261001000000 20261101000000 2371 example.com. <base64签名> )
# 字段顺序:覆盖类型 算法 标签数 原始TTL 起始 过期 key tag 签名者

RRSIG 字段读法

字段含义异常信号
覆盖类型本条签名保护哪种记录某类型缺失说明该类型未签名
算法编号如 13 表示 ECDSA P-256新旧算法切换需双签过渡
签名有效期起始与过期时间已过期即验证失败
key tag指向所用的 DNSKEY找不到对应密钥说明链断
原始 TTL签名时记录的 TTL 值与实际 TTL 偏差过大会引发验证问题
典型症状是「权威直接查询正常、走验证解析器就 SERVFAIL」,多数源于签名过期,或链上 DS 与 DNSKEY 不一致。
时间敏感操作(重签、密钥轮换)要预留重叠期,避免过期瞬间全网验证失败;小站用支持自动重签的托管 DNS 更省事。
记录值变更后旧签名不再匹配,变更流程必须把「重新签名并发布」列为必要步骤,而不是可选项。

易错点

  • 自动重签任务停摆导致签名过期,会让整个区域对验证解析器不可用
  • 签名起止时间设置不合理或服务器时钟漂移,会让部分解析器直接判为无效
  • 修改记录后忘记重签,记录集与签名不匹配,验证必然失败
  • 把 SERVFAIL 与 NXDOMAIN 混为一谈,会误判为「记录没生效」而反复排查错误方向

数据来源与参考

  • RFC 4034 §3 RRSIG

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌