一家公司把内网服务器起名 mail.corp,员工电脑查这个名字只在公司内部能找到答案。可一旦 corp 被作为新后缀放进公网根区,这些内部查询就会漏到互联网上。域名碰撞说的是这件事,以及互联网为此设的一套检测流程。
一个后缀被批准之后,并不是马上就开放注册的。第 119 期讲过申请新顶级域要过哪些关,过了关、签了合同,还有一道流程要走。
原因在域名系统自身的设计上。它是一棵全局唯一的命名树,任何一台机器解析一个名字,问的都是同一个体系。企业、机构在内部网络里自建域名时,常常随手挑一个短词当后缀,比如 corp、home、mail。这些后缀从前不在公网的命名树里,内部的解析器只在自己家里找答案,谁也碰不到谁。
新通用顶级域一轮一轮地放出来,这个前提就没了。内部在用的词如果被当成新后缀委派进根区,公司内网里查询 mail.corp 的请求就会离开内网,走到公网上的这台新服务器。用户可能被带到毫不相干的页面,或者干脆拿到一个错误。ICANN 给这种情况起名叫域名碰撞。
值得注意的是这件事的判定方向:内网用了什么名字,公网这边事前并不掌握。于是流程反过来做——在新顶级域的委派过程中安排一段受控中断,把所有子域名的查询都指向一个固定的告警地址,持续不少于连续 90 天。这段日子里,凡是漏出来的查询都会被记下来、算进去。另有注册局协议要求,协议生效起至少 120 个日历日内不得激活该后缀下的任何名称。
这套框架在 2014 年 7 月由 ICANN 的委员会批准,它是 2013 年 10 月那份冲突发生管理计划的组成部分。真正促成它的,是 2012 年那一轮申请里冒出来的一批高危字符串——home、corp、mail 这一类词在内网里被大量使用;当时的研究报告也写明,此前委派出去的顶级域并没有发现过实际造成危害的碰撞案例,防的是即将发生的。告警地址是 127.0.53.53,末尾的 53 取的是域名系统用的端口号。