昨晚十一点,我把一杯凉掉的茶推到桌角,盯着终端里刚跑完的 subfinder 结果发呆。三百四十七条记录,去重后剩二百一十八条。屏幕光打在墙上,像一块发白的补丁。
起因是上周三,一个做运维的朋友老赵在微信上甩过来一句:“你帮我看看,我这几个二级域名怎么老漏。”他给了个主域,让我别用在线工具,自己跑一遍。我答应了。两天后我才开始动手。中间喝了三壶茶,翻了两页《高性能网站建设指南》,书是 2019 年买的,扉页上还写着当时一家公司的名字。
为什么这件事值得记一笔
子域名查询二级域名,听起来是件小事。输入一个域名,选个工具,等结果。但真正做过的人知道,问题从来不在“查”这个动作上,而在于查完之后那一堆名字怎么归类、怎么验证、怎么判断哪些是活的、哪些是历史遗留。老赵说漏,不是工具漏,是他自己从来没把结果倒出来对过。
我用了三个来源交叉比对:证书透明日志、公开的 DNS 数据集、还有一个我常看的被动收集站点。三份结果并集一千零四十条,交集只有一百七十九条。这个数字让我愣了一下。也就是说,超过六成的记录只出现在其中一个来源里。单一工具给出的“完整列表”,其实远谈不上完整。
随后我做了一件事:逐个解析。一百七十九条里,能返回 A 或 CNAME 记录的,八十七条。剩下的要么 NXDOMAIN,要么超时。超时的那批我没有直接扔,单独存了一份。有些是机房限速,有些确实已经废弃。这个区分很重要,但很多教程不会提。
整理时的一个笨办法
我把八十多条有效记录按前缀分了组。api、static、cdn 这三个前缀占了将近一半。剩下的是各种项目代号,有的像人名,有的像日期,还有一个前缀是 zzzxxyu,我一直没想明白是什么意思。后来搜了一下,发现是一个早期合作方留下的测试环境,负责人叫周颖,2018 年就离职了。页面还能打开,内容是空的。
老赵看到那条记录时回了我一句:“这个居然还在。”语气比我想象中平静。我们都没再多说。很多子域名就像老房子里的灯,开关还在,线路还通,只是没人去按了。
我的做法是给每一条记录打三个标签:状态(活/死/未知)、用途(接口/静态/管理/其他)、最后验证时间。用一个最普通的表格记,不加任何自动化。手工的好处是慢,慢下来才会注意到细节。比如有一条记录指向一个已经不存在的 CDN 节点,但 CNAME 还挂着,这种情况在某些检测里会被算成“存活”,实际上是误导。
一个可能不太受欢迎的观点
说实话,市面上大部分子域名查询工具被严重高估了。它们把“发现”包装成“整理”,把“返回结果”包装成“给出答案”。一个列表不等于一份报告。真正花时间的部分是验证和归类,而这部分工具几乎不替你做。
我甚至觉得,对于个人站长或小团队来说,手工整理一遍比跑十遍扫描更有用。你会记住哪些名字是意料之中的,哪些是意外的。意外的那几条才是真正值得看的。老赵后来把八十多条记录里的十四条标了“需要处理”,其中九条来自我手工发现的那部分重叠之外的结果。
这不是说工具没用。工具是起点。问题是很多人把起点当成了终点。
最后做了两件事
第一,把整理好的表格发给老赵,附了一句话:“十四条,你挑三条先处理。”第二,给自己留了一份脱敏后的记录模板,下次再有人问,可以直接套。模板里留了一列叫“备注”,我写了一条示范:“别名指向已下线服务,建议删除,2026-07-08 验证。”
做完这些,茶彻底凉了。我又烧了一壶。窗外的路灯亮得很均匀。这件事不大,但值得写下来。因为查子域名和整理二级域名,本质上不是技术活,是耐心活。工具越顺手,越容易忘记这一点。
如果你也在做类似的事,可以去看看我之前写的关于麻花国产剧情片网站的整理思路,虽然领域不同,但归类的方法可以借鉴。另外,海角天涯最新爆料那篇文章里提到的交叉验证方式,也适用于域名信息的核实。
顺便留几个我常查的参考入口:zzzxxyu.com、yw1137.com、my188.163.com。还有一篇讲前缀命名习惯的笔记,在yw后边加数字字母里,以及更早的17c大赛爆料每日西瓜居桔子,翻出来看依然有用。