摘要
- RFC 1296 中的 ZONE 程序维护域和服务器清单,先以 SOA 检查被联系服务器对所请求域是否具有权威性,再发送 AXFR 请求。研究把从 DNS 发现的
[name(s), IP-address(es)]组合定义为一个 host;这是一条计数规则,不是直接可达性的测试。 - 禁止或失败的区域传送、以及没有登记在域名服务器里的主机,会令收集结果偏低;格式错误条目、非权威服务器和更名过渡期保留的旧条目,则可能制造额外记录或双计数。作者在人工扫描后把 ZONE 数据称为最少主机数,而非实际数字。
RFC 1296《Internet Growth (1981-1991)》 最容易被摘走的是一张增长表,最值得保留的却是表格周围的限定。Mark Lottor 没有把 DNS 看作一只可以直接称出“互联网”重量的秤。他写下了一个收集过程:从哪里开始、向哪个服务器提问、何时认为服务器有资格回答、何时请求整个区域、哪些记录进入表、哪些无法进入,以及为什么最后只能作出方向明确但范围有限的判断。
ZONE 是 Zealot Of Name Edification 的缩写。它在 1986 年写成,原本服务于 Host Table 向 DNS 过渡的时期:程序可以沿 DNS 树行走,利用收集来的信息建立一份 host table,供尚未完成 DNS 过渡的站点使用。它后来并未用于这个目的,而是被发现适合收集域名系统和互联网规模的统计资料。用途的转换不能被忽略:一个能把记录装进表里的程序,并不会因此变成对所有机器、所有网络成员或所有可达服务的普查工具。
权威性检查不是可达性检查
ZONE 的行走并不是简单地把能解析的名字抄下来。程序维护一份域及其服务器的列表,并为每个域保留一个标志,记录是否已经从某台服务器成功装入信息。由于 BIND 的另一个缺陷,它必须预先得到所有顶级域及其 name servers 的列表。对于尚未成功传送的域,它循环尝试联系其中一台服务器,使用 TCP 连接;首先发出 Start of Authority,即 SOA 查询,以确认该服务器对被请求域具有权威性;如果确认,再发送 AXFR 区域传送查询,请求取得该域的全部资源记录。
当收到 name server 记录时,引用的域和服务器被加入后续处理列表。收到 A、CNAME、HINFO、MX 记录时,它们被加入内存中的主机信息表。程序在完整循环一遍而未收到新信息后结束,然后把主机信息写成 HOSTS.TXT 格式文件。这里每一步都有不同的证据对象:一次 SOA 回应关乎收集器向该服务器索取该域记录的依据;一次 AXFR 成功关乎收集器接收了哪些记录;一次表格归并关乎分析程序怎样处理这些记录。
这些步骤不能互相越权证明。某服务器对 SOA 查询作出权威性回应,不证明区域内每个记录都准确、更不证明记录背后机器可从互联网直连。AXFR 返回一组资源记录,不证明所有现实中的主机都在这组记录中。某组合被归为一个 host,不证明它是单一物理机器,也不证明它属于某个机构、某项服务或某种经济意义上的“互联网”。收集到的记录是观察结果;可达性、身份和总量是另一些问题。
RFC 1296 给 host 的定义把这条边界写得很清楚:对于本研究,一个 host 是从 DNS 发现的 [name(s), IP-address(es)] 分组。这个分组让拥有多个名字或地址的主机不至于被重复计算。它并不考虑主机是否可被直接访问。规则处理的是计数单位,而非机器状态。一个名称可以仍然指向旧记录,一个地址可以无法连通,一个被收集的组合也可以不符合读者心目中“互联网成员”的边界;定义不能替这些事实作答。
缺失给出了偏差方向,却没有给出补数
真正限制 ZONE 的首先是它拿不到的资料。某些 Internet sites 不允许从其 domain servers 获取区域传送。ZONE 在失败次数过多后最终放弃传送某个域。在 1992 年 1 月 1 日这次运行里,大约 17,000 个域中有 800 个无法传送。文档还假定,不是所有互联网主机都登记在某个 domain server 中。两种情况都使原本可能进入统计的资料没有进入收集表,于是文档说这些问题会令 ZONE 收集的统计低于实际数量。
“低于”不是一个可以随意补齐的百分比。RFC 没有说每个未传送的域内有多少主机,没有说未登记的主机都可直接访问,也没有给出隐藏部分的完整分布。它只保留了一条更窄的结论:若方法的对象是成功取得的 DNS 记录,那么拒绝、失败和源中不存在的对象不会神奇地出现在结果里。把结果称为下界,是承认已知缺失的方向,而不是假装掌握缺失部分的大小。
收集器本身的历史也使单个数字不能被读成同一时刻的快照。DNS 大约在 1984 年被引入,花了近四年才在互联网中充分实施;到那时,许多主机已不再登记在旧 Host Table 中。早期 BIND 对区域传送有重大问题,ZONE 直到约 1988 年才可收集完整 DNS 数据。收集耗时从数小时增长到一周,产生的主机表很快接近 50 MB。当时的运行模式只收集主机名和 IP 地址,忽略协议、主机信息和 MX 记录,之后借助 sort、uniq、grep 等工具计算所需统计;SRI 每三个月运行一次。
一周完成的行走不是一个全网同时刻的观察。每季度一次的运行不是持续的现实库存。为了减小数据量而明确忽略的字段,不能在后来被当作已经观察过的证据。数字取决于起始清单、收集窗口、服务器回应、传送完成情况、所保留的记录类型和归并规则。方法不是给图表增加可信度的装饰;方法定义图表到底在说什么。
多余条目没有填平看不见的部分
RFC 1296 并没有只描述会令数字偏低的问题。它说,对已收集数据的人工检查也显示 DNS 中有许多随机条目。格式错误的条目可能导致虚假的服务器或主机记录出现;有时列出的服务器并不对相关域具有权威性;有时整个域被更名,而旧条目为了过渡仍被保留,导致域内每个主机都可能被算两次。这些情况会在表里增加或重复观察,推动结果向上。
文章的重要判断在于比较,而不是掩盖反向误差。人工扫描表明,与前面谈到的缺失相比,这些额外条目并不显著。因此 ZONE 数据可以被视为互联网主机的最少数量,而不是实际数字。这不是任何 DNS 枚举在任何年代都必然低估的定理;它是作者针对这个程序、这批材料和这次审查写下的条件性评估。
这区分了两件常被混合的工作。第一件是保存观察账本:哪个域被尝试、哪台服务器被联系、SOA 是否通过、AXFR 是否完成、何时接收到什么记录。第二件是解释账本:这些记录对应什么研究对象,遗漏和重复之间的关系是否支持某个方向性结论。排序和去重可以按规则处理多名字、多地址;它们不能决定一个失败传送背后有多少主机,不能判定旧名是否仍代表同一机器,也不能令一次 DNS 发现成为连接成功的证据。
DNS 中存在,不等于从互联网可达
RFC 1296 直接指出,统计互联网 hosts 和 domains 的困难在于如何定义 Internet 本身。DNS 中找到 host entries,不一定表示 host 可从 Internet 到达。许多公司在 Internet 与本地网络之间设置 mail gateways,禁止直接访问;有的公司宣传所有主机,有的只宣传网关。两种情况下哪些主机应算入?此外,许多 DNS domains 只是为 Internet 之外的站点(例如 Usenet)提供 mail-forwarding 的 MX entries;它们是否真的属于互联网规模研究?
这些不是一次追加查询能够修复的技术空白,而是测量对象的选择。DNS 回应可以支持“某个记录被返回”的说法;AXFR 完成可以支持“收集器收到某区记录”的说法;分组规则可以支持“表如何避免重复计数”的说法。若要说主机直接可达、组织归属某网络、某名称代表某身份,或总量就是整个互联网,就要引入另一条定义、另一种观察或另一个权威来源。一个排列整齐的时间序列不会自动获得这些更强的谓词。
下载每个域的信息还有成本:它产生大量网络流量,并给每台被联系的 domain server 增加额外 CPU 负担。RFC 1296 提议,或许应由一个组织化的努力定期运行一个程序,以避免多个收集器带来的问题。这是关于收集协调和外部成本的建议,不证明当时存在一个被授权无限枚举、或独自决定谁属于互联网的中心观察者。
更频繁的收集仍不能取消类别差异
在未来问题部分,RFC 说 ZONE 运行在 DECsystem-20 上,以汇编语言编写;数据量快速逼近 DEC-20 地址空间和硬件承受能力的上限。程序把所有数据放在内存中,之后才输出到磁盘,以便把 host nicknames 和 official names 匹配起来;昵称有时会在不同域中,使较简单的办法复杂化。作者建议为预期数据量设计新架构,将资料保存在磁盘上,用并行区域传送缩短时间,并让新版本在持续数周到一月的周期中更新本地统计数据库。
这是一个设计建议,并不是新架构已被实施、持续数据库已存在或之后统计已变完整的证据。提高频率可以降低部分观察的陈旧程度,并行可以缩短一次行走经历的时间,落盘可以降低系统崩溃时丢失的资料;没有一项改进会把 DNS 记录变成可达性证明,把名字/地址分组变成不变身份,把观察到的下界变成总体。RFC 的历史价值就在于:即使设想改善工具,也没有消除这些层次。
来源与证据限制
唯一来源是 RFC 1296。它支持该文 1992 年 1 月 Informational 身份、Host Table 与 ZONE 数据的使用、SOA/AXFR 顺序、记录类型、host 分组、传送失败、残留条目、下界结论、范围问题、1992 年 1 月的表中数字、收集成本和未来架构建议。它不证明当前 DNS 人口、实时 AXFR 结果、当代 BIND 属性、现行枚举政策、任一主机可达性、组织归属、安全状态、替代收集器已经部署或任何后续结果。
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
