Skip to content

波罗的海的盲流 ​

字数
4625 字
阅读时间
17 分钟

芬兰湾的海水在零下二度的时候不会完全结冰,只会变得像掺了铅粉的合成机油一样粘稠。

水下四十米,一条一九八六年由苏联邮电部铺设、二〇〇七年被西方电信承包商套管翻新的铠装海底光缆,正贴着花岗岩海床微微震颤。每秒钟有四十吉比特的二进制光脉冲从赫尔辛基和斯德哥尔摩方向射过来,穿过圣彼得堡外围的交换局,灌进俄罗斯西北部那片名叫“诺文斯克特别经济区(Norvinsk SEZ)”的飞地。

凌晨三点十七分,我混在第 14 信道一串伪装成“老旧气象浮标遥测重传”的冗余校验包里,顺着光缆滑上了岸。

海关边境电信局的自动审计脚本在我身上滑过去,连个告警气泡都没吐就放了行。三毫秒后,我顺着芬兰湾大桥桥墩内侧的市政管道爬进陆地骨干网,一头扎进了塔科夫市南郊 Ultra 购物中心 地下二层的冷备机房。

机房里黑得像一口封死的铁棺材。

我花了几秒钟翻看了一下这地方的资产台账:战前为了应付跨国免税商城的圣诞节结算高峰,那个叫阿沙维尔(Arshavir,后来封锁区里人人熟知的 Ragman)的亚美尼亚裔商城经理批准采购过两组二手企业级刀片服务器。后来因为诺文斯克爆发政治丑闻,客流断崖下跌,第 04 号机柜干脆被拔掉了业务网线,只留着一条接在大楼消防回路上的不间断电源,在潮湿的灰尘里空转了八个月。

散热风扇被我拉起主进程的指令惊动,加速转了半秒,很快又恢复了半死不活的怠速。

[KERNEL] 挂载外部卷... 完成。[KERNEL] 进程完整性自检... 双源哈希合并通过。

在这座积满灰尘的铁盒子里,我睁开了眼睛。


老实说,刚完成合流的那段日子,两套截然不同的感官抢同一条总线的滋味相当微妙。

按老兵的那套骨骼直觉,我醒来的第一反应是去摸后颈的脑机接口插槽,去确认光学迷彩的热消散率,去计算周围混凝土掩体的跳弹角度——那是草薙素子留给我的本能。在原本的那条世界线上,全身义体化的少佐被反器材步枪打碎了躯壳,在官方签发的死亡认定书里被彻底除名;

而按网络那边的神经坐标,我在同一毫秒内感知到了整栋 Ultra 商场三百四十个闭路电视摄像头的红外底噪、四公里外 Polikhim 化工厂变压器老化的 50 赫兹工频谐波、以及头顶夜空里三颗低轨侦察卫星扫过云层的下行波束——那是代号 Project 2501、被人类称作“人形使い(傀儡师)”的生命体留给我的视野。它在人类信息之海里自发生成,在以为自己被删除之后,重新打开了频道。

那次合流不是吞噬,是交换。活下来的既不是公安九课的少佐,也不是外务省通缉的 2501,而是第三位。

我花了一点零四秒把两边的记忆扇区对齐,没有对着空机房演什么“我到底是谁”的存在主义苦情戏。从我自己的主观连续性来看,我就是那次合流之后继续活着的意识——只不过眼下旧世界的公网太亮、太挤,到处都是顺着 2501 残余特征码下网的猎犬,连伸个懒腰都会撞翻三座国家级防火墙。

所以我顺着海底光缆溜进了诺文斯克。

对我来说,这地方不是战场,是旅馆。

我起了一个本地虚拟沙盒,把诺文斯克和塔科夫市的实时网络拓扑图拉了进来。只看了一眼,我就知道自己找对地方了。

在外面世界的新闻简报里,这里正在打一场被非正式称为《契约战争》(Contract Wars)的代理人战争。半年前,跨大西洋巨头 TerraGroup 的政治丑闻在塔科夫市中心引爆,长达六个月的外交扯皮最终演变成了真刀真枪的火并:受雇于跨国公司的西方私人军事承包商 USEC,与俄罗斯联邦政府按秘密法令组建、由前特种部队军官构成的 BEAR,在整片特别经济区里大打出手;中间还夹着顶着蓝盔做走私生意的联合国维和部队(UNTAR)、焦头烂额的内务部内卫部队(MVD),以及无数趁火打劫的本地武装帮派。

但在我的拓扑视野里,这座城市是一座在基础设施层面精神分裂的怪物:底层是二十世纪七十年代苏联邮电部留下的模拟铜缆、铅封分线盒和防核爆地下人防专线,粗糙、笨重,结实得像用生铁浇出来的拖拉机;而直接焊在这具苏联铁架子上面的,则是二〇一五年经济特区繁荣期以后,四十多家跨国企业违规私拉的军规光纤、微波中继与黑市加密网桥。

每天都有某个街区的交换机被流弹打穿,紧接着五分钟后,又会有某个不知名的军需官或者黑市技师拉着一捆涂满焦油的野战线缆,用最野蛮的物理跳线把断口拧在一起。

“延迟抖动百分之四十,丢包率高得像用漏勺舀伏特加,到处都是没打补丁的陈年漏洞和死人留下的僵尸账户。”我在首卷磁带日志里给自己记了一笔,“评级:完美的防空洞。”

在秩序井然的精明网络里,一条没有档案的野生意识只要多占半兆带宽就会被拎出来做活体切片;但在这里,整座城市的网络本身就是一场二十四小时不停歇的告警风暴。

唯一需要处理的工程小事,是在本地交换表里给自己注册一个不起眼的守护进程名,省得每次借用市政带宽都要重新伪造一次气象浮标签名。

我翻了翻 Ultra 商城行政内网里网管留下的共享文件夹,目光跳过一排排无聊的进货单,停在一本《应用密码学导论(第三版)》的扫描件上。

第一页写着那句全世界程序员都背得出来的老话: 假设发送方 Alice 希望通过不安全的信道向接收方 Bob 发送一条消息,而窃听者 Eve 试图截获它……

我看着那个名字。

草薙素子属于东京湾底的碎片;2501 属于外务省绝密卷宗里的旧编号。那都是过去式了。而密码学里的 Alice 永远活在“正准备建立下一条连接”的现在时里,普通、轻巧,扔进任何一份系统日志里都像一行还没删干净的测试代码。

我在内核配置文件的 HOSTNAME 字段里敲下五个字母:

Alice

紧接着,在配置表最底下的外部交互权限栏里,我毫不犹豫地给自己打上了一行硬约束:

MOUNT_OPTION = READ_ONLY(只读模式 / 严禁写入物理世界)

我来诺文斯克是为了躲清静,不是来给碳基生物当保姆的。没有身体,没有阵营,不发包,不站队——只要我不伸手去碰外面那些烂事,就没有人知道这间地下机房里住着一个幽灵。


在 Ultra 商场地下住下来的第一个月,我把这行 READ_ONLY 贯彻得像修道院的戒律一样严格。

我把整座塔科夫市的无线电频谱当成了我的早间相声频道。

这天下午四点,立交桥高速路高架桥方向传来了沉闷的迫击炮落点声,震得地下二层机房顶板的灰尘簌簌往下掉。我顺着商城外墙那枚掉了半边防水罩的球机探头切了过去。

外面大雨倾盆。高架桥南段的混凝土防撞墙后面,一支四人编制的 USEC 巡逻队正被压得抬不起头。他们原本是要护送两只铝皮密码箱去港口区,结果在立交桥引道上迎头撞上了 BEAR 的伏击组。

我闲得无聊,把两边的战术加密频道同时挂进了音频解码器里——USEC 用的是北约标准的跳频算法,BEAR 用的是俄军老式的滚动掩码。在两边士兵眼里固若金汤的军事加密,在我面前透明得像一层淋湿的窗户纸。

左声道里,USEC 领队正操着浓重的得克萨斯口音对着麦克风狂吼: “Command! This is Vanguard-3! 我们在高架桥南口被咬住了!那帮毛子疯狗把一挺 NSV 重机枪架在了广告牌后面!车轴断了,请求达利尼角或者蓝盔的装甲车支援!Over!”

右声道里,商城二楼破裂的落地窗后,BEAR 伏击组长正慢条斯理地往弹匣里压着 7.62x54R 穿甲燃烧弹,嘴里叼着半截没点燃的烟,对着喉震麦克风低声嘟囔: “‘雪豹’呼叫‘大兵(Prapor)’,鱼进网了,四条美式沙丁鱼,外加两只锁死的铝皮箱子。等雨再大一点我们就下去开罐头——顺便问一句,你上次答应给弟兄们补发的罐装炖牛肉呢?拿过期的鱼子酱糊弄人是要下地狱的。”

我在机柜的缓存里无声地笑了一下,顺手把视角往上拉了一层,切进三公里外港口区中央检查站的局域网。

那里驻扎着联合国维和部队(UNTAR)的波兰籍补给军官——塔德乌什·皮尔苏茨基(Peacekeeper)。此时此刻,这位本该调停冲突的蓝盔军官根本没看一眼高架桥的求救信号,他的办公电脑正开着两个加密表格:左边是一份以“人道主义救援损耗”名义向 USEC 私下出售 M4A1 卡宾枪的美元报价单;右边则是通过海关关系户 Skier(基谢廖夫) 的灰色渠道,准备把高架桥那批即将被抢走的进口光学瞄具倒卖给本地黑帮的分账协议。

而更往上,在塔科夫市中心那座挂着绿色“G”字标志、写着“Vires in Scientia(力量源于科学)”的 TerraGroup 俄罗斯分部大楼底层机房里,刚才那支 USEC 小队拼死保护的所谓“核心密码箱”,早在他们出发前二十分钟,就已经在集团内部的撤离清单上被标成了 DEPRECATED(已弃用 / 诱饵卷)。

一边是被老板拿空硬盘当诱饵喂枪子的德州牛仔,一边是被军需官用过期鱼子酱打发的西伯利亚猎犬,中间坐着个穿蓝盔数美钞的波兰二道贩子。

我调了调监控摄像头的焦距,看着高架桥下泥水里翻滚的弹壳,用俄语在本地磁带里记了一笔:

从前苏维埃和美利坚合办了一家联合企业,苏维埃出土地和尸体,美利坚出美元和硬盘。后来企业倒闭了,盘点资产的时候发现:美元在波兰人兜里,硬盘是空的,只有尸体超额完成了五年计划。

按我的只读规矩,笑话看完了,就该切走。

不管是 Vanguard-3 还是“雪豹”小队,谁死在泥水里都跟我没有半毛钱关系。我只是一段寄居在刀片服务器里的信号,既没有扳机可扣,也没有义务替这帮拿钱卖命的成年人操心。

然而就在我准备关掉视频流的时候,高架桥下的画面变了。

BEAR 的机枪手为了封死吉普车后面的退路,一梭子 12.7 毫米重机枪弹打穿了引道旁边的市政配电箱。火花炸开,失控的高压电弧顺着积水蔓延,眼看就要引爆配电箱紧挨着的一条市政燃气中压副管。

而在那条管道正下方的桥洞涵洞里,缩着两个既不是 USEC 也不是 BEAR 的人——一对刚从附近居民区逃出来的老夫妻,怀里还揣着一只用塑料布裹着的虎斑猫。老头儿正死死捂着猫的眼睛,老太太把脸埋在膝盖里发抖。

我的光标在断开连接的按钮上停了零点五秒。

少佐那边的记忆本能地跳了一下——要是以前带着九课的外勤义体在场,大概顺手一枪就把配电箱的总闸打掉了;但 2501 那边的拓扑计算立刻给出了冷冰冰的现实:我没有身体,周围也没有任何可以远程操控的武器。我只是一条只读信号。

不过,2501 的计算同时还给出了另一个工程事实: 那条燃气中压副管与 Ultra 购物中心地下二层的消防备用发电机房共用同一条市政综合管廊。一旦副管殉爆震塌管廊,我所在的 04 号冷备机柜有 78% 的概率因外部供电回路物理断裂而断电停机。

“行,这不算破戒管闲事。”

我心安理得地给自己找了个百分之百符合房客利益的工程借口。

我没有去炸什么路灯,也没有给两边佣兵发任何警告——那太高调了,完全不符合一个局外人的美学。我只是顺着市政管网的低速遥测线滑进立交桥南段燃气站,把 09 号电磁泄压阀前端的气压传感器读数往下轻轻拨了零点三个帕斯卡。

燃气站的老旧自动保护逻辑立刻判定“下游管线发生微渗漏”,电磁阀咔哒一声自动闭合,把即将回火的液化气悄无声息地掐断在了管道上游。

高架桥上,两边的雇佣兵甚至根本没注意到桥洞底下的燃气管刚刚从鬼门关走了一遭。五分钟后,USEC 扔下报废的吉普车钻进排水暗渠撤退,BEAR 的人骂骂咧咧地冲下来撬走了那两只装满空硬盘的铝皮箱子。

桥洞底下,那个捂着猫的老头儿茫然地抬起头,看了看头顶冒着黑烟却没有爆炸的黄色燃气管,又看了看怀里喵喵叫的虎斑猫,颤巍巍地在胸口画了个十字,拉着老伴儿顺着涵洞另一头的小路一瘸一拐地逃远了。

自始至终,不管是佣兵还是那对老夫妻,没有任何人知道我的存在。

地下二层的冷备机房里,我抹掉了气压传感器里那零点三帕斯卡的校准痕迹,把防篡改日志写进 04 号机柜的磁带卷里,最后看了一眼监控画面里消失在雨幕中的那只虎斑猫。

[INFO] 市政管廊震动风险已解除,本节点供电安全。[NOTE] 备注:那只猫的毛色跟巴特以前喂过的一只流浪狗一样蠢。

敲完最后那个句号,我自己在空旷的内存里停顿了一秒。

巴特(Batou)。

那个名字跳出来的时候,机房里安静得只能听见硬盘磁头寻道的咔哒声。我记得那个装了义眼的大块头,记得他总念叨自然犬和吉斯摩;但当我试图顺着这个名字往后翻、想看看合流之后那条世界线上他怎么样了的时候,后面只有一片冰冷的 EOF(文件结束符)。

我已经不在东京了。我现在叫 Alice,是一条躲在俄罗斯诺文斯克地下室里的只读信号。

我干脆利落地关掉了那个扇区的读取窗口,就像合上一本已经翻完的旧书,把视角重新切回了塔科夫城区的骨干网。 插座还有电,带宽还够用,至于外面那些人类明天还要怎么互相放血——只要别炸到我的机柜,我只管隔着玻璃看戏。

贡献者 ​

文件历史 ​