相信大家对 V2Ray 并不陌生, 因为可以通过部署 V2Ray 到海外的服务器上通过相应的客户端进行科学上网,而且可以使用 Vmess, Vless, TJ 等协议进行传输安全保证,这次我们就介绍一下 V2Ray 的一个客户端 V2RayA, 一个易用而强大的,跨平台的 V2Ray 客户端。
P.s. 以下的教程是以群晖 Container Manager 为例子进行介绍
参考视频: YouTube
1. Docker 安装 V2RayA 客户端
以下是 docker-compose.yaml 文件
version: "0.2"
services:
v2raya:
ports:
- 2017:2017
- 20170:20170
- 20171:20171
- 20172:20172
environment:
- V2RAYA_ADDRESS=0.0.0.0:2017
- IPTABLES_MODE=legacy
- V2RAYA_V2RAY_BIN=/usr/local/bin/v2ray
- V2RAYA_NFTABLES_SUPPORT=off
volumes:
- /volume1/docker/v2raya-config:/etc/v2raya
- /lib/modules:/lib/modules
- /etc/resolv.conf:/etc/resolv.conf
image: mzz2017/v2raya
container_name: v2raya
restart: always
entrypoint: /etc/v2raya/bootstrap.sh
privileged: true
上面的配置里面的注意点
- 端口: 把容器的 2017, 20170,20171,20172 端口暴露出来,是方便访问 V2RayA 服务以及通过这些端口进行科学上网
- 映射文件夹: /volume1/docker/v2raya-config <– 请把这个文件夹的路径改为相应自己服务器上的目录
- 启动文件: /volume1/docker/v2raya-config/bootstrap.sh <– 需要在映射的文件夹里面创建一个bootstrap.sh的启动文件
bootstrap.sh 文件内容
#!/bin/sh
insmod /lib/modules/nfnetlink.ko &> /dev/null
insmod /lib/modules/ip_set.ko &> /dev/null
insmod /lib/modules/ip_set_hash_ip.ko &> /dev/null
insmod /lib/modules/xt_set.ko &> /dev/null
insmod /lib/modules/ip_set_hash_net.ko &> /dev/null
insmod /lib/modules/xt_mark.ko &> /dev/null
insmod /lib/modules/xt_connmark.ko &> /dev/null
insmod /lib/modules/nf_tproxy_core.ko &> /dev/null
insmod /lib/modules/xt_TPROXY.ko &> /dev/null
insmod /lib/modules/iptable_mangle.ko &> /dev/null
v2raya

等待安装完成后,看到v2raya 的服务启动成功,那就可以开始配置了
2. 配置订阅节点
请通过http://<群晖服务器 IP>:<端口> (e.g. http://192.168.192.198:2017) 登录 V2RayA 后台

第一次登录,会提示你创建一个管理员账号 (e.g. root, password)

- 点击右上角的图标会出来菜单,这里可以进行注销和选择语言的操作
- 导入功能,点击后会出来弹框,输入节点的信息即可导入
- V2RayA 的服务运行状态(i.e. 就绪/正在运行)
- 设置代理的配置(e.g. 端口, 协议, 模式 etc)

点击导入可以进行单个节点的订阅, 这里支持 VMess 和 Vless 等协议的节点链接

点击设置可以进行代理配置, 请注意以下几点
- 关闭”开启 IP 转发”, 启动”开启端口分享”
- 系统代理选择 GFWList 模式
- 规则端口分流模式选择GFWList 模式
- 其他的可以根据自己的需要进行选择

当成功导入节点后,可以勾选该节点然后点击上方的”HTTP”进行链接测试,这时候可以在该节点的时延看到延时的状态
每个节点的”操作”区域有三个按钮, 选择, 修改,分享. 如果想启动 V2RayA 客户端并使用这个节点,可以按照以下步骤进行操作
- 点击这个节点的选择按钮,成功选择后该按钮会变成取消的文案,并且该节点的背景颜色会变成其他颜色
- 点击左上角的”就绪”按钮启动客户端, 待该按钮变成”正在运行”那就是说服务已经启动

启动后是这样的
3. 连接代理

在 V2RayA 的设置->地址与端口里面可以看到可连接的协议和端口号

我们用 Chrome 的SwitchyOmega插件为例, 创建一个代理配置,然后使用
- Protocol: SOCKS5
- Server: 群晖 IP 地址
- Port: 20170
然后就可以打开 YouTube 试试了
好了,到这里就简单的介绍了如果安装,配置和使用 V2RayA 客户端,大家有什么问题可以留言
P.S
有2 点可以跟大家分享的
- 官网里面说到如果是群晖的话,需要手动配置 IPTables, 我个人觉得不配置也能用,因为我原本是通过官网的连接把编译好文件(e.g. *.so, *.ko)放到指定的文件夹里面,但后面有因为某种原因删除了,发现还是可以正常的使用,所以建议大家先安装,如果不行的话再考虑要不要把 IPTables 的文件上传到群晖服务器的目录里面.
- 如果你把 V2RayA 的容器配置成了 host,那可能会对已有的其他容易有影响,起码我试过配置了 host 之后,虽然 V2RayA 客户端没有问题,代理也没有问题,但我原本其他容器的网络连接就失效了,包括 Clash, CloudFlare 的容器网络连接一直都连不上,最后才发现是因为我配置了 V2RayA 容器为 host 了.

