TCP/IP 的标准资源记录格式
用途
定义 命名 数据文件中的行的格式。
描述
命名 文件中的记录称为 资源记录。 使用标准资源记录格式的文件为:
- 域数据 文件
- DOMAIN 反向数据 文件
- 域高速缓存 文件
- 域本地 文件
命名 文件中的资源记录具有以下常规格式:
{ 姓名 } { 有效期 } RecordTypeAddressClass RecordSpecificData
| 字段定义 | |
|---|---|
| 名称 | 根据 RecordType 字段而有所不同。 姓名 字段可以指定域的名称,权限区域,主机的名称,主机的别名或邮箱的别名,或者用户登录标识。 姓名 字段必须从第一列开始。 如果此字段保留为空白,那么名称将缺省为先前资源记录的值。 |
| TTL | 是时候活了 这指定记录存储在数据库中的时间长度。 如果将此字段保留为空白,那么生存时间将缺省为在权限记录开始时指定的生存时间。 这个字段是可选的。 |
| AddressClass | 记录的地址类。 此字段有三个有效条目 :ANY (对于所有地址类) , IN (对于因特网) 和 CHAOS (对于 Chaos 网络)。 |
| RecordType | 资源记录的类型。 有效记录类型为: |
| 面向服务架构 | 权限开始记录 |
| NS | 名称服务器记录 |
| A | 地址记录 |
| HINFO | 主机信息记录 |
| WKS | 知名服务记录 |
| CNAME | 规范名称记录 |
| PTR | 域名指针记录 |
| MB | 邮箱记录 |
| MR | 邮件重命名名称记录 |
| MINFO | 邮箱信息记录 |
| MG | 邮件组成员记录 |
| MX | 邮件交换程序记录 下面提供了记录类型的详细信息和示例。 |
| RecordSpecificData | 这些字段依赖于 RecordType 字段。 |
虽然装入数据库时保留大小写区分,但对名称服务器数据库的所有查询都不区分大小写。
以下字符具有特殊含义:
| 特殊字符 | |
|---|---|
| . | 如果在 姓名 字段中使用,那么为 a。 (句点) 指示当前域。 注: 使用。 (句点) ,在资源记录结束时追加当前域的路径。
|
| . . | 如果在 姓名 字段中使用,那么有两个句点表示根域的空域名。 |
| @ | 如果在 姓名 字段中使用,那么 @ (at 符号) 表示当前来源。 |
| \X | 其中 X 是除 9 0 0 9 或字符以外的任何字符 . (句点) ,字符前的反斜杠表示不应使用该字符的特殊含义。 例如,\可以使用 @ (反斜杠, @ 符号) 在 姓名 字段中的条目标签内放置 @ 字符。 |
| \DDD | 其中 0 每个 D 都是 0 到 9 之间的任何数字。 每个数字都标识为对应于该数字的二进制八位元。 不会检查这些八位元是否具有特殊含义。 注: 未在资源记录的 姓名 字段中使用 \DDD 字符。
|
| ( ) | 括号指示应将分为多行的数据分组到一起。 SOA 和 WKS 资源记录中当前使用的是 () (括号)。 |
| ; | 指示注释行。 忽略; (分号) 后面的所有字符。 |
| * | 一个 * (星号) 表示通配符。 注: 未在资源记录的 姓名 字段中使用 * (星号) 字符。
|
有两种特殊类型的线路不是数据线。 而是指定特殊处理。 这些行是 $INCLUDE 和 $ORIGNED 行。
| 特殊类型的行 | |
|---|---|
| $INCLUDE FileName | 这一行从第 1 列开始,后面跟有文件名。 它指示指定的文件应该包括在名称服务器数据库中。 这在将不同类型的数据分隔为多个文件时很有用。 例如:指示应该将此文件装入到名称服务器的数据库中。 由 $INCLUDE 行指定的数据文件不会以不同于任何其他 命名 数据文件的方式处理。 |
| $ORIGIN OriginName | 这一行从第 1 列开始,后跟域的名称。 此行指示应该更改来自数据文件中多个域的来源。 |
资源记录类型
以下是在 命名 数据文件中使用的资源记录类型的列表:
- 权限开始记录
- 名称服务器记录
- 地址记录
- 主机信息记录
- 知名服务记录
- 规范名称记录
- IN-ADDR.ARPA 记录
- 域名指针记录
- 网关 PTR 记录
- 邮箱记录
- 邮件重命名名称记录
- 邮箱信息记录
- 邮件组成员记录
- 邮件交换程序记录
权限开始记录
权限的开始 (SOA) 记录指示权限区域的开始。 每个区域应该只有一个权限记录开始,由 RecordType 字段中的值 SOA 指示。 但是,区域的 SOA 记录应该位于区域中每个名称服务器上的每个 named.data 和 named.rev 文件中。 其结构对应于以下格式:
RecordTypeAddressClass{Name}{TTL} 来源 PersonInCharge @ IN SOA merl.century.comjane.merl.century.com ( 1.1;序列 3600;刷新 600;重试 3600000;过期 86400);最小值
字段
| 项 | 描述 |
|---|---|
| 名称 | 区域的名称。 |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 权限启动 (SOA)。 |
| 源 | 此数据文件所驻留的主机的名称。 |
| PersonInCharge | 负责保持数据文件最新的人员。 格式与邮件地址类似,但通常将用户与主机名分隔开来的 @ (at 符号) 将替换为 a。 :NONE. |
| Serial | 此数据文件的版本号。 每次对数据进行更改时,此数字都应该递增。 小数点右边的数字的上限为 9999。 |
| Refresh | 辅助名称服务器与主名称服务器进行检查以确定是否需要更新的秒数。 此字段的建议值为 3600 (1 个小时)。 |
| Retry | 在刷新尝试失败之后,辅助名称服务器将重试的秒数。 此字段的建议值为 600 (10 分钟)。 |
| Expire | 辅助名称服务器由于尚未刷新而在数据到期之前可以使用该数据的上限 (以秒计)。 此值应该相当大,并且建议的值为 3600000 (42 天)。 |
| Minimum | 在资源记录中用作生存时间值的最短时间 (以秒为单位)。 建议值为 86400 (1 天)。 |
名称服务器记录
名称服务器记录指定了对给定域负责的名称服务器。 对于域的每个主服务器,应该有一个名称服务器记录,由 RecordType 字段中的值 NS 指示。 名称服务器记录可以在 named.data 文件, named.rev 文件, named.ca 文件和 named.local 文件中。 其结构对应于以下格式:
{Name} {TTL} AddressClass RecordType NameServerName
IN NS arthur.century.com字段
| 项 | 描述 |
|---|---|
| 名称 | 指示指定名称服务器所服务的域。 在此情况下,域将缺省为先前资源记录中的值。 |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 名称服务器 (NS)。 |
| NameServerName | 对指定域负责的名称服务器。 |
地址记录
地址记录指定主机的地址,并由 RecordType 字段中的值 A 指示。 地址记录可以是 named.ca, named.data和 named.rev 文件中的条目。 其结构对应于以下格式:
{Name} {TTL} AddressClass RecordType 地址
arthur IN A 132.10.8.1
IN A 10.0.4.1 字段
| 项 | 描述 |
|---|---|
| 名称 | 主机的名称。 |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 地址 (A)。 |
| 地址 | 点分十进制格式的主机的因特网地址。 对于主机的每个因特网地址,应该有一个地址记录。 如果特定域的名称服务器主机位于该域中,那么需要指定该服务器的地址的 A (地址) 资源记录。 仅在委派域的服务器中需要此地址记录,而在域本身中不需要此地址记录。 例如,如果是域的服务器aus.century.com是fran.aus.century.com,然后NS并且必需的 A 记录将如下所示: |
主机信息记录
主机信息 (HINFO) 记录列出特定于主机的信息,并由 RecordType 字段中的 HINFO 指示。 这将列出在指定主机上运行的硬件和操作系统。 请注意,硬件和操作系统信息之间由单个空间分隔。 每个主机都必须有一个主机信息记录。 HINFO 记录是 named.data 和 named.rev 文件中的有效条目。 其结构对应于以下格式:
{名称} {TTL} AddressClass RecordType 硬件操作系统
字段
| 项 | 描述 |
|---|---|
| 名称 | 主机的名称。 |
| TTL | 是时候活了 |
| AddressClass | 地址类。 对于 Internet ,有效值为 IN; 对于 Chaos net ,有效值为 CHAOS。 |
| RecordType | 主机信息 (HINFO)。 |
| 硬件 | 硬件的制造和型号。 |
| OS | 在主机上运行的操作系统的名称。 |
众所周知的服务记录
熟知服务 (WKS) 记录在指定地址列出特定协议所支持的熟知服务。 此记录由 RecordType 字段中的 WKS 指示。 虽然 TCP/IP 提供了向后兼容性的记录,但现在它已过时。
服务和端口号来自 /etc/services 文件中的服务列表。 每个地址的每个协议应该只有一个 WKS 记录。 WKS 记录是 named.data 文件中的有效条目。 其结构对应于以下格式:
RecordTypeAddressClass{Name}{TTL} 地址协议 ListOfServices
IN WKS 125.10.0.4 UDP (who route timed domain)
IN WKS 125.10.0.4 TCP (echo telnet ftp netstat finger) 字段
| 项 | 描述 |
|---|---|
| 名称 | 主机的名称。 在此情况下,主机的名称将缺省为先前资源记录中的值。 |
| TTL | 生存时间 |
| AddressClass | Internet(IN) |
| RecordType | 知名服务 (WKS) |
| 地址 | 点分十进制格式的适配器的因特网地址 |
| 协议 | 指定地址处的服务列表所使用的协议 |
| ListOfServices | 在指定地址受协议支持的服务 |
规范名称记录
规范名称记录指定规范名称 (CNAME) 的别名,并由 RecordType 字段中的 CNAME 指示。 CNAME 记录是唯一可以使用规范名称的别名的资源记录。 所有其他资源记录都必须使用完整规范 (或域) 名称。 CNAME 记录是 named.data 文件中的有效条目。 对于每个 CNAME 记录,必须有相应的地址 (A) 记录。 其结构对应于以下格式:
{Aliases} {TTL} AddressClass RecordType CanonicalName
knight IN CNAME lancelot
john IN CNAME lancelot字段
| 项 | 描述 |
|---|---|
| 别名 | 用于识别主机的别名 |
| TTL | 生存时间 |
| AddressClass | Internet(IN) |
| RecordType | 规范名称 (CNAME) |
| CanonicalName | 与别名关联的官方名称 |
IN-ADDR.ARPA 记录
域系统中的名称结构是按分层方式设置的。 通过跟踪域结构,联系服务器以获取名称中的每个标签,可以找到名称的地址。 因为结构是基于名称的,所以没有简单的方法可以将主机地址转换回其主机名。
为了允许简单的反向转换, IN-ADDR.ARPA 域。 此域将主机地址作为指向该主机的数据的名称的一部分使用。 IN-ADDR.ARPA 域根据每个主机的地址提供每个主机的资源记录的索引。 IN-ADDR.ARPA 域 (基于网络号)。 另外,为了保持一致性和自然分组,主机号的 4 个八位元是反向的。 IN-ADDR.ARPA 域由 named.boot 文件和 DOMAIN 主机数据文件中的 IN-ADDR.ARPA 记录定义。
例如, ARPANET 是 net10,这意味着有一个域被称为10.in-addr.arpa。在此域中,在以下位置存在 PTR 资源记录:51.0.0.10.IN-ADDR,该值指向主机的资源记录sri-nic.arpa(其地址为10.0.0.51)。 由于 NIC 也在 MILNET 上 (net)26,地址26.0.0.73) ,也有一个 PTR 资源记录73.0.0.26.in-addr.arpa指向 SRI-NIC.ARPA。 在 PTR 资源记录的以下部分中定义了这些特殊指针的格式,以及 NIC 的示例。
域名指针记录 (Domain-Name Pointer Record)
PTR 记录是 named.rev 文件中的有效条目。 其结构对应于以下格式:
{Aliases} {TTL} AddressClass RecordType RealName
7.0 IN PTR arthur.century.com.字段
| 项 | 描述 |
|---|---|
| 别名 | 指定此记录在域中应该指向的位置。 还指定具有八位元的主机的因特网地址 (按相反顺序)。 如果尚未在 named.boot 文件中定义 IN-ADDR.ARPA 域,那么此地址必须后跟.in-addr.arpa. |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 指针 (PTR)。 |
| RealName | 此记录所指向的主机的域名称。 |
网关 PTR 记录
还使用 IN-ADDR 域来查找特定网络上的网关。 网关与主机具有相同类型的 PTR 资源记录,但它们也具有其他 PTR 记录,用于仅按网络号对其进行定位。 1 记录将 1 个, 2 个或 3 个八位元作为名称的一部分,具体取决于它们分别是 A 类, B 类还是 C 类网络。
gw.csl.sri.com. IN A 10.2.0.2
IN A 128.18.1.1
IN A 192.12.33.2此外,此网关在三个不同区域中的每一个区域 (每个网络一个区域) 中都具有以下一对数字到名称转换指针和网关位置指针。 在每个示例中,首先列出数字到名称指针,然后再列出网关位置指针。
A 类
2.0.2.10.in-addr.arpa. IN PTR gw.csl.sri.com.
10.in-addr.arpa. IN PTR gw.csl.sri.com. B 类
1.1.18.128.in-addr.arpa. IN PTR gw.csl.sri.com.
18.128.in-addr.arpa. IN PTR gw.csl.sri.com. C 类
2.33.12.192.in-addr.arpa. IN PTR gw.csl.sri.com.
33.12.192.in-addr.arpa. IN PTR gw.csl.sri.com. 例如,名为以下名称的用户elizabeth使用以下资源记录将其邮件传递到主机venus.abc.aus.century.com:
elizabeth IN MB venus.abc.aus.century.com. 邮箱记录
邮箱 (MB) 记录定义用户要接收邮件的机器,并由 RecordType 字段中的 MB 指示。 MB 记录是 named.data 文件中的有效条目。 其结构对应于以下格式:
{Aliases} {TTL} AddressClass RecordType 机器
jane IN MB merlin.century.com字段
| 项 | 描述 |
|---|---|
| 别名 | 用户登录标识 |
| TTL | 生存时间 |
| AddressClass | Internet(IN) |
| RecordType | 邮箱 (MB) |
| 机器 | 用户要在其中接收邮件的机器的名称 |
邮件重命名名称记录
邮件重命名 (MR) 名称记录允许用户接收已寻址到别名列表的邮件。 此记录由 RecordType 字段中的 MR 指示。 MR 记录是 named.data 文件中的有效条目。 其结构对应于以下格式:
{Aliases} {TTL} AddressClass RecordType CorrespondingMB
merlin IN MR jane字段
| 项 | 描述 |
|---|---|
| 别名 | 最后一个字段中列出的邮箱名称的别名。 |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 邮件重命名 (MR)。 |
| CorrespondingMB | 这是邮箱的名称。 此记录应该具有相应的 MB 记录。 |
邮箱信息记录
邮箱信息 (MINFO) 记录为邮件列表创建邮件组,并由 RecordType 字段中的 MINFO 指示。 此记录通常具有相应的邮件组记录,但也可以与邮箱记录配合使用。 MINFO 记录是 named.data 文件中的有效条目。 其结构对应于以下格式:
{Name} {TTL} AddressClass RecordType 请求维护程序
postmaster IN MINFO post-request greg.century.com字段
| 项 | 描述 |
|---|---|
| 名称 | 这是邮箱的名称。 |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 邮件信息记录 (MINFO)。 |
| 请求 | 应发送邮件请求 (例如,要添加到邮件列表中的请求) 的位置。 |
| 维护人员 | 应该接收错误消息的邮箱。 当应该向发件人以外的其他人报告邮件错误时,这尤其有用。 |
邮件组成员记录
邮件组成员 (MG) 记录列示了邮件组的成员。 此记录由 RecordType 字段中的 MG 指示。 MG 记录是 named.data 文件中的有效条目。 其结构对应于以下格式:
{MailGroupName} {TTL} AddressClass RecordType MemberName
dept IN MG Tom字段
| 项 | 描述 |
|---|---|
| MailGroupName | 邮件组的名称。 |
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 邮件组成员记录 (MG)。 |
| MemberName | 组成员的登录标识。 |
邮件交换程序记录
邮件交换程序 (MX) 记录标识知道如何将邮件传递到未直接连接到网络的机器的机器 (网关)。 此记录由 RecordType 字段中的 MX 指示。 包含 * (星号) 的通配符名称可用于具有 MX 条记录的邮件路由。 网络上可能有服务器声明任何发送到域的邮件都将通过中继设备进行路由。 MX 记录是 named.data 文件中的有效条目。 其结构对应于以下格式:
{Name} {TTL} AddressClass RecordType PrefValue MailExchanger
Ann.bus.com IN MX 0 Hamlet.Century.Com
*.dev.bus.com IN MX 0 Lear.Century.Com字段
| 项 | 描述 |
|---|---|
| 名称 | 指定邮件交换程序知道如何将邮件传送到的主机的全名。 注: 第二个 名称 条目中的 * (星号) 是通配符名称条目。 它指示任何发送到域的邮件dev.bus.com应该通过邮件网关进行路由Lear.Century.Com.
|
| TTL | 是时候活了 |
| AddressClass | 因特网 (IN)。 |
| RecordType | 邮件交换程序 (MX))。 |
| PrefValue | 指示当有多种方式将邮件传递到主机时,邮件程序应该遵循的顺序。 |
| MailerExchanger | 邮件网关的完整名称。 请参阅 RFC 974 以获取更多信息。 |
示例
以下是邮件发送活动列表的示例:
dept IN MINFO dept-request jane.merlin.century.com
IN MG greg.arthur.century.com
IN MG tom.lancelot.century.com
IN MG gary.guinevere.century.com
IN MG kent.gawain.century.com