V2Ray,是Victoria Raymond以及其社区团队开发的Project V下反审查工具。Project V是一个工具集合,号称可以帮助其用户打造专属的基础通信网络。Project V的核心工具称为V2Ray,其主要负责网络协议和功能的实现,与其它Project V通信。V2Ray可以单独运行,也可以和其它工具配合,以提供简便的操作流程。开发过程主要使用Go语言,Core采用MIT许可证并开放源代码。
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,并已有第三方支持移动平台。
Project X
2020年11月,因为开源许可证等原因XTLS被V2Ray社区从V2ray core移除,VLESS及XTLS的作者和支持者基于V2Ray另行组建了Project X 组织,开发了基于V2Ray的派生版本Xray。该软件完全兼容V2Ray的配置文件和传输协议,由于Project X社区非常活跃,大部分新版图形化用户端已支持Xray
V2Fly
由开源社区在原作者失踪后重组成立。
由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代理客户端