V2Ray 简介

V2Ray 是什么?

下面是我直接从 V2Ray官网 摘下来的一段介绍:

Project V 是一个工具集合,它可以帮助你打造专属的基础通信网络。Project V 的核心工具称为 V2Ray,其主要负责网络协议和功能的实现,与其它 Project V 通信。V2Ray 可以单独运行,也可以和其它工具配合,以提供简便的操作流程。

由于大家更加熟悉 Shadowsocks 和 VPN,所以很多人可能会想当然地将 V2Ray 看作一个特定的翻墙协议或用于实现该协议的翻墙软件。但正如上面所说,V2Ray 实际上是一个融合了各种翻墙协议的集成性软件,其中只有 VMess 协议是 V2Ray 社区原创的翻墙协议。

那上面那段话的 Project V 是什么呢?V2Ray 最早就这一个名字,维护 V2Ray 的社区叫 V2Ray 社区,V2Ray社区发布的程序软件也都可以用 V2Ray 泛指。后来,V2Ray 规模越来越大,就成立一个 Project V 项目。现在,我们称呼维护 V2Ray 的社区为 Project V 社区 更合适,不过这个也不用分的很清。

Project V 包含了与 V2Ray 有关的全部,除了 V2Ray 自己,所有相关的软件、工具、新协议都是 Project V 的一部分。这里的“相关软件”主要指:1、V2Ray 的一些辅助工具,比如用于生成证书和校验配置文件的工具。2、基于 V2Ray 开发的移植到其它平台(Windows、macOS、iOS 等等)的实现,特别是那些带图形界面的。

目前,V2Ray 这个名字严格上只代指 V2Ray 内核。那么,这个内核又是指什么呢?很简单,就是你在 GitHub 上下载的那些玩意儿。这些是 V2Ray 的预编译版本,你也可以下载代码自己编译,也是 V2Ray 内核。

Project V 社区在 GitHub 上非常贴心的准备了多个操作平台的预编译程序。不过这些都是命令行程序(要不然咋能叫 内核 呢),虽然可以直接使用,但用起来很不友好、很麻烦,更何况 V2Ray 的配置文件写起来特别烦,所以大家用的一般都是带图形界面的第三方 V2Ray 客户端。比如 macOS 平台的 V2RayX。V2RayX 完全是基于 V2Ray 内核来的。事实上,V2RayX 本身就是一个壳,帮助用户图形化地生成配置文件并运行 V2Ray 内核,当然 V2RayX 是有配置系统代理的功能的。

V2Ray 支持的代理协议

截止到2018年12月,V2Ray支持以下协议:

  • 传统的代理协议:HTTP 和 SOCKS。
  • MTProto:Telegram 的开发团队制作的一款协议,作为 Telegram 的专用代理协议。
  • Shadowsocks:这个无需多言。但要注意的是,V2Ray 不支持 ShadowsocksR。
  • VMess:V2Ray 独创的一款翻墙协议,据说比 Shadowsocks 更安全。有些机场声称支持 V2Ray,一般就是指支持 VMess。

细心的朋友可能会发现一个问题,我上面“传统的代理协议”那一栏怎么只有 HTTP 和 SOCKS,没有 HTTPS 和 SOCKS over TLS。这两种协议虽然不常用但却很重要,V2Ray 既然是一个融合了各种翻墙协议的集成性软件,没理由不支持。毕竟,单纯的 HTTP 和 SOCKS 是没法用来翻墙的,只能作为本地代理用用,真要拿来翻墙,HTTPS 和 SOCKS over TLS 才行。

莫急,上面这些代理协议是从应用层角度上讲的,V2Ray 强大的一点在于,它在传输层上也可以高度自定义。

同样是截止到2018年12月,V2Ray 可选的传输层配置有:用于优化网络质量的 kcp、QUIC 和 TCP Fast Open;用于伪装的 WebSocket;HTTP/2 传输;以及 TLS 加密。

不仅是 HTTP 和 SOCKS 可以在传输层配置 TLS 使其变成 HTTPS 和 SOCKS over TLS 协议,MTProto、Shadowsocks 和 VMess 也都可以通过传输层的配置包一层 TLS 在它们外面进行加密(并伪装成 TLS 流量)。HTTP 和 SOCKS 不必说,TLS 肯定是要的,VMess 裹 TLS 层也是常见的做法,但应该没人会在 Shadowsocks 外面再使用 TLS 加密。

V2Ray 客户端推荐

V2Ray 内核就是可以直接拿来用的,但用起来很麻烦,配置文件得自己写,系统代理得自己配,除了个别追求 V2Ray 功能极致的 Power User,应该很少有人拿 V2Ray 内核当客户端用,所以我们主要介绍带图形界面的 V2Ray 客户端。对了,特别说明,教程具有时效性,你看到这篇文章的时候,有些东西可能已经不太一样了。

Windows 端

V2RayN

V2rayN客户端是一个基于V2ray 内核的windows客户端,它目前支持Xray内核,然后也可以手动更新核心和客户端的版本。下载即用,数据可视化(能看到你访问的网址)、上手也简单。推荐新手使用。使用教程 👉 https://www.v2rayfree.eu.org/post/v2rayN-tutorial/

Clash for Windows

Clash for windows 简称:CFW 是Clash在windows图形化的分支,目前也支持Mac OS系统的版本,它更适合使用机场订阅链接,或者能通过Clash 配置文件范本添加节点的小伙伴使用,有一定的上手难度,但是其自动更换节点的功能及超牛X的分流规则,调教好了可以无视墙的存在。使用教程 👉 https://www.v2rayfree.eu.org/post/clash-for-windows-tutorial/

Android 端

V2RayNG

V2RayNG 是一个基于 V2Ray及Xray 内核的 Android客户端,对应windows端的v2rayN。

详细使用教程:https://www.v2rayfree.eu.org/post/v2rayNg-tutorial/

Clash for Android

clash Android客户端,对应windows端的Clash for windows。

详细使用教程:https://www.v2rayfree.eu.org/post/clash-for-andriod-tutorial/

macOS 端

V2RayX

没用过,就不赘述了。

V2rayU

除了 VMess,它还支持 Shadowsocks。

clashx

clash for Mac OS系统,,对应windows端的Clash for windows。

详细使用教程:https://www.v2rayfree.eu.org/post/clash-for-mac-tutorial/

iOS 端

Shadowrocket 和 Quantumult

不用我多介绍,大家应该都对这两款软件非常熟悉了。除了 Shadowsocks(R) 协议,它们也都支持 VMess 协议,所以也能算 V2Ray 客户端,但它们对 V2Ray 的支持都很有限。

Kitsunebi

引用下 V2Ray 官网对它的介绍:

Kitsunebi 是一个基于 V2Ray 核心的 iOS 应用。它可以创建基于 VMess 或者 Shadowsocks 的 VPN 连接。Kitsunebi 支持导入和导出与 V2Ray 兼容的 JSON 配置。

由于使用 V2Ray 核心,Kitsunebi 几乎支持 V2Ray 的所有功能,比如 Mux 和 mKCP。

Kitsunebi 和 Shadowrocket、Quantumult 一样都是收费软件。

总结

V2Ray 是一款网络工具,它可以实现多种网络流量的接收、过滤、变换和转发,通过 V2Ray,你只要操纵一个几KB的文本文件,就可以随心所欲的让网络流量伪装成你希望的样子,按照你喜欢的规则,流往你指定的地方,这才是 V2Ray 的价值所在。