15.2.3.2. 通用资源记录
以下资源记录通常在区文件中使用:
- A
- Address 记录指定要分配给某个名称的
IP 地址
。它采用以下形式:hostname IN A IP-address
如果省略主机名值 ,记录将指向最后指定的主机名。例 15.10. 使用 A 资源记录
server1 IN A 10.0.1.3 IN A 10.0.1.5
- CNAME
- Canonical Name 记录将一个名称映射到另一个名称。因此,这种记录有时被称为别名记录。它采用以下形式:
alias-name IN CNAME real-name
CNAME 记录最常用于指向使用常见命名方案的服务,例如www
(Web 服务器)。但是,它们的使用有多项限制:- CNAME 记录不应指向其他 CNAME 记录。这主要是为了避免可能的无限循环。
- CNAME 记录不应包含其他资源记录类型(如 A、NS 和 MX 等)。唯一的例外是签署区域时 DNSSEC 相关记录(RRSIG、NSEC 等)。
- 指向主机(NS、MX 和 PTR)完全限定域名(FQDN)的其他资源记录不应指向 CNAME 记录。
例 15.11. 使用 CNAME 资源记录
server1 IN A 10.0.1.5 www IN CNAME server1
- MX
- Mail Exchange 记录指定发送到该区域控制的特定命名空间的邮件应前往哪里。它采用以下形式:
IN MX preference-value email-server-name
email-server-name 是一个完全限定域名(FQDN)。preference-value 允许对命名空间的电子邮件服务器进行数字排名,优先选择某些电子邮件系统而不是其他电子邮件系统。优先级最低的 MX 资源记录优先于其他值。但是,多个电子邮件服务器可以拥有相同的值,在其中均匀分发电子邮件流量。在 例 15.12 “使用 MX 资源记录” 中,在收到目标为example.com 域的电子邮件时,第一个 mail
电子邮件服务器。.example.com 电子邮件服务器优先于 mail2
.example.com
例 15.12. 使用 MX 资源记录
example.com. IN MX 10 mail.example.com. IN MX 20 mail2.example.com.
- NS
- Nameserver 记录宣布特定区域的权威名称服务器。它采用以下形式:
IN NS nameserver-name
nameserver-name 应为完全限定域名(FQDN)。请注意,如果两个名称服务器被列为域的权威,那么这些名称服务器是次要名称服务器还是其中一个名称服务器是否为主服务器并不重要。它们仍然被视为具有权威性。例 15.13. 使用 NS 资源记录
IN NS dns1.example.com. IN NS dns2.example.com.
- PTR
- Pointer 记录指向命名空间的另一部分。它采用以下形式:
last-IP-digit IN PTR FQDN-of-system
最后 IP 位指令是IP 地址中的最后一个数字
,而 FQDN-of-system 是完全限定域名(FQDN)。 - SOA
- 授权起始记录向名称服务器宣布有关命名空间的重要权威信息。它位于指令的后面,是区域文件中的第一个资源记录。它采用以下形式:
@ IN SOA primary-name-server hostmaster-email ( serial-number time-to-refresh time-to-retry time-to-expire minimum-TTL )
这些指令如下:@
符号将 $ORIGIN 指令(如果未设置 $ORIGIN 指令,则放置区域名称),作为此 SOA 资源记录所定义的命名空间。- primary-name-server 指令是对该域具有权威的主名称服务器的主机名。
- hostmaster-email 指令是有关命名空间的联系人的电子邮件。
- serial-number 指令是一个数字值,在每次更改区域文件时递增,以指示
named
服务重新加载区域的时间。 - time-to-refresh 指令是数字值次要名称服务器,用于确定在询问主名称服务器是否对区域进行了任何更改之前需要等待多久。
- 时间到重试指令是一个数字值,供次要名称服务器用于确定在主名称服务器未应答的情况下发出刷新请求前等待的时长。如果主服务器未在时间到扩展指令所指定的时间之前回复刷新请求,则次要服务器停止响应与该命名空间相关的请求。
- 在 BIND 4 和 8 中,min-TTL 指令是其他名称服务器缓存区域信息的时间。在 BIND 9 中,它定义了将负答案缓存多长时间。负答案的缓存最多可设置为 3 小时(
3H
)。
配置 BIND 时,会以秒为单位指定所有时间。但是,在指定秒之外的时间单位时,可以使用缩写,如分钟(M
)、小时(H
)、天(D
)和周(W
)。表 15.6 “与其他时间单位相比的秒” 以秒为单位显示一个时间,以其他格式显示等同的时间。表 15.6. 与其他时间单位相比的秒 秒 其他时间单位 60 1M
1800 30M
3600 1H
10800 3H
21600 6H
43200 12H
86400 1D
259200 3D
604800 1W
31536000 365D
例 15.14. 使用 SOA 资源记录
@ IN SOA dns1.example.com. hostmaster.example.com. ( 2001062501 ; serial 21600 ; refresh after 6 hours 3600 ; retry after 1 hour 604800 ; expire after 1 week 86400 ) ; minimum TTL of 1 day