当系统管理员统治地球时
本文信息来源:craphound
前言:
本文为 Cory Doctorow 2007 年短篇小说集《超频:未来现在的故事》(Overclocked: Stories of the Future Present)中的一篇,由 Avalon Books 旗下 Thunder’s Mouth 出版。本文采用知识共享署名-非商业性使用-相同方式共享 2.5 版许可证许可,文末有更多相关信息。
本故事及本卷中的其他故事可在以下地点获得:
http://craphound.com/overclocked
你可以在各大优质书店购买《Overclocked》,也可在 Amazon 购买:
用伍迪·格思里的话说:
“这首歌在美国受版权保护,版权登记号为 #154085,保护期为28年,任何被发现未经我们许可唱这首歌的人,都将成为我们的好朋友,因为我们一点也不在乎。出版它。写下它。唱它。随它摇摆。用约德尔声唱它。我们写了它,这就是我们想做的一切。”
本书献给帕特·约克(Pat York),是他让我的故事更精彩。
—
《当系统管理员统治地球》导言
自从1990年我从大学退学以来,我每两三年就换一次职业,做过的最棒的差事之一是作为自由职业的系统管理员,在信息时代的蒸汽隧道里工作,铺设电缆、配置机器、维护备份、在网络的软肋上狠狠敲打一番。系统管理员是这个世纪未被歌颂的英雄,如果他们不是因为你发有挑逗性的即时消息或在电子邮件中行为不端而找你麻烦,那完全是出于他们的善意。
有一种有害的神话认为互联网是为抵御核战争而设计的;虽然这种斯特兰奇洛夫式的白日梦无疑存在于那些在 Rand、BBN 等公司为网络研发开绿灯的将领们的潜意识中,但它并不是实际工程与设计中的重要部分。
尽管如此,这个场景仍然引人入胜——世界各地被关在牢笼里的系统管理员屏息凝望,发电机熄火、服务器断电,他们在漫长时刻中等待,直到电力和空气耗尽。
本故事最初发表于 Baen’s Universe Magazine,这是一份令人钦佩的高质量在线杂志,主编是才华横溢且热衷于开放与自由文化的作家 Eric Flint。
听我播客的人听到的是原文这个故事,在每次写作后以连载片段朗读出来。听众来信催着要知道接下来发生了什么,这种压力让我保持诚实、继续写下去。
—
当系统管理员统治地球时
(原载于 Baen’s Universe,2006)
当费利克斯的那个特殊手机在凌晨两点响起时,凯莉翻了个身,朝他肩膀捅了一下,低声嘶道:“你睡前怎么不把那该死的东西关了?”
“因为我值班,”他说。
“你又不是他妈的医生,”她说,他坐在床沿上,穿着之前脱在地上的裤子准备睡觉时她踢了他一脚。“你他妈是个系统管理员 。”
“这是我的工作,”他说。
“他们把你当成政府的苦力使唤,”她说。“你知道我说得对。看在上帝的份上,你现在是个父亲了,不能每次有人色情网站断供就半夜跑出去。别接那个电话。”
他知道她是对的。他接了电话。
“主路由器无响应。BGP 无响应。”系统监控的机械声音不在乎他对它咒骂,于是他咒了句,这让他感觉好一点。
“也许我能从这儿修好它,”他说。他可以登录机柜的不间断电源并重启路由器。那台不间断电源在另一个网段,有自己独立的路由器和专用的不间断电源。
凯莉现在坐在床上,靠在床头板上,身影模糊。“结婚五年了,你从来没能从这儿修好过什么。”这次她错了——他经常在家修东西,但都是悄悄做的,不大张旗鼓,所以她不记得。她也对——他的日志显示过凌晨一点之后,除非亲自开车去机柜,否则什么都修不好。无限宇宙作对法则——也就是费利克斯定律。
五分钟后菲利克斯坐到方向盘后。他在家里修不好。独立路由器的网段也离线了。上一次出现这种情况时,有个蠢透了的施工工人把沟渠机开进了主干管道,直接撞到了数据中心,菲利克斯和另外四十多个愤怒的系统管理员一起,站在那坑边整整一周,朝那些昼夜不停、拼命把一万根电缆接回去的可怜家伙们大声咒骂。
车里他的手机又响了两次,他让它覆盖立体声,通过那些更关键的离线网络基础设施的大而浑厚的扬声器播放机械化的状态报告。然后是凯莉打来电话。
“嗨,”他说。
“别尴尬,我能从你声音里听出尴尬来。”
他不由自主地笑了笑。“将军,不要畏缩。”
“我爱你,菲利克斯,”她说。
“我对你完全着迷,凯利。回床上去吧。”
“2.0 醒了,”她说。宝宝在她腹中时还叫 Beta Test,羊水破了的时候,他接到电话冲出办公室,大喊着, 金版刚发货! 他还没哭完就被叫成 2.0。“这个小混蛋生来就是来吃奶的。”
“抱歉把你叫醒了,”他说。他快到数据中心了。凌晨两点没有交通。他放慢速度,在车库入口前靠边停下。他不想在地下丢了 Kelly 的电话。
“这不是吵醒我,”她说。“你在那里已经七年了。你有三个下属向你汇报。把电话交给他们。你已经付出够多了。”
“我不喜欢让我的下属做任何我自己不愿做的事,”他说。
“你做到了,”她说。“求你了?我讨厌半夜独自醒来。夜里我最想你。”
“凯利——”
“我不再生气了。我只是想你了,仅此而已。你让我做甜美的梦。”
“好吧,”他说。
“就这么简单?”
“没错,就这么简单。不能让你做噩梦,而且我也尽了本分。从现在起,我只在节假日值夜班。”
她笑了。“系统管理员不放假。”
“这个会的,”他说。“保证。”
“你太棒了,”她说。“哦,恶心。2.0刚把核心转储弄得到处都是我的浴袍。”
“那是我的孩子,”他说。
“哦,他确实是,”她说。她挂了电话,他驾车驶入数据中心停车场,刷卡进门,撬起朦胧的眼皮让视网膜扫描器好好看一眼他被睡意侵袭的眼球。
他在机器旁停下,给自己拿了一根瓜拉纳/美达非诺能量棒和一杯致命的机器人咖啡,装在防溢的洁净室吸管杯里。他狼吞虎咽地吃下能量棒,啜了一口咖啡,然后让内门读取他的手部几何特征,估量了他一会儿。门叹了口气似地开了,一股正压空气随着气闸的排放向他扑来,终于当他通过时将他吹进了内殿。
一片混乱。那些笼子本来设计成能让两三名系统管理员同时在其周围活动。每寸立方空间几乎都被嗡嗡作响的服务器机架、路由器和硬盘占据。在它们之间挤着不少于二十名其他系统管理员。到处是黑色 T 恤,上面印着莫名其妙的标语,肚子压在带着手机和多功能工具的皮带上。
通常笼房里冷得要命,但这些人把狭小封闭的空间都烤热了。他走进来时,五六个人抬头做了个苦笑。两个人叫了他的名字。他把肚子挤过压机和笼子,向房间后面的 Ardent 机架走去。
“Felix。”是 Van,那晚他并不值班。
“你在这儿干嘛?”他问,“没必要我们俩明天都被搞垮。”
“什么?哦。我的个人机柜在那边。大约一点三十宕机了,是我的进程监控把我叫醒的。我本该给你打电话说我要下去——省得你跑一趟。”
Felix 自己的服务器——他和另外五个朋友共用的一台机箱——就在下一层的机架里。他想知道它是否也下线了。
“情况怎么样?”
“大规模闪虫攻击。某个混蛋利用一个零日漏洞让网络上的每台 Windows 机器对每个 IP 网段进行蒙特卡洛探测,包括 IPv6。那些大型 Cisco 都在 IPv6 上运行管理界面,只要同时收到超过十个探测就会瘫痪,这意味着几乎所有交换点都挂了。DNS 也出问题了——好像有人昨晚篡改了区域传送。哦,还有个电子邮件和即时消息组件,会向你通讯录里的每个人发送看起来很逼真的信息,吐出基于你已存邮件和消息触发的艾丽莎式对话,诱导你打开特洛伊木马。”
“我的天啊。”
“是啊。” 范是二类系统管理员,身高超六英尺,留着长马尾,喉结随之起伏。他胸前的 T 恤写着 CHOOSE YOUR WEAPON,图案是一排多面体角色扮演骰子。
菲利克斯是个一类系统管理员,腰腹周围多了七八十磅赘肉,蓄着整洁但浓密的胡须,盖在他那几下巴上。他的 T 恤上写着 HELLO CTHULHU,图案是一个可爱、没有嘴、类似凯蒂猫风格的克苏鲁。他们认识已有十五年,起初在 Usenet 相遇,后来在多伦多的 Freenet 啤酒聚会现场面过几次,还在一两次星际迷航大会上碰过面,最后菲利克斯把范招到 Ardent 做他的下属。范办事靠谱、做事有条不紊。受过电气工程师训练的他,随身带着一叠螺旋笔记本,记满了他每一步行动的细节,并标注了时间和日期。
“这次连键盘与椅子之间的问题都不是,”范说。PEBKAC(问题存在于键盘与椅子之间)。电子邮件特洛伊木马属于那类——如果人们足够聪明不去打开可疑附件,电子邮件特洛伊木马就会成为过去。但吞噬 Cisco 路由器的蠕虫并不是用户的问题——那是无能工程师的错。
“不是,是 Microsoft 的错,”费利克斯说。“只要我在凌晨两点上班,不是键盘与椅子之间的问题就是 Microsloth 的锅。”
#
他们最后干脆把该死的路由器从互联网拔掉了。当然不是费利克斯,尽管他也恨不得这么做,并在关闭它们的 IPv6 接口后重新启动它们。是由几个该死的“地狱中的公牛混蛋操作者”干的,他们必须同时转动两把钥匙才能进入机柜——就像民兵导弹发射井里的守卫。加拿大 95% 的长途流量都经过这栋楼。它的安全性甚至比大多数民兵导弹发射井还要好。
Felix 和 Van 把 Ardent 的机器一台一台重新上线。它们正被蠕虫探测攻击狂轰滥炸——把路由器重新接回网络只是把下游机位暴露给了攻击。互联网上的每一台机器都要么被蠕虫淹没,要么在制造蠕虫攻击,或两者兼而有之。Felix 在大约一百次超时后终于联系上了 NIST 和 Bugtraq,下载了一些内核补丁,应该能减轻这些蠕虫给他管理的机器带来的负载。那时是上午 10 点,他饿得能把死熊的屁股吃了,但他还是重新编译了内核,把机器带回了线上。Van 那双长手在管理键盘上飞速跳动,舌头伸出来,一边对每台机器运行负载统计。
“我在 Greedo 上连续运行了两百天,”Van 说。Greedo 是机架里最老的服务器,来自他们把机器以《星球大战》人物命名的年代。现在它们都改用蓝精灵的名字,而且蓝精灵快用完了,开始用麦当劳乐园的人物命名,从 Van 的笔记本开始,叫 Mayor McCheese(麦当劳市长)。
“Greedo 会再度崛起,”菲利克斯说,“我楼下有一台运行了五年多的 486。重启它真会让我心碎。”
“你到底拿486做什么鬼用?”
“没啥。但谁会把一台运行了五年的机器关掉?那就像给你奶奶安乐死一样。”
“我想吃点东西,”厢式货车说。
“这样吧,”Felix 说。“我们先把你的盒子弄好,然后是我的,然后我带你去 Lakeview Lunch 吃早餐披萨,剩下的一天你就放假。”
“你接通了,”厢式货车说。“伙计,你对我们这些小兵太好了。你应该像其他老板那样把我们关在坑里然后抽我们一顿。这才是我们应得的。”
#
“是你的电话,”厢式货车说。Felix 把自己从那台根本无法开机的 486 机箱内部拽出来。他从经营垃圾邮件的人手里弄来了一块备用电源,正试着把它装上。他让厢式货车把掉在他腰带上的电话递给他——那电话是在他扭身去开机箱后盖时掉下的。
“嘿,Kel,”他说。背景里有一种奇怪的、嗅探似的声音。静电,或许?2.0 在浴缸里拍打的声音?“Kelly?”
线路断了。他试着回拨,可什么反应也没有——既无铃声也无语音信箱。他的手机最后超时,显示“网络错误”。
“该死,”他淡淡地说。他把手机夹在腰带上。Kelly 想知道他什么时候回家,或者要他为家里买点什么。她会留语音信箱。
他在测试电源时电话又响了。他抓起电话接通。“Kelly,嘿,怎么了?”他努力让声音里不带丝毫恼意。他感到有些内疚:严格来说,一旦 Ardent Financial LLC 的服务器恢复上线,他就已履行完对公司的义务。过去三小时纯属私事——尽管他打算把这笔费用记在公司账上。
电话那端传来抽泣声。
“凯利?”他感觉脸色一阵苍白,脚趾也麻木了。
“菲利克斯,”她在抽泣中几乎听不清地说。“他死了,天哪,他死了。”
“谁?是谁,凯利?”
“遗嘱,”她说。
“遗嘱?”他心想。“他妈的是谁——”他跪倒在地。威廉是他们在出生证明上写的名字,尽管他们一直叫他2.0。菲利克斯发出一声痛苦的声音,像病犬的低吠。
“我病了,”她说,“我甚至站不起来了。哦,Felix。我太爱你了。”
“Kelly?怎么回事?”
“大家,大家——”她说。“电视上只剩两个频道了。天哪,Felix,窗外看起来像《活死人黎明》——”他听见她干呕。电话开始失真,把她的呕吐声像回声器一样放了回来。
“别动,Kelly,”电话那端断线时他喊道。他拨了 911,但一按发送电话又显示网络错误。
他从厢式货车上把 Mayor McCheese 拽过来插到 486 的网线接口,命令行启动 Firefox,谷歌搜索地铁警察的网站。动作迅速但不慌乱,他找到了一个在线联系方式。Felix 从不丢了理智。他解决问题,而慌张不能解决问题。
他找到了一个在线表格,把和 Kelly 的对话详情写得像在提交一个漏洞报告,手指飞快,描述完整,然后他点了提交。
厢式货车从他肩后读到。 “Felix——” 他开口说。
“天哪,”Felix 说。他坐在笼子的地板上,慢慢把自己扶起来。Van 接过笔记本试着打开几个新闻网站,但都加载超时。究竟是发生了可怕的事情还是网络被超级蠕虫拖垮,无法判断。
“我得回家,”Felix 说。
“我来开车送你,”Van 说。“你可以继续给你妻子打电话。”
他们走向电梯。楼里为数不多的窗户之一就在那儿,是一扇厚重的防护舷窗。他们在等电梯时透过窗看出去。周三的交通并不多。警车是不是比平时多?
“哦,我的天——”Van 指着说。
CN 塔,这座巨大的白象般的针状建筑,在他们东侧耸立。它歪斜着,像枝条卡在湿沙里。它在动吗?在动。它在慢慢倾斜,但速度在加快,朝东北方向金融区倒去。下一秒,它越过了临界点,轰然倒塌。他们感到震动,随后听到声响,整栋大楼因冲击而摇晃。一团尘土从废墟中升起,随着这座世界上最高的独立式建筑撞穿一幢又一幢楼,更多的雷鸣随之而来。
“广播中心要垮了,”Van 说。确实——CBC 那栋高耸的建筑正以慢动作坍塌。人们四处奔逃,被坠落的砖石压伤。从舷窗看出去,仿佛在看一个从文件共享网站下载来的精美电脑特效片段。
系统管理员们现在聚拢过来,推搡着想看清那场毁灭。
“发生了什么事?”其中一个人问道。
“CN 塔倒了,”费利克斯说。在他自己耳中,声音显得很遥远。
“是病毒吗?”
“蠕虫?什么?”费利克斯盯着那人看,那人是个年轻的管理员,腰间有点二型肥肉。
“不是那个蠕虫,”那人说。“我收到一封电子邮件,说整个城市因某种病毒被隔离了。有人说是生物武器。”他把黑莓手机递给 Felix。
Felix 全神贯注看着那份据称转自加拿大卫生部的报告,竟没察觉灯都熄了。然后他注意到了,把黑莓手机又塞回到对方手里,发出一声低泣。
#
发电机一分钟后启动了。系统管理员们一窝蜂往楼梯挤去。Felix 抓住 Van 的手臂,把他拉了回来。
“也许我们应该在笼子里等它过去,”他说。
“那凯利呢?”Van 说道。
菲利克斯觉得自己要吐了。“我们现在应该进笼子里。”笼子装有微粒空气过滤器。
他们跑上楼去到那个大笼子前。菲利克斯打开门,然后让门在他身后咝地关上。
“菲利克斯,你需要回家——”
“是生化武器,”菲利克斯说。“超级细菌。只要过滤器撑得住,我们在这儿应该没问题。”
“什么?”
“上 IRC,”他说。
他们做到了。厢式货车带来了麦芝士市长,Felix 用了 Smurfette。他们在聊天频道里到处跳,直到找到一个带有熟悉昵称的频道。
五角大楼没了/白宫也没了
我的邻居在圣地亚哥的阳台上呕血
有人把“黄瓜塔”(Gherkin)撞翻了。银行家们像老鼠一样逃离金融城。
我听说银座着火了
Felix 打字:我在多伦多。我们刚看到 CN 塔倒塌。听说有生物武器,速度非常快。
Van 读到这段话,说:“你不知道它有多快,Felix。也许我们三天前就都暴露了。”
Felix 闭上眼睛。“要真是那样的话,我想我们早就会感觉到一些症状了。”
看起来像是电磁脉冲摧毁了香港,也可能还有巴黎——实时卫星画面显示它们完全暗掉,那里的所有网络段都不在路由
> 你在多伦多?
那是一个不熟悉的称呼。
> 可以——在 Front Street
> 我在多大(UofT)的妹妹们联系不上她——你能打电话给她吗?
无电话服务
费利克斯敲击键盘,盯着 NETWORK PROBLEMS。
“我在麦克芝士市长那儿装了个软电话,”Van 说着,启动了他的语音覆盖 IP 应用。“我刚想起来。”
费利克斯从他手里拿过笔记本电脑,拨通了他的家里电话。电话响了一声,接着传来一种平直刺耳的嘶哮声,像意大利电影里救护车的警笛。
> 没有手机信号
菲利克斯又敲起键盘。
他抬头看着厢式货车,看到她瘦削的肩膀在颤抖。厢式货车说:“该死的,世界要完了。”
#
一个小时后,Felix 才从 IRC 上离开。亚特兰大已经被烧毁。曼哈顿高温——放射性足以干扰俯瞰林肯广场的网络摄像头。起初人人都指责伊斯兰,直到明显知道麦加变成了一片冒烟的火坑,沙特王室在他们的宫殿被处以绞刑。
他的手在颤抖,厢式货车静静地在牢笼远角哭泣。他又试着给家里打电话,然后打给警察。和前二十次一样,还是没用。
他通过 ssh 进入楼下的盒子,取出邮件。垃圾邮件,垃圾邮件,垃圾邮件。更多垃圾。自动生成的通知。那儿——来自 Ardent 机柜入侵检测系统的一条紧急消息。
他打开日志迅速阅读。有人粗糙地、反复探测他的路由器。也不符合任何蠕虫的特征。他沿着 traceroute 追查,发现攻击源自和他同一栋楼,楼下一个机柜里的系统。
他有一套处理程序。他对攻击者进行了端口扫描,发现 1337 端口是开着的——1337 在黑客的数字/字母替换代码中表示“leet”或“elite”。那种端口通常是蠕虫留着用来进出潜行的。他在谷歌上搜索了已知会在 1337 端口留下监听程序的漏洞利用,根据被攻陷服务器的操作系统指纹缩小了范围,然后就找到了。
那是一个古老的蠕虫,本该在多年前就给每台盒子打上补丁防止的。没有脑子。他有对应的客户端,并用它在那台盒子上为自己创建了一个 root 账户,随后登录进去,四处查看。
还有另一个用户登录,名为“scaredy”,他查看了进程监视器,发现 scaredy 已经派生出数百个探测他的以及许多其他主机的进程。
他打开了一个聊天窗口:
别再探测我的服务器
他原本以为会遇到自吹自擂、内疚或否认。他很惊讶。
> 你在 Front Street 数据中心吗?
> 是的
> 天啊,我还以为我已经是最后一个活着的了。我在四楼。我觉得外面发生了生物武器攻击。我不想离开洁净室。
菲利克斯呼出一口气。
> 你是在试探我,让我追溯到你?
> 对
“那很聪明”
聪明的家伙。
“我在六楼,还有一个和我一起。”
“你知道什么?”
菲利克斯粘贴了 IRC 聊天记录,等着对方消化。Van 站起身踱步,眼神恍惚。
“厢式货车?伙计?”
“我要去尿尿,”他说。
“别开门,”菲利克斯说。“我看到那垃圾桶里有一只空的 Mountain Dew 瓶子。”
“对,”厢式货车说。他像个僵尸似的走到垃圾桶边,掏出那只空的麦格南。他转过身去。
> 我是费利克斯
> 遗嘱
费利克斯想到2.0时,胃里慢慢翻了个跟斗。
“Felix,我觉得我得出去一下,”Van 说。他正朝气闸门走去。Felix 扔下键盘,挣扎着站起身,纵身冲向 Van,在他到门前之前把他扑倒了。
“厢式货车,”他说,看着朋友那双涣散、失焦的眼睛。“看着我,厢式货车。”
“我得走了,”Van 说。“我得回家喂猫。”
“外面有东西,行动迅速而致命。也许会随风吹散,也许已经没了。但我们要坐在这儿,直到确定为止,或者直到别无选择。坐下,Van。坐下。”
“我冷,”Felix 说。
天寒地冻。菲利克斯的手臂起了鸡皮疙瘩,双脚感觉像两块冰块。
“靠着服务器坐,靠近通风口。利用排气的热量。”他找了个机架,靠上去蜷缩着。
你在吗?
还在这——处理一些物流问题
> 我们还能多久出去?
> 我不知道
接着很长一段时间没有人再敲字。
#
菲利克斯不得不把那瓶山露喝了两次。然后厢式货车又用了它一次。菲利克斯再次拨打了凯利的电话。地铁警察网站瘫痪了。
最终,他靠回服务器,双臂抱住膝盖,像个孩子一样放声大哭。
一分钟后,Van 走过来,坐在他身旁,臂弯搭在 Felix 的肩上。
“他们死了,Van,”Felix 说。“Kelly 和我那—儿子。我的家人都没了。”
“你也说不准,”Van 说。
“我很确定了,”菲利克斯说。“天啊,完了,是吧?”
“我们再坚持几个小时然后出发。情况应该很快恢复正常。消防队会处理的。他们会动用陆军。会没事的。”
菲利克斯的肋骨很痛。他自从——自从2.0出生后就再也没哭过。他更紧地抱着膝盖。
然后门开了。
两位走进来的系统管理员眼神狂热。一个穿着写着 TALK NERDY TO ME 的 T 恤,另一个穿着 Electronic Frontiers Canada 的衬衫。
“过来,”TALK NERDY 说。“我们都在顶层集合。走楼梯。”
菲利克斯发现自己屏住了呼吸。
“要是楼里有生物制剂,我们都被感染了,”TALK NERDY 说。“快走,我们会在那儿和你会合。”
“六楼有一个,”Felix 一边爬起来一边说。
“Will,没错,我们找到了。他在楼上。”
TALK NERDY 是那些把大路由器拔掉的“地狱混蛋运维”之一。Felix 和 Van 慢慢上楼,他们的脚步在空荡的竖井里回荡。经过机架里刺骨的冷风后,楼梯间感觉像桑拿一样闷热。
顶楼有个食堂,厕所、饮用水、咖啡和自动售货机食品都能用。每一样前都有一排忐忑不安的系统管理员队伍。没人相互对视。费利克斯琢磨着哪个是威尔,然后他也加入了自动售货机的队伍。
他又买了几根能量棒和一大杯香草咖啡,直到零钱用光。Van 给他们弄到了一张桌子,Felix 把东西放在他面前,然后去排厕所队。“留点给我,”他说着,把一根能量棒扔到 Van 面前。
等他们都安顿好、彻底撤离并开始吃东西时,TALK NERDY 和他的朋友又回来了。他们清理了准备区尽头的收银台,TALK NERDY 站上了去。谈话慢慢平息下来。
“我是乌里·波波维奇,这是迭戈·罗森鲍姆。谢谢大家上来。我们可以确定的是:大楼已经用发电机供电三小时了。目测我们是多伦多市中心唯一还有电的大楼——发电还能再撑三天。楼外有一种来源不明的生物制剂散布开来。它致死迅速,数小时内致命,并以气溶胶形式传播。通过呼吸受污染的空气感染。自今晨五点起就没人打开过这栋楼的外门。在我下达许可之前,任何人都不得开门。
“全球多个大城市遭受的攻击使急救人员陷入混乱。攻击手段包括电子、生物、核以及常规爆炸,且非常广泛。我是一名安全工程师,就我所处的环境而言,这类成串的攻击通常被视为机会主义:B 组织在每个人都忙着应对 A 组织的脏核事件时炸毁一座桥。这很聪明。大约在东部时间凌晨 2 点,一个奥姆真理教在首尔的细胞向地铁投放了毒气——这是我们能定位到的最早事件,所以可能正是那个“弥天大祸”压垮了骆驼的背。我们相当肯定奥姆真理教不可能是造成这类大规模混乱的幕后黑手:他们没有信息战的历史,也从未表现出攻击如此多目标所需的组织能力。基本上,他们不够聪明。
“在可预见的未来,我们会在这里坚守,至少要等生物武器被识别和消散为止。我们将为机架配备人员并保持网络运行。这是关键基础设施,我们的工作就是确保它达到99.999%的正常运行时间。在国家紧急时期,我们履行这一职责的义务加倍。”
一个系统管理员举起了手。他穿着一件绿色的《绝地潜兵 2》巨型者环形 T 恤,非常大胆,看上去也偏年轻。
“谁死了把你捧成了王?”
“我掌握着主安保系统的控制权,拿着每个笼子的钥匙,还有外门的通行码——顺便说一句,现在都上锁了。是我第一个把大家召集到这里并主持了这次会议。我不在乎有没有人想做这份工作,它很糟。但总得有人来做。”
“你说得对,”那个孩子说。“我也能和你做得一样好。我叫 Will Sario。”
波波维奇看着这个小子,居高临下地说道:“好吧,如果你让我把话说完,说不定我说完就把事情交给你处理。”
“尽管说完。”萨里奥背过身走到窗前,目不转睛地望着窗外。费利克斯也被那处景象吸引,看到城市中升起几股油状烟柱。
波波维奇的语势被打断。“所以这就是我们要做的事,”他说。
孩子在一阵有些延长的沉默后环顾四周。“哦,轮到我了吗?”
大家发出一阵善意的轻笑。
“我认为是这样的:世界正在走向糟糕。每一项关键基础设施都遭到协调性的攻击。只有一种方式能让这些攻击如此协调:通过互联网。即便你接受这些攻击都是机会主义的这个论点,我们也要问,机会主义攻击怎么能在几分钟内组织起来:就是互联网。”
“所以你认为我们应该关闭互联网?”波波维奇笑了笑,但在萨里奥一言不发时停了下来。
“我们昨晚看到一次几乎掐死互联网的攻击。在关键路由器上来点小规模的拒绝服务, DNS 上搞点把戏,然后它就垮了,像个牧师的女儿一样。警察和军队都是一群技术恐惧的笨蛋,几乎不依赖网络。要是我们把互联网关掉,对攻击者的打击会不成比例地大,而对防守方只会是些不便。到时候,我们还能重建它。”
“你在逗我吧,”波波维奇说。他的下巴几乎垂下。
“这很合乎逻辑,”萨里奥说。“很多人在面对由逻辑决定的艰难抉择时不愿接受。那是人的问题,不是逻辑的问题。”
谈话声嗡然四起,很快变成一阵喧嚣。
“闭嘴!”波波维奇大喊。谈话的声音立刻小了一个瓦特。波波维奇又喊了一声,重重跺了跺吧台。终于有了些许秩序。“一句一句来,”他说。他满脸通红,双手插在裤袋里。
一个系统管理员主张留下。另一个主张离开。他们应该躲到笼子里。他们应该清点库存并指定一名军需官。他们应该出去找警察,或到医院做志愿者。他们应该任命防守者守好前门。
出乎意料的是,菲利克斯发现自己的手举了起来。波波维奇点了他的名。
“我叫菲利克斯·特雷蒙特,”他说,爬上一张桌子,掏出他的 PDA。“我想念给你们读一段话。
“‘工业世界的各国政府啊,你们这些疲惫的血肉与钢铁的巨人,我来自赛博空间,心智的新家。代表未来,我请求你们这些属于过去的人放过我们。你们在我们的聚集地并不受欢迎。我们集会之处,你们没有主权。
“‘我们没有选举产生的政府,也不太可能产生,所以我对你们的讲话并不具有比自由本身发声时更多的权威。我宣告我们正在构建的全球社交空间,天然独立于你们试图强加给我们的暴政。你们没有道德上的统治权,也不掌握任何我们有真正理由畏惧的强制手段。’
“‘政府的正当权力来自被统治者的同意。你们既未征求也未得到我们的同意。我们没有邀请你们。你们不认识我们,也不了解我们的世界。网络空间并不在你们的国界之内。不要以为你们能把它建成,就像一个公共建设项目。你们做不到。它是自然的产物,通过我们的集体行动自我生长。’
“那是出自《网络空间独立宣言》。写于12年前。我觉得那是我读过的最美的文字之一。我希望我的孩子能在一个网络空间自由的世界里成长——并且这种自由能感染现实世界,让肉身世界也变得更自由。
他狠狠地咽了口气,用手背揉了揉眼睛。Van 局促地拍了拍他的鞋。
“我那漂亮的儿子和漂亮的妻子今天都死了。还有数以百万计的人。整个城市简直在燃烧。整座城市从地图上消失了。”
他咳出一声哽咽,又把它咽了回去。
“在世界各地,像我们这样的人聚集在这样的建筑里。他们本来在试图从昨晚的蠕虫事件中恢复过来,灾难随之降临。我们有独立供电、食物和水源。
“我们拥有网络,那些坏人用得如此之好,而好人们却从未弄明白。”
“我们对自由的共同热爱源于对网络的关心与呵护。我们掌管着世界有史以来最重要的组织与治理工具。我们是当下世界最接近政府的存在。日内瓦成了一个弹坑。东河着火了,联合国已经撤离。
“分布式赛博空间共和国基本上安然度过了这场风暴。我们是一个不死、可怕而又美妙的机器的看护者,这台机器有重建更美好世界的潜力。
“我活着唯一的意义就是那个。”
Van 眼里含着泪。他并不是唯一一个。人们没有为他鼓掌,但做得更好:在那几秒钟里,众人恭敬而完全地沉默着,这静默延长成了一分钟。
“我们该怎么做?”Popovich 说,毫无半点讽刺。
#
新闻组迅速被填满。他们在 news.admin.net-abuse.email 上宣布了这些小组,那儿是所有反垃圾邮件战士聚集的地方,在全面攻击面前那里形成了一种紧密的同志情谊文化。
新的小组是 alt.november5-disaster.recovery,其下挂着 .recovery.governance、.recovery.finance、.recovery.logistics 和 .recovery.defense。愿那模糊的 alt. 层级以及所有乘风破浪者得福。
系统管理员纷纷现身。Googleplex 仍在运转,坚守的后孔(Queen Kong)指挥着一群戴着滚轴旱冰鞋的手下,在巨大的数据中心里穿梭,交换损坏的服务器并按下重启开关。位于 Presidio 的 Internet Archive 已下线,但阿姆斯特丹的镜像仍在运行,他们已重定向了 DNS,以至于几乎感觉不到差别。Amazon 已宕机。Paypal 仍可使用。Blogger、Typepad 和 Livejournal 都在线,充斥着数百万来自受惊幸存者的帖子,他们聚在一起寻求电子上的温暖。
Flickr 的照片流令人毛骨悚然。Felix 在看到一张厨房里一名妇女和一个婴儿的照片后不得不取消订阅,那对母婴被生物制剂扭曲成了痛苦的象形文字。他们看起来不像 Kelly 和 2.0,但也不必相像。他开始颤抖,无法停下来。
维基百科还在,但在负载下步履维艰。垃圾信息如同一切照旧般蜂拥而至。蠕虫在网络中游走。
.recovery.logistics 是大多数行动发生的地方。
我们可以利用新闻组的投票机制来举办区域性
选举
费利克斯知道这会奏效。Usenet 新闻组的投票已经运行了二十多年,基本没有出现重大问题。
“我们将选举地区代表,由他们选出一位首相。”
美国人坚持要称总统,费利克斯不喜欢。听起来太带有党派性。他的未来不会是美国式的未来。美国的未来已经随白宫一起消失了。他要建立的是比那更大的帐篷。
有来自 France Telecom 的法国系统管理员在线。袭击日内瓦的攻击幸而未波及欧洲广播联盟的机房,机房里挤满了讥讽意味十足、英语比菲利克斯还好的德国人。他们与金丝雀码头残存的 BBC 团队相处得很好。
他们在 .recovery.logistics 里讲的是多语种英语,菲利克斯正处于顺风。部分管理员用多年积累的做法在平息那些必然发生的愚蠢口水战,有些人在提供有用的建议。
出人意料地,很少有人认为菲利克斯疯了。
我认为我们应该尽快举行选举。最迟明天。没有被统治者的同意,我们无法公正地统治。
几秒钟内,回复就出现在他的收件箱里。
> 你不会是认真的吧。被统治者的同意?除非我猜错了,你打算统治的大多数人要么在吐得翻白眼,要么躲在课桌下面,要么惊魂未定地在城市街头游荡。他们什么时候有投票权?
菲利克斯不得不承认她有道理。Queen Kong 很精明。担任系统管理员的女性不多,这确实是一场悲剧。像 Queen Kong 这样的女性太优秀,不能被排除在这个领域之外。他得想办法在他的新政府里让女性得到平衡。要求每个地区选出一名女性和一名男性?
他高兴地和她争论起来。选举就在明天;这事他会办妥。
#
“网络空间总理?不如叫自己全球数据网络的大酋长?更有尊严,听起来更酷,也同样管用。”遗嘱睡在他旁边,睡觉的地方在食堂里,另一边是厢式货车。房间里有股粪便挂在毛上的味道:二十五个已经至少一天没洗澡的系统管理员挤在同一个房间里。对其中一些人来说,已经远不止一天了。
“闭嘴,遗嘱,”厢式货车说。“你想试着把互联网弄下线。”
“更正:我想要 把互联网打掉线。现在时态。”
费利克斯眯开一只眼。他太累了,抬眼都像是在举重。
“听着,萨里奥——如果你不喜欢我的平台,那就提出你自己的方案。很多人都觉得我胡扯,我尊重他们,因为他们要么和我对立,要么支持与我对立的人。那是你自己的选择。但不能做的就是唠叨和抱怨。现在睡觉,或者起来把你的平台贴出来。”
萨里奥慢慢坐起身,展开他当枕头用的夹克穿上。“去你的各位,我走了。”
“我还以为他再也不走了,”费利克斯说着翻了个身,辗转难眠了很久,想着选举的事。
还有其他人在竞选。其中有些人甚至并非系统管理员。一位在怀俄明州夏季避暑地隐居的美国参议员有发电机和卫星电话。不知怎的,他找到了合适的新闻组并投了名。一群意大利的无政府主义黑客整晚在群里扫射,发布破碎英文的长篇大论,谴责新世界中“治理”的政治破产。费利克斯查看了他们的网络段,判断他们很可能躲在都灵附近一个小型交互设计研究所里。意大利受创甚重,但在那个小镇上,这个无政府主义小组占据了据点。
令人意外的是,竟有相当多的人以“关闭互联网”为竞选平台。Felix 对这是否可行心存怀疑,但他认为自己能理解那种想把工作和世界一并结束的冲动。何乐而不为呢?
他带着如何关闭互联网的后勤细节入睡,做了噩梦,梦里他是网络的唯一防卫者。
他醒来时听见纸沙沙、发痒的声音。他翻了个身,看到 Van 坐起来,夹克团成一团摊在腿上,正用力挠着瘦削的手臂。它们变得像腌牛肉一样的颜色,皮肤看上去鳞状。在自食堂窗户透进的光里,皮屑像尘埃一样浮动,在空中成片旋舞。
“你在干什么?”菲利克斯坐起身。看着范的指甲撕扯皮肤让他也替人发痒。距离他上次洗头已经三天了,头皮有时会感觉像有小虫在产卵般在其中爬行。前一晚他调了调眼镜,摸了摸耳后;手指上沾着厚厚的皮脂。他如果几天不洗澡,耳后就会长黑头,有时还会长出巨大的、深入的疖子,最后是凯莉带着病态的满足感把它们挤破。
“抓痒,”范说。他开始抓自己的头,送出一团头屑碎屑飞向空中,加入到他已经从四肢上清理掉的鳞屑中。“天哪,我全身都痒。”
菲利克斯从范的背包里把麦奇市长(Mayor McCheese)拿出来,插进散落在地板上的一根以太网线里。他把能想到的所有可能相关的东西都在谷歌上搜了一遍。“痒”一词搜到了 4.06 亿条链接。他试着用复合查询,得到了稍微有些筛选效果的链接。
“我想是与压力有关的湿疹,”菲利克斯终于说。
“我不会得湿疹,”范说。
菲利克斯给他看了几张猩红愤怒、伴有白色皮屑的可怕皮肤照片。“应激性湿疹,”他念着说明。
范检查了他的胳膊。“我有湿疹,”他说。
“上面写着要保持湿润,涂点氢化可的松乳膏。你可以试试二楼厕所里的急救包。我记得好像看到过。”和所有系统管理员一样,菲利克斯在办公室、洗手间、厨房和储藏室里都翻过一圈,把一卷卫生纸和三四根能量棒塞进了他的单肩包。他们在自助餐厅里默契地分配食物,彼此盯着看谁有暴食或囤积的迹象。大家都确信在视线之外有人在囤积和暴食,因为当没人盯着时,每个人自己也会这么做。
凡站起来了,当他的脸映入灯光时,菲利克斯看到他眼睛肿得多严重。“我会在邮件列表里发帖,看看谁有抗组胺药,”菲利克斯说。第一次会议结束后几小时内,大楼里幸存者就建立了四个邮件列表和三个维基,几天之内他们把数量合并成了一个。菲利克斯还留在一个只有他最信任的五个朋友的小邮件列表里,其中两人被困在别国的牢笼里。他猜其他系统管理员也在做同样的事。
凡一瘸一拐地走开了。“选举顺利,”他说着拍了拍菲利克斯的肩膀。
菲利克斯站起身踱步,停下来凝视肮脏的窗外。多伦多的火焰仍在燃烧,甚至比以前更多。他试图找到多伦多人使用的邮件列表或博客,但他能找到的只有由其他数据中心里的极客们在维护的那些。可能——甚至很可能——外面还有幸存者,他们有比上网发帖更紧迫的事情。他家的座机大约还能用一半时间,但在第二天之后他就不再打电话了,那天在一次规划会议中,第五十次在语音信箱里听到凯莉的声音把他弄哭了。他并不是唯一一个。
选举日。是时候面对现实了。
> 你紧张吗?
> 不会,
菲利克斯打字。
“老实说我并不太在乎能不能赢。我只是很高兴我们在做这件事。另一种选择就是坐以待毙,等着有人崩溃然后打开门。”
光标定格。孔后延迟极高,她指挥着她那群谷歌员工在谷歌园区里忙进忙出,想尽一切办法维持她的数据中心在线。三个海上机舱已经离线,六条冗余网络链路中有两条被烧毁。幸运的是,每秒查询量大幅下降。
还有中国
她敲着键盘。后孔有一块大显示板,上面是一张世界地图,按每秒 Google 搜索次数着色,她能用它变出魔术,用色彩斑斓的图表显示随时间的掉落趋势。她上传了大量视频片段,展示瘟疫和炸弹如何席卷全球:起初人们想弄清发生了什么而引发的搜索激增,然后随着瘟疫蔓延那种阴郁而陡然的下降。
“现在中国的名义运行率仍大约是九成。”
菲利克斯摇了摇头。
“你不能认为他们要负责这事”
> 不行
她打了字,但随后又开始敲别的东西,接着停了。
> 当然不是。我相信波波维奇假说。这是一群混蛋,互相掩护。但中国比任何人都更迅速更有力地压制了他们。也许我们终于为极权国家找到了用处。
费利克斯忍不住了。他打字写道:
> 你得庆幸你老板看不到你打这些话。你们当年可是积极参与了中国的伟大防火墙工程。
> 这不是我的主意
她打字写道。
>而我的老板是 死了。他们大概都死了。整个湾区遭受重创,然后又发生了地震 。
他们一直在看美国地质调查局从那场把北加州从吉尔罗伊到塞巴斯托波尔都摧毁的 6.9 级地震自动传回的数据流。Soma 的网络摄像头揭示了灾情的规模——燃气主线爆炸、为抗震而加固的建筑像被狠狠踢过后的儿童积木堆一样坍塌。谷歌园区依靠一系列巨大的钢制弹簧漂浮着,像一盘布丁一样晃动,但机架都保持在原位,最严重的伤情是一名系统管理员被飞来的压线钳打到脸,眼睛严重瘀伤。
“抱歉。我忘了。”
“没事的。我们都失去过人,对吧?”
是啊。是啊。无论如何,我并不担心选举。谁赢了至少我们在做点什么。
> 除非他们投票给那些混蛋
“混蛋”是一些系统管理员用来形容那些想关闭互联网的阵营的贬称。是孔后(Queen Kong)造的词——显然最初是用来统称那些在她职业生涯中被她揪出来的无能 IT 经理。
> 不会的。他们只是累了、伤心而已。你的背书会起作用
谷歌人团体是留下来的最大、最有势力的派系之一,此外还有卫星上行组和剩余的跨洋机组。孔后(Queen Kong)的支持出乎意料,他给她发了一封电子邮件,她简短回了句:“不能让那些混蛋掌权。”
> gtg
她打完字就断线了。他启动浏览器,打开 google.com。浏览器超时了。他连按刷新,又一次,然后谷歌首页又出来了。不管击垮孔后的工作场所的是停电、蠕虫,还是又一次地震,她都修好了。他看到谷歌标志里的 O 被换成带有蘑菇云的地球小图时嗤之以鼻。
#
“有吃的吗?”凡对他说。现在是午后,数据中心里时间并不太有意义。菲利克斯拍了拍自己的口袋。他们安置了一个军需主管,但在此之前每个人都从机器里抢了点吃的。他拿了十几根能量棒和几个苹果。他还拿了几份三明治,不过聪明地先吃了几份,以免变硬。
“还剩一根能量棒,”他说。他早上注意到腰围有点松,曾一阵暗自窃喜。后来又想起凯莉取笑他体重的事,他哭了一阵。然后他吃了两根能量棒,只剩下一根。
“哦,”范说。他的脸比以往更消瘦,肩膀向内塌,胸廓像裙撑一样扁平。
“给,”费利克斯说。“投费利克斯一票。”
范接过了那根能量棒 从他手里接过,然后放到桌子上。“好,我想给 把这件事还回来对你说,‘不,我做不到,’但我他妈的—— 我饿了 ,所以我就拿了吃了,好吗?
“我无所谓,”费利克斯说。“玩得开心。”
“选举进展如何?”范说,舔干了包装纸后问。
“不知道,”菲利克斯说。“好一阵子没查看了。”几小时前他还以微弱优势领先。没有笔记本在这类事情上是一大不便。楼上的牢笼里还有十来个和他一样的人,这些可怜的家伙在德塔格那天匆忙离开房子时没想到要带上能连 Wi‑Fi 的东西。
“你们会被干掉的,”萨里奥走过来挤到他们身边说。他在中心出名,因不睡觉、偷听别人谈话、在现实里挑起无谓争端而声名远扬,那种争端带着类似 Usenet 网络争论的鲁莽激烈。“胜利者会是那些明白几个基本事实的人。”他说着握起拳头,然后一根手指一根手指地点出要点。“第一点:恐怖分子在利用互联网毁灭世界,我们必须先毁掉互联网。第二点:即便我错了,这整件事也不过是个笑话。我们很快就会用完发电机燃料。第三点:或者如果我们没用完,那是因为旧世界恢复并重启了,而它根本不会在乎你们的新世界。第四点:在我们耗尽争论的把戏或不出门的理由之前,我们会先耗尽食物。我们有机会做点事帮助世界恢复:我们可以杀掉网络,把它作为坏人的工具切断。或者我们可以在你们个人泰坦尼克号的桥上继续挪动甲板椅,为某个关于‘独立网络空间’的美梦服务。”
问题在于萨里奥说得没错。他们两天后就会耗尽燃料——电网断续供电延长了他们发电机的寿命。如果接受他的假设,认为互联网主要被用来组织更多混乱,那么关闭它确实是正确的选择。
但费利克斯的女儿和妻子已经死了。他不想重建旧世界。他想要一个新世界。旧世界已经没有他的容身之处。再也没有了。
范抓着那处鲜红、脱落的皮肤。皮屑和胡渣在发霉、油腻的空气中盘旋。萨里奥朝他撇嘴:“太恶心了。我们呼吸的是循环空气,你知道的。你这像麻风病似的东西一粒粒散进空气供应,可真是反社会。”
“你才是世界上反社会方面的权威,萨里奥,”范说。“走开,不然我就用多功能工具把你弄死。”他停止挠痒,像枪手一样拍了拍鞘里的多功能钳。
“是啊,我反社会。我有亚斯伯格症,四天没吃药了。你他妈有什么借口?”
厢式货车又抓了抓。“对不起,”他说。“我不知道。”
萨里奥大笑起来。“哦,你太可贵了。我敢打赌这帮人里有四分之三是自闭症边缘。至于我,我就是个混蛋。但是我不怕说真话,这让我比你更好,混蛋。”
“该死的,”费利克斯说,“滚开。”
#
费利克斯当选为历史上第一任“赛博空间”总理时,他们的燃料还不到一天的用量。第一次计票被一个刷票的机器人搞乱了,他们在重新统计选票时损失了关键的一天。
但到那时,这一切看起来更像是个笑话。半数数据中心已经停电。孔后对 Google 搜索的网络地图随着更多地区离线而愈发令人沮丧,尽管她仍维持着一个新兴和上升搜索词的排行榜——大多与健康、住所、卫生和自卫有关。
蠕虫负载放缓。许多家庭电脑用户断电而且一直没有恢复,所以被入侵的电脑也都黑屏了。主干网络仍在亮着、闪烁,但那些数据中心发来的电文显得越来越绝望。费利克斯一天没吃东西,跨洋枢纽的卫星地球站里也没有人吃饭。
水也快不够用了。
Popovich 和 Rosenbaum 来接他时,他最多只来得及回复几条祝贺信息,并在新闻组上贴了一段套话式的获奖感言。
“我们要把门打开,”Popovich 说。像他们所有人一样,他消瘦了,胡子又脏又油。体味像晴天里鱼市后面垃圾袋散发出的那股气味。Felix 很确定自己闻起来也好不到哪去。
“你要出去侦察?去找更多燃料?我们可以包个工作小组去——好主意。”
Rosenbaum 沮丧地摇了摇头。“我们要去找家人。外面要么已经烧尽了,要么还没烧完。不管哪种,这里都没有未来。”
“那网络维护怎么办?”菲利克斯问,尽管他已经知道答案。“谁来维持路由器运行?”
“我们会把所有东西的根密码给你们,”波波维奇说。他的手在发抖,眼睛也布满血丝。像许多被困在数据中心的吸烟者一样,他这周戒了烟。他们两天前的咖啡因供应也用完了。吸烟者处境艰难。
“那我就留在这儿,维持一切在线吗?”
“你和其他任何还在乎的人。”
菲利克斯知道自己已经错过了机会。那场选举当时看起来高尚而勇敢,但事后看来不过是在他们本该想办法下一步该做什么时的内讧借口。问题是根本没有下一步可做。
“我不能强留你们,”他说。
“对,你不能。”波波维奇转身离去。罗森鲍姆目送他走远,然后抓住菲利克斯的肩膀用力捏了捏。
“谢谢你,菲利克斯。那是一个美好的梦。现在仍然是。也许我们会找到些吃的和燃料再回来。”
罗森鲍姆有一个妹妹,危机爆发后的最初几天他们还通过即时消息联系过。之后她就不再回复了。系统管理员们被分成两类:有机会道别的和没有机会道别的。每个人都确信对方的处境更好。
他们在内部新闻组上发帖——毕竟他们仍是极客,楼下还有一小队仪仗,极客们看着他们走向双层大门。他们操作键盘,钢质卷帘升起,第一道门打开。他们走进前厅,把门在身后拉上。前门打开了。外面阳光明媚,非常明亮,除了空无一人之外,看起来很正常。伤心欲绝般的正常。
两个人试探性地迈出一步,走进世界。又迈出一步。他们转身向聚集的人群挥手。然后两人同时抓住喉咙开始抽搐痉挛,倒成一堆瘫在地上。
“唉——!”费利克斯在两人拍掉尘土、站起身来前勉强喘出这一个字,他们笑得很厉害,捂着肚子直不起腰。他们又挥了挥手,然后转身离开。
“哇,那帮人真够狠的,”Van 说。他抓了抓胳膊,胳膊上有长长的血痕。他的衣服沾满了枯屑,看上去像是被撒了糖霜。
“我倒是觉得挺好笑的,”Felix 说。
“天哪,我饿死了,”Van 随口说道。
“你走运了,我们还有吃不完的那些包,”Felix 说。
“你对我们这些兵丁太好了,总统先生,”Van 说。
“是总理,”他说。“而你又不是兵丁,你是副总理。你是我指定的剪彩者和发放超大玩具支票的人选。”
这让他们俩的士气都振奋起来。看到 Popovich 和 Rosenbaum 离开,也让他们振作。费利克斯那时就知道,他们很快也会走的。
这是由燃料供应注定的,但谁又想等燃料耗尽呢?
#
今天早上我队里一半人都撤了
Queen Kong 打字道。Google 当然还撑得不错。服务器的负载比起早年 Google 还塞在斯坦福课桌底下一堆手工组装的 PC 时要轻得多。
我们只剩四分之一了
Felix 回字。自从 Popovich 和 Rosenbaum 离开才一天,但新闻组的流量几乎跌到零。他和 Van 几乎没时间玩《网络共和国》。他们忙着学习 Popovich 移交给他们的系统——那些依然作为加拿大各主干网互联中枢运行的大型路由器。
尽管如此,还是有人时不时在新闻组上发帖,通常是为了告别。关于谁会担任总理、是否会关闭网络,或者谁拿了太多食物的旧争论都消失了。
他重新加载了新闻组。出现了一条典型的帖子。
Solaris 上的失控进程
>
呃,你好。我只是个初级 MSCE,但这里只有我醒着,而且四台 DSLAM 刚刚都宕机了。看起来有段定制的计费代码在尝试计算要向企业客户收多少费,它衍生出了上万个线程,正在把所有交换空间吃掉。我只想把它杀掉,但好像杀不掉。有没有什么神奇的调用可以让这台该死的 weenix 盒子把这东西干掉?我的意思是,反正我们的客户也不可能再给我们付钱了。我会去找写这段代码的人问问,但据大家所知,他基本上已经死了。
他重新载入。出现了一个响应。短而有力,权威且有帮助——正是那种你在高水平新闻组里几乎从未见到的新手问蠢问题时会收到的答复。末日唤醒了全球系统管理员社区中耐心助人的精神。
Van 凭肩凑他肩看屏幕。“我的天,谁能想到他有这本事?”
他又看了那条消息。是来自 Will Sario 的。
他跳进了他的聊天窗口。
sario,我以为你想让网络瘫痪,为什么还要帮 msces 修他们的机箱?
<害羞的笑> 哎呀,首相先生,也许我就是无法忍受看着一台电脑在业余爱好者手里受罪。
他切到有 Queen Kong 的频道。
> 要多久?
> 自从我睡觉?两天。到我们耗尽燃料?三天。自从我们没吃的?两天。
> 天哪。我昨晚也没睡。我们这儿人手有点短缺。
> asl?我是 Monica,我住在 Pasadena,我对家庭作业感到无聊。你想下载我的照片吗???
这些天木马机器人遍布 IRC,跳到任何有流量的频道。有时你会看到五六个互相调情。看着一段恶意软件试图骗另一份自身去下载木马,挺奇怪的。
他们同时把机器人赶出了频道。他现在有了一个脚本。垃圾信息一点也没有减少。
> 为什么垃圾信息没有减少?一半他妈的数据中心都瘫痪了
孔后停顿了很久才开始打字。她一旦进入高延迟状态就会下意识地重新加载 Google 首页。果然,它挂了。
> Sario,你有吃的吗?
“你再少吃几顿也不会死的,阁下。”
Van 已经回到 McCheese 市长那边,但他仍在同一个频道。
“真他妈混蛋。不过你看起来挺壮的,兄弟。”
Van 看起来不太好。他看起来像一阵硬风就能把他吹倒,说话带着黏痰般的虚弱感。
> 嘿,孔,一切都好吗?
> 一切都好,只是刚去揍了几个人
“范,交通情况怎么样?”
“比今天早上少了25%,”他说。那里有一堆节点通过他们的连接路由。大概大多数都是在供电仍然正常、电话公司的中心局仍在运作地区的家庭或商业用户。
偶尔,费利克斯会窃听这些连接,看看能否找到有关于外面世界消息的人。不过几乎全是自动化流量:网络备份、状态更新。垃圾邮件。大量垃圾邮件。
> 垃圾邮件还在增加,因为阻止垃圾邮件的服务崩溃得比制造它的服务更快。所有反蠕虫的东西都集中在几处。恶意程序分布在一百万台僵尸电脑上。要是那些普通用户在倒下或离开前有头脑把家用电脑关了就好了
> 按现在的速度,到晚饭时间我们可能只剩下垃圾邮件在路由了
范清了清喉咙,发出一声痛苦的声音。“关于那件事,”他说,“我觉得会比那更快到来。费利克斯,我想如果我们就这么离开这里,可能没人会察觉。”
菲利克斯看着他,皮肤像咸牛肉一样,布满长长的愤怒痂痕。手指颤抖着。
“你喝够水了吗?”
范点点头。“整天都在喝,每十秒就喝一口。只要能让肚子不饿。”他指了指身旁那瓶装满水、重新装好的百事无糖瓶子。
“开个会吧,”他说。
#
诺曼底日那天他们有四十三人。现在只剩下十五人。六个人接到开会的通知后干脆就走了。所有人都不用人提醒也知道这次会议的目的。
“就这么算了,你要让一切都散了?”萨里奥是唯一还有精力发真正怒的人。他会气到死去。他喉咙和额头上的血管愤怒地突出,拳头颤着,带着怒意。其他极客见状都低着盖子,难得齐刷刷地抬头参与讨论,不再一边盯着聊天记录或跟踪的服务日志。
“萨里奥,你在逗我吧,”菲利克斯说,“你是想把该死的插头拔掉!”
“我希望它是 干净的 ,”他喊道。“我不想看着它慢慢流光气力,一阵阵抽搐和呕吐着倒下。我希望这是由全球的照料者用意志完成的。我希望这是人手的肯定之举。不是让熵、糟糕的代码和蠕虫获胜。去他妈的,那就是外面发生的事。”
在顶层的食堂里,四周都是窗户,玻璃经过强化并能折射光线,按惯例都拉着窗帘。现在萨里奥在房间里跑来跑去,把窗帘一一拉下。“他到底怎么有力气跑来跑去?”费利克斯想。他自己连上楼去会议室都很勉强。
刺眼的日光涌入。外面是个晴朗的好天气,但放眼多伦多天际线的壮观景色处处升起浓烟。TD 大厦——那座巨大的黑色现代主义玻璃方块——正向天空喷出火焰。“一切都在崩溃,就像一切事物终会崩溃那样。
“听着,听着。如果我们让网络慢慢垮掉,它的部分会在几个月甚至几年内继续在线。会在上面运行什么?恶意软件。蠕虫。垃圾邮件。系统进程。区域传输。我们用着的东西会崩溃,需要不断维护。我们遗弃的东西没人用,却能永存。我们要把网络留在身后,就像一个装满工业废料的石灰坑。那将是我们他妈的遗产——你我以及任何人、任何地方敲下的每一个按键的遗产。明白吗?我们要让它像受伤的狗一样慢慢死去,而不是给它一枪毙命。”
Van 抓了抓脸颊,Felix 这才看到他在抹泪。
“Sario,你也不是全错,但也不是全对,”他说。“让它挂着蹒跚而行是对的。我们都会跛行很长时间,也许对某些人还有用处。只要世界上任何地方有哪怕一个数据包从任何用户被路由到任何其他用户,它就还在完成它的工作。”
“如果你想要干净利落地解决掉,可以这么做,”菲利克斯说。“我是首相,我说了算。我把 root 权限给你们。全部给你们。”他转向白板,那是食堂工作人员以前写当日特价的地方。现在白板上被那些自从那天起系统管理员们进行的激烈技术辩论的残迹覆盖。
他用袖子擦出一块干净的地方,开始写下一串包含标点符号的长而复杂的字母数字密码。菲利克斯有记住这类密码的天赋。他怀疑这对他将来还能有多大用处,几乎不抱希望。
#
> 我们要走了,孔。燃料也快用完了
> 是啊,那就这样吧。能为您效力是我的荣幸,首相先生
你会没事吧?
我已经指派了一个年轻的系统管理员来照顾我的女性需求,我们又找到了一批食物,按现在只剩下十五个管理员算,能撑好几周——我简直乐开了花,老兄
你太棒了,金刚后(Queen Kong),真心的。不过别逞英雄。要去就赶紧去。外面肯定还有什么东西
保重,Felix,真的——顺便说一句,我有没有告诉你罗马尼亚的查询量上来了?也许他们正在恢复过来
——真的吗?
——是的,真的。我们很难被干掉——就像他妈的蟑螂一样
她的连接断了。他切到 Firefox,重载了 Google,却发现它宕机了。他不断点刷新,但页面始终没出来。他闭上眼睛,听着 Van 在他腿上抓挠的声音,然后又听到 Van 轻轻敲了几下键盘。
“他们又上线了,”他说。
菲利克斯呼出一口气。他把那条信息发到新闻组——斟酌了五稿才定下的:“照看好这里,好吗?我们总有一天会回来的。”
除了萨里奥,人人都要走。萨里奥不肯离开。不过他下来为他们送行。
系统管理员们在大厅里聚集,菲利克斯让安全门升起,光猛地涌了进来。
萨里奥伸出手。
“祝你好运,”他说。
“你也是,”费利克斯说。他握得很紧,萨里奥,紧得不该那么有力。“也许你是对的,”他说。
“也许吧,”他说。
“你要拔电源吗?”
萨里奥抬头看着吊顶,仿佛透过加固的地板凝视着上方嗡嗡作响的机架。“谁知道呢?”他终于说道。
范挠了挠,白色小粒子在阳光下飞舞。
“我们去给你找个药房吧,”费利克斯说道。他走向门口,其他系统管理员跟在后面。
他们等着内门在身后关上,然后费利克斯推开了外门。空气闻起来、尝起来像割过的草,像第一阵雨滴,像湖水与天空,像户外与这个世界,一个久未音讯的老朋友。
“再见,菲利克斯,”其他系统管理员说道。他们慢慢散去,而他站在那短短的混凝土台阶顶上,目瞪口呆。光线刺痛他的眼睛,眼睛开始流泪。
“我记得 King 街上有一家 Shopper’s Drug Mart,”他对厢式货车说。“我们砸碎窗户,给你弄点可的松,好吗?”
“你是首相,”厢式货车说。“带路吧。”
#
他们十五分钟的步行中没看到一个人。除了几声鸟鸣、远处的低吟和头顶电缆里的风声外,寂静无声。走在上面就像在月球表面漫步。
“打赌购物者那儿有巧克力吧,”厢式货车说。
菲利克斯的胃翻了个跟头。食物。“哇,”他含着一口唾沫说道。
他们从一辆小掀背车旁走过,前座里是一名女人干瘪的遗体,怀里抱着一具干瘪的婴儿,尽管卷起的车窗把味道隔得很淡,他的嘴里仍涌出酸苦的胆汁。
他已经好几天没想起凯利或2.0了。他跪倒在地,又一次干呕。在这个真实的世界里,他的家人都死了。他认识的每个人都死了。他只想躺在人行道上等死。
范的粗糙双手从腋下探过,虚弱地把他往上拽。“现在别这样,”他说。“等我们进了安全的地方,吃了点东西,你再这么做,可以,但不是现在。明白吗,费利克斯?他妈的,不是现在。”
那句脏话让他清醒了些。他站了起来,膝盖在发抖。
“就再走一段街,”范说着,把费利克斯的胳膊搭在自己肩上,领着他往前走。
“谢谢你,范。对不起。”
“别担心,”他说。“你得好好洗个澡,真该洗。别介意。”
“没介意。”
那家店有一扇金属安全门,但已经被从前窗处扯开,前窗也被粗暴地砸碎了。Felix 和 Van 挤过缝隙,走进昏暗的药妆店。几处陈列架被撞翻,除此之外看起来还好。Felix 在收银台旁看到糖果架的同时,Van 也看到了,他们赶紧跑过去各抓了一把,猛塞进嘴里。
“你们两个吃得像猪一样。”
两人被女人的声音吓得猛地转身。她手里拿着一把几乎和她一样大的消防斧。她穿着实验室外套和一双舒适的鞋子。
“你们拿够就走,好吗?别惹麻烦。”她下巴尖,眼神锐利。看上去年约四十来岁。她看起来一点也不像 Kelly,这倒是好事,因为 Felix 此刻真想跑过去给她一个拥抱。又一个活着的人!
“你是医生吗?”Felix 问。他看见她外套下面穿着手术服。
“你要走吗?”她挥舞着斧头。
菲利克斯举起手。“说真的,你是医生吗?是药剂师吗?”
“十年前我当过护士。我现在主要是做网页设计的。”
“你在逗我吧,”菲利克斯说。
“你难道没遇到过懂电脑的女孩吗?”
“其实,我有个朋友管理着 Google 的数据中心。是个女孩,我是说,是个女人。”
“你在逗我,”她说。“一个女人管理过 Google 的数据中心?”
“在管理,”菲利克斯说。“它还在运行。”
“绝对不行,”她说。她让斧头落下。
“行。你有可的松乳膏吗?我可以把事情讲给你听。我叫费利克斯,这是范,他需要你能提供的任何抗组胺药。”
“我能提供?费利克斯老朋友,我这里有足够的药,能撑上百年。这些东西在用完之前就先过期了。但你是说网络还在运作?”
“还在,”他说。“某种程度上还在。这就是我们整周都在做的事——维持它在线。不过它可能撑不了多久了。”
“不,”她说。“我想不会的。”她放下斧头。“你有什么可以交换的吗?我不需要太多,但我一直在通过和邻居们交换来振作精神。这就像在玩文明游戏。”
“你有邻居?”
“至少有十个,”她说。“那边餐馆里的人做的汤挺不错,虽然大多数蔬菜都是罐头的。不过他们把我的 Sterno 都用完了。”
“你有邻居还能跟他们交换?”
“嗯,名义上是。没有他们会挺孤单的。这些小病小痛我能处理。把骨折的腕骨接好了。听着,你想要一些 Wonder Bread 和花生酱吗?我有一大堆。你那朋友看起来挺需要吃一顿的。”
“太好了,”Van 说。“我们没什么可交易的,但我们俩都是工作狂,想学门手艺。你需要帮手吗?”
“不太需要。”她把斧头在头上旋转了一圈。“不过我不介意有人作伴。”
他们吃了三明治又喝了些汤。餐馆的人把饭菜端过来,对他们客气有礼,尽管 Felix 看见他们皱了皱鼻子,确认后厨有正在用的管道。Van 进去用海绵擦洗了一下,然后他也跟了进去。
“我们都不知道该怎么办,”那名女子说。她叫罗莎,从家具用品区找来了一瓶酒和一些一次性塑料杯。“我以为会有直升机或坦克,甚至会有抢劫者,但这里只是很安静。”
“你自己倒是挺安静的,”费利克斯说。
“不想招来不该有的注意。”
“你有没有想过,也许外面有很多人在做同样的事?也许如果我们都聚在一起,能想出点什么办法。”
“或者他们会割我们的喉咙,”她说。
范点了点头。“她说得有道理。”
菲利克斯站了起来。“不可能,我们不能那样想。女士,我们正处在关键时刻。我们可以因过失而衰败,在躲藏的洞穴里日渐消失,或者我们可以尝试构建更好的东西。”
“更好?”她发出轻蔑的声音。
“好吧,也不算好了。但总比没有。做点什么总比眼看着它消亡强。天哪,你打算等把这里的杂志都看完、薯片都吃光之后做什么?”
罗莎摇了摇头。“漂亮话,”她说。“但我们到底能做什么,真他妈的?”
“做点事,”菲利克斯说。“我们要做点事。有总比没有好。我们要把这个人们还在互相交流的地方扩大。我们要找到所有能找到的人,照顾他们,他们也会照顾我们。我们大概会把事情搞砸,可能会失败。不过我宁愿失败也不愿放弃。”
范笑了。“菲利克斯,你比萨里奥还疯,你知道吗?”
“我们明天一早就去把他拖出来。他也要参与进来。每个人都会。去他的世界末日。世界不会终结。人类不是那种会有结局的东西。”
Rosa 又摇了摇头,但现在她微微笑了。“那你会是什么,世界的教皇皇帝吗?”
“他更喜欢总理,”Van 做作地低声说。抗组胺药在他皮肤上起了奇迹,皮肤从愤怒的红色变成了淡淡的粉色。
“Rosa,你想做卫生部长吗?”他问。
“男孩们,”她说。“玩游戏呢。这样吧。我会尽力帮忙,条件是你们永远别叫我首相,也别叫我卫生部长,好吗?”
“成交,”他说。
范把他们的杯子重新倒满,把酒瓶倒过来把最后几滴都倒出来。
他们举杯。费利克斯说:“为世界干杯,为人类干杯。”他沉思片刻。“为重建干杯。”
“对任何事情,”厢式货车说。
“对任何事情,”菲利克斯说。“对所有事情。”
“为了一切,”罗莎说。
他们喝了酒。第二天,他们开始重建。几个月后,当分歧将他们那支脆弱的小团体撕散时,他们又重新开始。又过了一年,他们再次从头开始。五年后,他们又开始了。
菲利克斯挖壕沟、打捞罐头、掩埋死者。他种植并收获。他修理汽车,学会了制作生物柴油。最终他到了一个小政府的数据中心——小政府来来去去,但这个政府足够聪明,想要保存记录并需要人维持一切运行,于是范和他一起去了。
他们在聊天室里待了很多时间,有时会遇到那些在他们经营分布式网络共和时结识的老朋友——那些极客坚持称他为 PM,尽管现实世界里再没人这么叫他了。
大多数时候,这不是一种美好的生活。菲利克斯的伤痕从未愈合,大多数人的也一样。长期的病痛与突发的疾病交织。悲剧接连不断。
但菲利克斯喜欢他的数据中心。在机架的嗡嗡声中,他从未觉得那是一个更好国家的开端,同样也没有觉得那是它的末日。
> 去睡,菲利克斯
> 很快,孔,很快——快把这个备份搞定了
你是个瘾君子,老兄。
谁在说呢
他重新载入了 Google 主页。Queen Kong 在线上放了好几年了。Google 里的 O 经常变换,每当她有心情的时候。今天它们是两个小卡通地球,一个微笑着,另一个皱着眉。
他盯着看了很久,然后回到终端去检查他的备份。奇迹般地,这次运行得很干净。小政府的记录很安全。
晚安,晚安
保重
当他吱呀作响着走向门口时,厢式货车向他挥手,背部一阵阵咔嗒声地拉伸着。
“睡个好觉,首领,”他说。
“别又整晚待在这里了,”菲利克斯说。“你也需要睡眠。”
“你们对我们这些杂兵太好了,”范说着,又继续敲键盘。
菲利克斯走到门口,走进夜色。身后,生物柴油发电机嗡嗡作响,散发出呛人的废气。丰收月升起了,他很喜欢。明天他会回去修另一台电脑,再次与熵作斗争。何乐而不为?
这就是他所做的。他是个系统管理员。
—
Creative Commons 许可证 契据
署名-非商业性使用-相同方式共享 2.5
您可以自由:
* 共享——复制、分发、展示和表演该作品
* 改编——创作衍生作品
在以下条件下:
* 署名。您必须以作者或许可人指定的方式对该作品进行署名。
* 非商业用途。您不得将此作品用于商业目的。
* 相同方式共享。如果您修改、改编或在此作品基础上作出衍生作品,您只能在与本许可证相同的许可证下分发衍生作品。
* 在任何重用或分发时,您必须向他人明确说明本作品的许可条款。
* 如获版权持有人许可,以上任何条款均可被豁免。
免责声明:上述内容并不影响您的合理使用权利及其他权利。
这是对法典(完整许可证)的面向人类的摘要:
http://creativecommons.org/licenses/by-nc-sa/2.5/legalcode
—
机器可读的元数据(供人类忽略):
<!—/Creative Commons 许可证—><!—<rdf:RDF xmlns=”http://web.resource.org/cc/” xmlns:dc=”http://purl.org/dc/elements/1.1/” xmlns:rdf=”http://www.w3.org/1999/02/22-rdf-syntax-ns#” xmlns:rdfs=”http://www.w3.org/2000/01/rdf-schema#”>
<Work rdf:about=””>
<license rdf:resource=”http://creativecommons.org/licenses/by-nc-sa/2.5/” />
<dc:type rdf:resource=”http://purl.org/dc/dcmitype/Text” />
</Work>
<License rdf:about=”http://creativecommons.org/licenses/by-nc-sa/2.5/”><permits rdf:resource=”http://web.resource.org/cc/Reproduction”/><permits rdf:resource=”http://web.resource.org/cc/Distribution”/><requires rdf:resource=”http://web.resource.org/cc/Notice”/><requires rdf:resource=”http://web.resource.org/cc/Attribution”/><prohibits rdf:resource=”http://web.resource.org/cc/CommercialUse”/><permits rdf:resource=”http://web.resource.org/cc/DerivativeWorks”/><requires rdf:resource=”http://web.resource.org/cc/ShareAlike”/></License></rdf:RDF>—>