有个人在聊天室威胁要黑掉管理员,管理员说来吧我的 IP 是 127.0.0.1

封面,攻击 127.0.0.1 最后绕回自己

2005 年 4 月的一个晚上,德国一个叫 StopHipHop 的嘻哈音乐网站,IRC 聊天室里发生了一件事。

一个用户掉线了,系统显示的原因是 Ping timeout,也就是网络超时。

但这个用户不这么认为。他觉得是管理员把他踢了。

他重新登录,上来就开骂。管理员 Elch 解释说没人踢你,是你自己网络超时断开的。他不听,说你们封了我,你看我电脑上连夏令时都设好了,怎么可能是我的问题。

旁边有人忍不住笑了,说你连 Ping timeout 和夏令时都分不清。

他更火了。

然后他说了一句话,大意是,你把你的 IP 地址告诉我,我让你的硬盘消失。

Elch 假装想了想,回了一句,好像是 129.0.0.1,不对,应该是 127.0.0.1,对,就是这个。坐等你的大型攻击。

管理员把 127.0.0.1 写给对面

这个人说,五分钟后你的硬盘就没了。

Elch 说,我好害怕啊。

然后这个人就消失了。系统显示 Ping timeout。

他把攻击工具对准了 127.0.0.1,把自己的电脑打挂了。

因为 127.0.0.1 是回环地址。不管你在哪台电脑上,这个 IP 永远指向你自己。发给 127.0.0.1 的数据包不会走网线,不会经过路由器,它直接在你本机绕一圈回来。

他发动的所有攻击,目标是他自己。

127.0.0.1 的数据包只会绕回本机

两分钟后他又上线了。

这次他的第一句话是,你该庆幸我的电脑崩了,不然你就完了。

Elch 说,那你再试试呗,我的 IP 还是 127.0.0.1。

他又消失了。

又是 Ping timeout。

第二轮也挂了。

六分钟后,他第三次回来了。这次他终于意识到了一个问题。他说,你有防火墙。你的防火墙把我的攻击信号弹回来了。

他自己已经摸到了真相的边缘。127.0.0.1 的数据确实「弹回来」了,只不过不是因为防火墙,是因为那个地址就是他自己。

但他没想通。

Elch 顺着他说,哦那我让同事帮我把防火墙关了,你再来。

他来了。

这一轮最离谱。他一边攻击一边在聊天室里实时汇报战况。

你的 G 盘被删了。

你的 F 盘也没了。

E 盘已经删到 45% 了。

D 盘也快了。

然后他说,你的 CD-ROM 也被我删了。

Elch 在聊天记录旁边写了一句评论,大意是,这哥们把我的 CD 播放器变成 CD 刻录机了,他怎么做到的。

到这里,聊天室里的人已经全明白了。他不是在汇报别人的硬盘被删,他是在看着自己的硬盘一个一个消失,还以为删的是对方的。

最后一条消息之后,他又 Ping timeout 了。

这次他没再回来。

Elch 把这段聊天记录整理好,发在了 StopHipHop 的网站上。原帖在德语互联网上被阅读了超过 180 万次。三周后,英文翻译版被人搬到了 Slashdot,标题叫「The Planet’s Most Moronic Hacker」。

地球上最蠢的黑客。

这个故事后来在互联网上流传了二十年,被翻译成十几种语言。127.0.0.1 这个 IP 地址也因为它变成了程序员圈子里最经典的梗之一。

有人可能会问,为什么 127.0.0.1 会指向自己。

简单说,1981 年,管理早期互联网地址分配的 Jon Postel 顺手把 127 这个网段留了下来备用,没说用来干嘛。两年后伯克利大学的 Bill Joy 在做 BSD 系统的网络代码时,需要一个「本机回环」的地址,翻到 127 空着,就拿来用了。

从此 127.0.0.1 就成了「永远指向你自己的机器」这个含义。

不管你在北京还是纽约,不管你用 Windows 还是 Linux,敲下 127.0.0.1,你找到的永远是你自己。

这大概是这个地址最浪漫的地方。

也是那个德国人最倒霉的地方。

署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)
位旅人路过 次翻阅 初次见面