尝试使用 IPFS 来分发 V2Ray 安装包
除了 V2Ray 的开发之外,一个非常重要的问题是分发。也就是先有鸡还是先有蛋的问题。用户需要使用 V2Ray 软件来翻墙,但是使用之前要先下载到安装包,而安装包的下载地址,比如 Github Release,通常是被墙的。
V2Ray 的终极目标是提供一个无障碍的翻墙体验,即当你只有一台全新的电脑,包括网络和浏览器,其它什么都没有的时候,你可以使用 V2Ray 来完全翻墙的第一步。
要做到这一点,需要两个条件:
- V2Ray 提供了一个免费的服务器,通过自带的配置文件即可连上;
- 用户可以自由地下载到 V2Ray 的安装包。
第一个条件已经完成了,V2Ray 的官方服务器已经稳定工作很长一段时间了。现在面临的主要问题是第二个条件。
想必大家都已经看到 Telegram 上的公告,我的第一个想法是通过网盘来分发,某网盘号称国际版没有审查,但在我公布下载链接的数小时内,帐号就被封锁,我也只能呵呵了。
想来想去,传统的 HTTP 道路肯定是走不通的,国内的 HTTP 都有审查,国外的都被墙,没有可用的。那么也只能 P2P 了。
目前对于文件分享,P2P 的一个主流方案是 IPFS。和 BT 类似,IPFS 没有中心服务器,你可以连接到其它的 IPFS 节点来下载所指定的文件。文件名(或目录名)就是一个字符串,有了这个字符串,你就可以下载到 V2Ray 的安装包。
当然这个方案有个缺点,也就是你需要先下载 IPFS 的程序,等于把分发的责任转移给了 IPFS。如果将来有一天,没人可以下载到 IPFS 的程序了,那也就没戏了。
所以现在只能期待 IPFS 依然存活,并且有好心人在墙内做种子。🙏🙏🙏🙏
接下来简单介绍一下 IPFS。在 IPFS 中可以发布文件或者文件夹,每个文件和文件夹都有一个唯一标识,在 IPFS 中通过这个标识可以获取这个文件。比如目前最新的 V2Ray 安装包在这里。这个路径是不可变的,也就是说,之后的版本再次传到 IPFS 之后,会有一个新的标识符。为了解决这个每次都变的问题,IPFS 项目中有个叫 IPNS 的工具用来重定向,大概就相当于域名和 IP 的关系。而 V2Ray 的 IPNS 是这个。不知道为什么 IPNS 比 IPFS 慢了很多,大概是种子不够多的原因吧。
在此希望广大翻墙同胞们一起来做种,让下载速度变得更快。做种的方式大约是,在已经配置完 IPFS 之后,运行:
ipfs pin add -r /ipns/QmdtMuAhEUPFX9NQiGhRj2zhS1oEA76SXNDnZRHqivjMwR
我也是刚刚学着使用 IPFS,如果有问题请指正。
在上述的分发渠道中你还可以找到一些主要的 V2Ray 客户端。如果还需要其它的工具,请留言,之后我会加上。
做种的命令似乎可以改成
ipfs pin add -r --progress /ipns/QmdtMuAhEUPFX9NQiGhRj2zhS1oEA76SXNDnZRHqivjMwR
,这样可以看到peer的数量。某网盘?我想知道是哪个,心里才有个数……
截图里不是能看到城通网盘吗?