1. Definitions (定义)
1. 定义 (Definitions)
本文档有意对"主服务器 (Master)"、"从服务器 (Slave)"和"主主服务器 (Primary Master)"服务器的角色及其在 NS RR 中的枚举以及 SOA MNAME 字段给出了更多定义。从这个意义上说, 以下服务器类型定义可以被视为 [RFC1035] 的附录, 并旨在与 [RFC1996] 保持一致:
从服务器 (Slave)
使用 AXFR 或 IXFR 检索区域并在区域的 NS RRset 中命名的权威服务器。
主服务器 (Master)
配置为一个或多个从服务器的 AXFR 或 IXFR 数据源的权威服务器。
主主服务器 (Primary Master)
AXFR/IXFR 依赖图根部的主服务器。主主服务器在区域的 SOA MNAME 字段中命名, 也可以选择由 NS RR 命名。根据定义, 每个区域只有一个主主服务器。
域名标识域名空间树结构中的节点。每个节点有一组 (可能为空) 资源记录 (Resource Records, RR)。具有相同 NAME、CLASS 和 TYPE 的所有 RR 称为资源记录集 (Resource Record Set, RRset)。
本文档中使用的伪代码仅用于示例目的。如果发现它与文本不一致, 则文本应被视为权威。如果文本被发现有歧义, 可以使用伪代码来帮助解决歧义。
1.1 比较规则 (Comparison Rules)
1.1.1. 如果两个 RR 的 NAME、CLASS、TYPE、RDLENGTH 和 RDATA 字段相等, 则认为它们相等。注意, 生存时间 (TTL) 字段明确排除在比较之外。
1.1.2. 名称中字符串比较的规则在 [RFC1035 2.3.3] 中规定。
1.1.3. 通配符被禁用。也就是说, 更新中的通配符 ("") 只匹配区域中的通配符 (""), 反之亦然。
1.1.4. 别名被禁用: 区域中的 CNAME 匹配更新中的 CNAME, 否则不会被跟随。所有 UPDATE 操作都基于规范名称进行。
1.1.5. 以下 RR 类型不能追加到 RRset。如果满足以下比较规则, 则尝试添加新 RR 将导致替换之前的 RR:
SOA
仅比较 NAME、CLASS 和 TYPE —— 每个区域不可能有多个 SOA, 即使任何数据字段不同。
WKS
仅比较 NAME、CLASS、TYPE、ADDRESS 和 PROTOCOL —— 对于此元组只能有一个 WKS RR, 即使服务掩码不同。
CNAME
仅比较 NAME、CLASS 和 TYPE —— 不可能有多个 CNAME RR, 即使它们的数据字段不同。
1.2 粘合 RR (Glue RRs)
为了确定 UPDATE 协议中使用的域名是否包含在指定区域内, 如果域名由该区域的域名拥有, 则该域名"在"该区域中。详见第 7.18 节。
1.3 新分配的号码 (New Assigned Numbers)
- CLASS = NONE (254)
- RCODE = YXDOMAIN (6)
- RCODE = YXRRSET (7)
- RCODE = NXRRSET (8)
- RCODE = NOTAUTH (9)
- RCODE = NOTZONE (10)
- Opcode = UPDATE (5)