什么是V2Ray?

V2Ray,是Victoria Raymond以及其社区团队开发的Project V下的一个工具。Project V是一个工具集合,号称可以帮助其使用者打造专属的基础通信网络。Project V的核心工具称为V2Ray,其主要负责网络协议和功能的实现,与其它Project V通信。V2Ray可以单独运行,也可以和其它工具配合,以提供简便的操作流程。开发过程主要使用Go语言,Core采用MIT许可证并开放源代码。

在中国大陆,本工具广泛用于突破防火长城(GFW),以访问被封锁和屏蔽的内容。

运行原理

V2Ray的运行原理与其他代理工具基本相同,使用特定的中转服务器完成数据传输。例如,用户无法直接访问Google,YouTube等网站,但代理服务器可以访问,且用户可以直接连接代理服务器,那么用户就可以通过特定软件连接代理服务器,然后由代理服务器获取网站内容并回传给用户,从而实现代理上网的效果。服务器和客户端软件会根据不同协议,要求用户提供一定的参数,如UUID、密钥、加密方式等,双方一致后才能成功连接(VMess协议能够自适应客户端采用的加密方式)。连接到服务器后,客户端会在本机构建一个本地Socks5代理(或VPN、HTTP、透明代理等)。浏览网络时,客户端通过这个Socks5(或其他形式)代理收集网络流量,然后再经混淆加密发送到服务器端,以防网络流量被识别和拦截,反之亦然。V2Ray 定位为一个平台,任何开发者都可以利用 V2Ray 提供的模块开发出新的代理软件。

主要特性

  • 多入口多出口:一个V2Ray进程可并发支持多个入站和出站协议,每个协议可独立工作。
  • 定制化路由:入站流量可按配置由不同地出口发出。轻松实现按区域或按域名分流,以达到最优的网络性能。
  • 多协议支持:V2Ray 可同时开启多个协议支持,包括Socks、HTTP、Shadowsocks、VMess、Trojan和VLESS等。每个协议可单独设置传输载体,比如TCP、mKCP和WebSocket等。
  • 隐蔽性:采用VMess、VLESS和Trojan协议的节点可以伪装成正常的网站(HTTPS),将其流量与正常的网页流量混淆,以避开第三方干扰。
  • 反向代理:通用的反向代理支持,可实现内网穿透功能。
  • 多平台支持:原生支持所有常见平台,如Windows、macOS和Linux,并已有第三方支持移动平台。

历史事件

专利事件

北京理工大学教授罗森林和两名学生王帅鹏、潘丽敏,于2019年3月25日申请名为“基于长短期记忆网络的V2ray流量识别方法”的专利。2019年10月25日,该专利的法律状态修改为“发明专利申请公布后的撤回”。

V2Ray项目组表示,专利并不会保证方法的有效性,专利仅仅是保护方法本身。其次,该专利的描述存在一些问题:

  • 专利中提到:“V2ray服务端与客户端进行每次通信时需要预先交换密钥,因而每次通信较为靠前的数据包具有显著特征”。实际上,VMess 协议并不存在“预先交换密钥”这个步骤。即使将 V2Ray 与需要进行“预先交换密钥”的协议配合使用,那么进行“预先交换密钥”时的数据包也不会有 V2Ray 的数据特征,因为此时还没有开始发送有效数据,即使有特征也是配合使用的协议的特征。
  • 专利中将 V2Ray 拼写成了 V2ray。

原作者失踪

2019年2月,V2Ray项目创始人Victoria Raymond突然消失,其Twitter、Telegram以及知乎停止更新。

2019年8月2日,原作者Victoria Raymond的Telegram 频道提示:“创建此频道的用户的帐户在过去5个月中处于非活动状态。如果它在接下来的30天内仍然不活动,那么该账户将自动销毁,并且这个频道将不再拥有创建者。”

原作者的Github账号依然保持更新直到2019年11月最后一次提交commits。

衍生项目

Project X

2020年11月,因为开源许可证等原因XTLS被V2Ray社区从V2ray core移除,VLESS及XTLS的作者和支持者基于V2Ray另行组建了Project X 组织,开发了基于V2Ray的衍生版本Xray。该软件完全相容V2Ray的配置文件和传输协议,由于Project X社区非常活跃,大部分新版图形化用户端已支持Xray。

V2Fly

由开源社区在原作者失踪后重组成立。

其于2019年6月2日表示:由于原开发者长期不上线,其他维护者没有完整权限,为了方便维护,我们创建了新的organization:github.com/v2fly 原organization中的仓库:v2ray/v2ray-core将会一直同步更新。

而实际上原仓库已停止同步更新,所有工作转移至v2fly/v2ray-core仓库下。

由V2Ray衍生的图形客户端

由于V2Ray、Xray项目本身开源,所以在Github等网站上有兼容或包含V2Ray、Xray核心而开发的图形化代理客户端,如

  • Qv2ray – 使用Qt/C++开发的兼容多种平台和多种协议的代理客户端
  • SagerNet – 包含v2ray-core的Android代理客户端,并能通过添加插件支持Brook、Hysteria、Naive、Mieru等多种代理协议
  • AnXray – 包含xray-core的Android代理客户端
  • v2rayNG – 包含v2ray-core和xray-core的Android代理客户端
  • v2rayN – 包含v2ray-core和xray-core的Windows代理客户端
5/5 - (1 票)

《什么是V2Ray?》上有2条评论

发表回复