摘要

  • RFC 1101 提出用 IN-ADDR.ARPA 中对应“主机部分为零”的名称,把网络名称、网络号和嵌套子网连起来:PTR 指向名称,若还有下一层子网,A 记录承载掩码。
  • 它有意分开组织自行选择的名称与 NIC 对已分配网络号的记录。一条 DNS 回答只能描述其作用域内的对应关系;它不分配号码、不自动追随日后改名,也不证明当前控制权或通信结果。

HOSTS.TXT 留下的一项空白

P. Mockapetris 在 1989 年 4 月发表 RFC 1101 时,DNS 已经是可扩展的名称系统,许多原先来自 HOSTS.TXT 的信息已能以新的方式分发。但文档指出,网络名称和网络号之间的互查仍是那张主机表拥有、DNS 尚未拥有的能力。它为这个具体问题给出一项“建议标准”,又把更一般的标识符—数字映射列为实验性 Yellow Pages 想法。

两种地位不应混在一起。RFC 1101 没有说每一个网络号都会从此带有唯一且普遍的人类含义。它设想的是:管理者可以在一处有明确责任边界的 DNS 空间里,公布一个自己维护的名称与一个号码之间的关联。调试界面因而可以少显示一串不透明的数字,多显示一个可供人辨认的标签;它仍没有得到所有权、路线、许可或服务结果的答案。

命名权没有随着号码分配而集中

网络名称的问题表面上是语法,实质上也涉及谁来维护。旧的名称语法是平面空间,很容易让 NIC 像管理数字一样持续分配和规制名称。RFC 1101 记载的多数意见则倾向于名称的本地控制:采用扩展后的主机名称语法,管理者可以在自己控制的任何域中创建网络名称。

这不是把名称变得更短或更整齐。RFC 直言,代价是网络名称会变得和主机名称一样复杂。得到的好处是,名称的维护可以留在知道其语境的人手里。文中的 ARPANET.ARPA. 因而只是当时一项命名选择的例子;它不是一个资源的永久定义,更不是自动授予某个网络号的凭证。

从 IP 地址反查时,入口又不能由这个本地名称决定。RFC 1101 于是复用按地址组织、已被委派的 IN-ADDR.ARPA 树。地址一侧的维护者可以在相应范围内发布反向描述,而无需为这件事另建一座全球性的目录树。

“主机为零”是一张索引卡,不是一台机器

RFC 建议的记录形状是:<反转的主机零号码>.IN-ADDR.ARPA. PTR <网络名称>。网络名称处放一条反向 PTR;如果网络继续划分子网,同一主机零条目还放一条 A 记录,其数据是子网掩码。0.0.0.10.IN-ADDR.ARPA. 与 0.0.2.128.IN-ADDR.ARPA. 是文中为说明形状而给出的历史例子,不是关于今天网络的报告。

这里的“零”没有变成一个可访问的主机。它只是 DNS 树中一处可辨认的档案位置,管理者可以在那里附上网络描述,读者也能检验相关资料是否已被放入。PTR 把面向数字的入口接到本地维护的名称上;它不会配置路由器、授予权利,更不会让名称自动成为号码的法人、运营或现实身份。

这条 A 记录也必须按它在提案中的角色阅读。它在此携带掩码,不是通常意义上“主机名对应地址”的证明。按当时 A/B/C 类地址的程序,读者先对 IP 取掩码、倒置字节、查询 PTR;如果同处还返回掩码 A,便用原 IP 与该掩码继续下一层;没有 A 时,嵌套结束。这是一种历史查询算法,不是现行拓扑、可达性或路径状态的证书。

三个方向的指针仍是三个有限陈述

RFC 1101 还允许组织名称以 PTR 指向一个或多个主机零网络条目。因此,网络名称可指向号码形条目,号码形条目可指回所选名称,组织名称也可指向若干网络记录。三个方向都实用,恰恰因为它们没有被压成一个万能结论。

域内发布的组织—记录关联,是关于这次发布的事实;网络名是关于一个命名选择的事实;查询应答是关于某种算法、某一时刻所返回内容的事实。它们无论单独还是未经额外证据地叠加,都不足以证明当下所有权、公司关系、物理保管、授权、BGP 路由、报文接收或应用成功。RFC 1101 让记录更有价值的方式,是不让它替这些问题越权回答。

文档也承认分布式维护并非免费。集中表格可能更一致,分布式记录则可能更及时、更易维护。记录格式不能消除把事实维持正确的工作;它只能把这项工作放回明确的范围,并让阅读者知道断言来自何处。

分配记录不会替新主人决定名称

Yellow Pages 一节把这条界线说得最直接。RFC 设想可以在 DNS 域树中索引端口助记名与端口号、自主系统标识符与号码、已分配网络名称与 IP 地址等配对。一个数字必须同时标明“从哪种类型来、到哪种类型去”,否则连它映射的含义都不清楚。

对已分配网络号,NIC 可以维护成对的 YP 域,用于记录 NIC 自己的分配决定。但 RFC 紧接着限定:这种记录映射的是已分配的名称和数字,而不是组织后来自己选择的名称;它也不会自动追随新主人所做的改名。分配历史与本地命名被明确设计为两种不同的事实。

中心目录可以是该中心分配决定的有力证据;本地区域可以是其所发布标签的有力证据。两者都不能绕过新的证据,直接推出当前运营者、可用服务、路由政策或一次交易的结果。记录描述的是自己边界内的现实,并不会创造读者希望附加到它身上的其余现实。

按历史文件的尺度阅读它

RFC 1101 是关于 1989 年一项提案的证据。它的分类地址程序、YP 域和示例组织都不等于今天 DNS 的部署描述。但它保留了一种长期有用的纪律:让映射可检查,说明方向、来源和范围,不要要求一条记录承载从未写入其中的决定。已发布名称、已分配号码、已观察路线和已证实结果,始终应是四种不同的命题。

来源与证据边界

本文历史分析使用 RFC 1101、RFC 1034 与 RFC 1035。它们支持 1989 年提案、记录形式及“分配名称/本地名称”的区别;不支持当前 DNS 数据、当下控制权、身份、所有权、路由、可达性、授权或服务表现的结论。