2026 年 10 月 16 日,星期四,晚上十一点四十七分。我在家里那台 2019 款 MacBook Air 上打开终端,输入 dig cn9t.com,然后盯着屏幕看了三十秒。返回的 ANSWER SECTION 里躺着一行 3600。那是 TTL。三千六百秒。一个小时。
我知道这意味着什么。每次改解析记录,要等最多一小时,全球的递归解析器才会把旧记录丢掉。上周我换了服务器 IP,从 104.21 那台挪到 172.67 那台,结果有读者在微信上跟我说,他刷了四十分钟,页面还是旧的。我当时说,等等吧。他说好。然后第二天早上告诉我,好了。
这件事让我不舒服。不是因为他抱怨,是因为我需要等。等一串数字过期。这感觉像在跟一个看不见的钟表讨价还价。
我把 TTL 压到了 60
十一点五十二分,我在服务商的控制台里把 A 记录的 TTL 从 3600 改成 60。六十分钟变成一分钟。改完按了保存。控制台弹出一行绿色小字:修改成功,全球生效预计需要 1—2 分钟。
然后我做了件有点蠢的事。我打开 dnschecker.org,在输入框里敲下 cn9t.com,选择 A 记录。屏幕上弹出一张世界地图,每个国家的格子里写着解析结果。我按了刷新。旧 IP 还在。再按。还在。按到第七次,日本和新加坡的格子先翻成了新 IP,然后是法兰克福,然后是圣保罗。北美那一排最后一个变。
整个过程用了四十三秒。我记了数。不是大概,是四十三秒。从按下保存到地图上最后一个格子变色,四十三秒。比我预想的快。也比 TTL 的六十秒快。这说明缓存不是均匀过期的,是各玩各的。
我把这个结果写在便签上,贴在显示器左下角。便签是黄色的,3M 的,一包五本十二块钱。上面写了两行字:第一行是“60s TTL”,第二行是“43s 全球”。字很丑,写快了。
一个我不太认同的流行说法
我得说一个可能有争议的观点。网上很多人,包括一些技术博客和播客,喜欢讲一句话:TTL 越短越好,短到 60 是专业,短到 30 是极客。我不这么看。
短 TTL 有代价。每次 TTL 到期,解析器都要重新发起查询。对 cn9t.com 这种每周更新一次的个人站来说,无所谓。一天几百次请求,查就查了。但如果你是一个每天几十万请求的站,TTL 设成 60,等于给上游的权威服务器多压了几十万次查询。这是把成本转嫁出去,换自己改配置时少等几分钟。那不叫专业,叫把方便留给自己,把请求推给别人。
我的判断很简单:改配置之前把 TTL 压短,等记录稳定了再拉回去。用的时候短,不用的时候长。而不是永久性地把 TTL 钉在 60,然后到处说这是最佳实践。那个说法,我认为是被高估了的。服务器不是慈善机构,你的权威 DNS 也不是。
数字之外的东西
十一点五十八分,我关掉 dnschecker,打开 cn9t.com 的首页。加载出来了。新的。没有缓存。那一刻我没什么兴奋感,就是觉得,快了。好像路本来要绕一个小时,现在直走了。
我把终端窗口留在屏幕上没关。里面还挂着刚才那条 dig 命令的输出。我看了一眼,把 MacBook 合上了。
明天要把这篇写出来。每周更新嘛。总得有点新东西。