“如何翻墙”系列:简单扫盲 I2P 的使用

2012-06-15IT.软件介绍 IT IT.翻墙

  最近有网友在博客里留言,强烈希望俺扫盲 I2P 的使用。其实俺很早就尝试过 I2P,但因为速度太慢,所以一直没在博客上推荐。最近 I2P 刚发布了 0.9 版本,俺试了一下,速度有所改善。所以今天给大伙儿介绍一下。

★I2P是啥玩意儿?


  I2P是洋文 Invisible Internet Project 的缩写。官方网站是 http://www.i2p2.de/,维基百科的介绍在“这里”。
  I2P 在很多方面跟 TOR 相似——也是开源软件、也采用分布式、也强调隐匿性。

★I2P有啥特点?


◇安全性很强


  为啥说 I2P 的安全性强捏?
  在网络路由方式上,大名鼎鼎的 TOR 是洋葱路由,而 I2P 是大蒜路由。这个大蒜路由,据说是洋葱路由的改进版——安全性更好、隐匿性更强。
  具体好在哪捏?简单说一下。

  TOR 和 I2P 的相同点在于:
都是经过若干个网络节点来加密和中转数据,并防止你的真实 IP 暴露。
  两者的差别在于:
TOR 使用同一条网络链路实现数据的发送和接收;
I2P 使用多条链路发送数据和接受数据——并且发送和接收数据的链路,数量可以是不同的。

  两者在路由方式上的差异对比,请看如下示意图。更多的技术细节,俺就不展开了。大伙儿有兴趣的话,今后单独写篇博文。
不见图 请翻墙

◇很难被封杀


  在抗封杀方面,I2P 比 TOR 要坚挺。

  先说说 TOR 为啥被天朝封杀:
  TOR 每次启动时,需要先连接到某个 TOR 的目录服务器,获取网络上可用节点的信息。由于目录服务器数量有限,GFW 就把互联网上所有的 TOR 目录服务器的 IP 地址都列入黑名单。后来,TOR 官网提供网桥中继,帮助网友接入 TOR 网络。但是捏,TOR 的网桥中继,数量依然不太多。据说 GFW 专门有人在盯着 TOR 官网更新的网桥中继地址——每次有新的中继地址贴出来,就列入黑名单。经过 GFW 的不懈努力,大部分 TOR 的网桥都被封杀。所以最近2年,TOR 在天朝内不太好使。

  再看看 I2P 为啥封杀不了:
  I2P使用 Kad 算法(用过电驴或电骡的网友,应该听说过)来获取网络节点的信息。这么做有几个好处:
1. 不需要目录服务器
2. Kad算法拿到的节点信息只是整个 I2P 网络的一小部分
3. 每一台运行 I2P 的主机都可以成为中继,帮别人转发数据(类似于 P2P 下载)
  由于上述好处,GFW 很难把所有 I2P 节点都列入黑名单。

◇速度很慢


  前面说的这些优点,导致了一个明显的副作用,就是速度慢。
  速度慢是 I2P 为了安全性而不得不付出的代价。据俺亲自测试,0.9版本下载速度最多只有十几 KB/s 而已。如果是以前的版本,似乎还要慢 :(

★简明使用教程


◇准备工作


  I2P 的官网老早以前就被 GFW 封了。所以你需要翻墙上“这里”,下载 I2P 的最新版本(目前是 0.9)。
  由于 I2P 是用 Java 编写的,所以你本机需要安装 Java 的运行环境(JDK 或 JRE)。Java 的版本需要 1.5 或者更高(Java 官网的下载页面在“这里”)。

◇安装


  安装的第一步会让你选语言,不懂洋文的同学,当然要选中文啦。安装步骤很简单,俺就不浪费口水了。

◇运行


  安装完成后,会在开始菜单添加 I2P 的链接。点击相关菜单,就可以启动 I2P。
  I2P 本身不提供 GUI 界面,但是提供 Web 界面。I2P 启动后,你只需在浏览器地址栏输入 http://127.0.0.1:7657/ 即可看到 I2P 的控制界面。

◇补种


  注意!这步是关键,看仔细喽!
  前面说了,I2P 是依靠 Kad 网络算法,通过不断扩散,来获取越来越多的节点信息。但是这个 Kad 网络算法不是万能的——它需要一些初始的种子,才能开始工作。在 I2P 的安装包中,已经内置了若干种子(节点信息)。但是天朝的 GFW 早就把这些内置的节点彻底封杀了。所以在天朝,第一次启动 I2P 会找不到网络。这时候就需要补种(补充种子),洋文叫 reseed。

  通常来说,补种只需要做一次,之后你的 I2P 就可以一直联网了。如果你的 I2P 停了很长时间(几个月)没有运行,那么下一次运行的时候,可能会无法联网,这时候就需要再补种。

  补种的方式有如下两个,请根据个人喜好任选一个。

1. 手动下载种子
翻墙打开官网的种子列表(在“这里”),把页面上列出的大约20个种子下载下来。然后把下载的种子放到本机的 %APPDATA%\I2P\netDb 目录下(这个目录是 I2P 用来存放种子的)。再把 I2P 重新启动一下。

2. 通过代理补种
I2P 可以连接到它的官网去补种。但是 I2P 的官网被封。所以你需要在 I2P 的补种界面(http://127.0.0.1:7657/configreseed)添加代理,让 I2P 先暂时利用其它翻墙软件补充种子。
界面截图如下(具体的代理地址和端口,取决于你用的翻墙软件):

不见图 请翻墙
填好代理地址和端口之后,要记得点击 "保存修改+立刻开始网络引导" 按钮哦。

  俺使用的是第二种方法,大约一柱香的功夫,找到200多个种子。请看下图:
不见图 请翻墙
(图中的 4 / 48 表示:最近一分钟内,跟4个节点有通讯;最近一小时内,跟48个节点有通讯)

  如果 I2P 找到的活动节点太少(小于20个),你就让它一直开着。开的时间越长,它能找到越多的节点。

◇设置浏览器


  一旦你的 I2P 接入网络,就可以利用 I2P 的代理来翻墙了。
  I2P 默认提供 HTTP 代理(127.0.0.1:4444)和 HTTPS 代理(127.0.0.1:4445),配置如下图(以Firefox为例,其它浏览器大同小异):
不见图 请翻墙

◇翻墙测试


  为了测试 I2P 的翻墙效果,俺去下载了几个翻墙软件。测试下来,最大下载速度只有 10 KB/s 左右。连接不稳定,有时候下载到一半就断掉。
  假如哪位同学也尝试了 I2P,欢迎到俺博客留言,反馈你的使用情况(尤其是网速的情况)。

★总结——I2P能用来干啥?


  在本文的末尾,俺稍微总结一下 I2P 的几种用途。

◇应急情况下,获取其它翻墙工具


  对于普通的网友,平时是不需要用 I2P 的(因为速度太慢)。但是你最好在手头留一个可用的 I2P 软件,以防万一。说不定哪天,朝廷加大网络封锁力度,导致你正在用的翻墙软件失效,这时候你就可以用 I2P 去下载其它翻墙软件的最新版本。

◇匿名上网


  俺个人觉得,用 TOR 搞多重代理,已经足以在天朝匿名上网了(虽然在天朝无法直接用 TOR,但 TOR 可以在其它翻墙工具的配合下建立连接)。不过捏,少数比较挑剔的网友,会嫌 TOR 还不够安全。对这些网友来说,I2P 是 TOR 的更安全替代品。

◇使用 I2P 应用


  其实拿 I2P 来做代理,是杀鸡用牛刀。 当初开发I2P 的 主要目的,并不是为了提供翻墙代理,而是为了提供 “暗网”(洋文叫 darknet)。所谓的“暗网”,就是一个完全隐匿的,不受政府监管的,也不会被政府破坏的地下互联网。既然是“地下互联网”,常见的互联网应用(比如:邮件、论坛、聊天、博客、文件共享),I2P 网络上都有。在 I2P 网络使用这些应用,你的真实 IP 地址不会暴露,减低了跨省追捕的风险。
  举个例子:假如你想成立一个地下组织,密谋颠覆朝廷。那就可以考虑让组织内的成员都采用 I2P 的网络应用——对隐藏真实 IP 很有效。
  至于如何在 I2P 上使用各种应用,不是本文的主题。有兴趣的同学,请看官网的“中文 FAQ”。

  最后,祝愿更多的天朝网友掌握翻墙姿势,早日呼吸到互联网上自由的空气。

俺博客上,和本文相关的帖子(需翻墙)
如何翻墙(传说中的扫盲教程,定期更新)
常见翻墙问题答疑(传说中的FAQ,定期更新)
获取翻墙软件方法大全(教你在无法翻墙的情况下拿到翻墙软件)
多台电脑如何共享翻墙通道
扫盲 VPN Gate——分布式的 VPN 服务器
关于 TOR 的常见问题解答
新版本无界——赛风3失效后的另一个选择
双管齐下的赛风3
自由門——TOR 被封之后的另一个选择
扫盲 VPN 翻墙——以 Hotspot Shield 为例
戴“套”翻墻的方法