跳到主要内容

6. Message Header Response Codes (消息头响应代码)

6. 消息头响应代码 (Message Header Response Codes)

本节描述可以在 UPDATE 响应消息的 RCODE 字段中返回的响应代码.

NOERROR (0)

无错误条件. 更新成功, 且所有先决条件均已满足.

FORMERR (1)

名称服务器由于格式错误而无法解释该请求. 这可能由多种原因导致, 例如:

  • Zone Section 不包含恰好一个 RR
  • ZTYPE 不是 SOA
  • 某个先决条件 RR 具有无效的 CLASS/TYPE/RDATA 组合
  • 某个更新 RR 具有无效的 CLASS/TYPE/RDATA 组合
  • TTL 在应为零的位置不为零

SERVFAIL (2)

名称服务器在处理该请求时遇到内部故障. 示例包括:

  • 操作系统错误 (内存不足, 磁盘已满)
  • 持久存储中的硬件错误
  • 作为转发器运行时发生转发超时
  • 遇到错误后无法撤销已部分应用的更新

NXDOMAIN (3)

某个应当存在的名称不存在. 当用于检查名称存在性的先决条件 (CLASS=ANY, TYPE=ANY) 未得到满足时, 使用此响应代码.

NOTIMP (4)

名称服务器不支持指定的 Opcode. 如果服务器未实现 UPDATE opcode (值为 5), 则返回此响应.

REFUSED (5)

名称服务器出于策略或安全原因拒绝执行指定操作. 这可能发生在以下情形:

  • 请求者没有执行该更新的权限
  • 安全策略禁止所请求的更新
  • 服务器被配置为拒绝所有动态更新

YXDOMAIN (6)

某个不应当存在的名称确实存在. 当用于检查名称不存在性的先决条件 (CLASS=NONE, TYPE=ANY) 未得到满足时, 使用此响应代码.

YXRRSET (7)

某个不应当存在的 RRset 确实存在. 当用于检查 RRset 不存在性的先决条件 (CLASS=NONE, TYPE=specific) 未得到满足时, 使用此响应代码.

NXRRSET (8)

某个应当存在的 RRset 不存在. 在以下情况下使用此响应代码:

  • 用于检查 RRset 存在性的先决条件 (CLASS=ANY, TYPE=specific) 未得到满足
  • 用于检查特定 RR 值的先决条件 (CLASS=zone) 未得到满足

NOTAUTH (9)

服务器对 Zone Section 中命名的 zone 不具权威性. 请求者应尝试使用另一个对该 zone 具权威性的服务器.

NOTZONE (10)

Prerequisite Section 或 Update Section 中使用的名称不在 Zone Section 所表示的 zone 内. 这表明 UPDATE 请求存在错误, 因为先决条件和更新中的所有名称都必须位于正在更新的 zone 内.