服务器迁移后改了 A 记录,大部分用户正常,少数地区仍然访问到旧机器。碰到这种情况,我一般先确认改动有没有真的生效。
原因不复杂,旧记录的缓存时间设置过长,各地递归服务器要等缓存过期才会重新查询。
「域名解析 TTL」相关的日志我一般连着看前后五分钟,单看一条报错经常判断不出是哪一步失败。日志级别临时调高可以,记得改回去,长期开着既占磁盘又掩盖真问题。
# 迁移前 24 小时 @ A 1.2.3.4 TTL 300 # 切换后稳定 @ A 5.6.7.8 TTL 3600
权限不要一口气开到最大,先加到够用再往上试,范围小才好收。把复现步骤压到三条以内,交给同事也能跑出来,才算真的定位清楚。
改动写完就同步给同事,下一个人踩同一个坑,成本还是你的。验证用真实数据走一遍,测试数据太干净,边界情况根本碰不到。
具体做法是,迁移前先把 TTL 调小;切换记录并观察各地解析;稳定一天后再调回常规值。
最后用这个标准收尾,各地解析结果一致指向新 IP,旧机器可以下线。