第6章 时间校准(2 / 2)
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
林劫没再问。第二天凌晨他背了个工具包,换了身灰扑扑的工装——就是那种通信公司外勤维修工常穿的连体工作服,胸口还印着个模糊的公司logo,是他从黑市上花五十块买的二手货。坐马雄手下那辆破面包车到了基站外围,猫在对面一栋废弃居民楼的四楼窗户后面,用夜视望远镜盯着基站门口看了快一个钟头,把巡捕巡逻车的经过时间精确记下来。三点二十七分一趟,四点零六分一趟,中间间隔三十九分钟,误差不超过一分钟。摄像头是旧型号,红外夜视距离大概十五米,角度覆盖基站大门和侧面围墙,但有一个盲区——它拍不到基站背面那堵墙和墙上的通风百叶窗,因为背面紧挨着一栋同样废弃的旧仓库,两栋建筑之间只有一条不到一米宽的夹缝。
林劫从夹缝里摸进去的时候,后背蹭着两面墙的水泥面往前挪,挪到基站背面那堵墙下,抬头看——百叶窗离地面大概三米高,铝合金的,但固定螺丝锈得厉害,有一颗已经松脱,歪在一边。他用螺丝刀把那几颗锈螺丝挨个拧下来,手稳得像是拧自家水龙头,拧完最后一颗,百叶窗往外一拉就开了。里面是通风管,直径大概六十公分,勉强够一个人缩着肩膀爬进去。他把工具包叼在嘴里,双手撑着管壁往上蹭,蹭了大概两米,摸到了电缆桥架的铁质横梁。沿着横梁往右爬了大概八米,头顶出现了他在地图上看到的那个位置——机柜背面。
机柜的金属背板冰冰凉凉,左下角果然有个RJ45接口,上面还贴着张泛黄的标签,写着“维护端口-未授权禁止接入”。林劫把便携终端接上去,从工具包里拉出根卷好的网线,插上,终端屏幕亮起来。授时服务器的操作系统还是旧版本的Lux,内核没打过最新的安全补丁,登录界面也没设密码——因为这个基站已经不在主网里,运维人员早就把它忘了。他连Shell都不用提权,直接进了时钟寄存器的读取接口——当前原子钟授时时间以UTC格式显示在屏幕上,精确到毫秒,后面还跟着一连串跳动的小数点后三位。他把这组数据保存下来,用便携终端上的一个小脚本把UTC时间换算成瀛海市的本地时间,又额外记录了一个关键参数——这台授时服务器的时钟偏移量。从它最后一次与主干原子钟集群同步到现在,时钟偏移了大概四十七毫秒。四舍五入,不到零点零五秒。够用了。
他把数据打包加密,用预先铺好的低轨卫星短报文通道发给了沈易,发完之后把终端拔下来,网线卷好塞回工具包,顺着原路爬出去,再把百叶窗装回去,螺丝一颗一颗拧紧。整个过程从钻进夹缝到钻出来,一共用了不到三十分钟。巡逻车还没来。沈易收到数据之后,立刻用光纤直连跳板分发给三个变电站的接收端,老鬼在旧港区主变电站拿到授时数据之后用了不到十分钟就手动校准了那几台改装电压源的内部时钟,校准完之后还在加密频道里回了一条消息,语气不像是汇报工作,更像是自言自语:“误差零点零三秒。老子这辈子对时都没这么准过。”
锈带北和锈带南分站也同步完成了校准。马雄亲自守在锈带南那台接收终端前面,看到屏幕上跳出来的同步成功的提示,转头对旁边蹲在地上抽烟的疤头说了一句:“告诉兄弟们,时间对好了。谁手抖早按一秒,老子把他手指头掰了。”疤头把烟头往地上一摁,笑了笑,没说话。
同一天晚上,交通信号系统的逻辑炸弹注入端也做了最后一次对时测试。沈易在墨影旧服务器上那套“绿波”项目的残留代码里埋了个带时间触发条件的补丁,用博士去年申请的一次性授权密钥签了名。他自己反复测了四次,每次都是在预设触发时间到达后的四十毫秒内完成注入,全部落在林劫要求的同步窗口内。他盯着屏幕上第四次测试跑完的那行绿色状态码,发现自己手心里全是汗。不是紧张——是坐在屏幕前面连续跑测试跑太久了,手掌贴在键盘掌托上捂出来的。他把汗蹭在裤子上,截了张图发给林劫。
网络端的时间校准要比物理端更精细。两百万台肉鸡,每台设备的本地时钟都有自己的漂移量,虽然经过之前的集中同步已经对齐到彼此相差不到三十毫秒,但林劫还需要确保所有设备在发起洪峰请求的那一秒完全同步——不是在绝对时间意义上,而是在行动指令触发的意义上。绝对时间由攻击脚本里的触发时间戳控制,时间戳本身已经对齐到从授时服务器窃取的标准时间;指令触发则由一个轻量级的同步脉冲完成,脉冲本身通过僵尸网络内建的P2P传播协议以树状拓扑分发,从根节点到所有叶子节点的最大延迟经过之前两轮压力测试,压到了三百七十毫秒以内。这个数字还差了一点——理想目标是二百毫秒以内。
林劫花了一个下午重新优化了僵尸网络的同步脉冲分发拓扑,把树状结构改成了多层星型结构,在关键节点上加了几个专用的低延迟中继服务器——说是服务器,其实就是几台从马雄黑市上借来的高性能矿机,挖不了矿,但网络转发性能一流。改完拓扑之后重新跑测试,最大延迟从三百七十毫秒降到了不足两百毫秒。
至此,所有攻击节点的时间基准全部对齐到龙吟系统的原子钟集群,最大同步误差不超过零点三秒,远小于三秒的行动窗口。他把测试完的同步数据保存下来,关了屏幕,靠在椅背上闭了会儿眼。黑暗里,他能感觉到那两百万台沉睡的肉鸡像无数根拉满的弓弦,只等一个信号。窗外锈带的天又亮了,不知道是第几个没睡的夜晚。