A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan, Tuic and Juicity protocols. 🚀
Go to file
2019-11-19 07:31:50 +08:00
.github/ISSUE_TEMPLATE Update issue templates 2019-10-25 06:39:07 +08:00
gui fix: bugs 2019-11-19 07:31:50 +08:00
service fix: bugs 2019-11-19 07:31:50 +08:00
.dockerignore fix: most of bugs in docker due to restricted systemd access 2019-11-03 11:08:38 +08:00
.gitignore merge 2019-11-02 16:11:00 +08:00
.travis.yml chore: .travis.yml 2019-11-04 07:23:54 +08:00
CNAME Create CNAME 2019-10-21 15:42:41 +08:00
docker-compose.dev.yml fix: bugs 2019-11-19 07:31:50 +08:00
docker-compose.yml fix: bugs 2019-11-19 07:31:50 +08:00
Dockerfile fix: most of bugs in docker due to restricted systemd access 2019-11-03 11:08:38 +08:00
Dockerfile.dev fix: bugs 2019-11-19 07:31:50 +08:00
issue_template.md feat: complete essential functions 2019-10-25 05:14:30 +08:00
LICENSE Initial commit 2019-10-19 04:42:07 +08:00
package.json feat: share function complete 2019-11-01 06:24:14 +08:00
README.md fix: bugs 2019-11-19 07:31:50 +08:00
yarn.lock feat: share function complete 2019-11-01 06:24:14 +08:00

V2RayA

V2RayA是V2Ray的一个Web客户端。

尽管V2Ray的客户端很多但在Linux上好用的却寥寥无几。jiangxufeng/v2rayL是目前Linux上较好的一个客户端但暂时无法满足我对用户体验的较高要求决定手撸一个。

虽然V2RayA是一个Web客户端但它支持以PWA(Progressive Web App)的方式享受桌面端应用的体验。食用方法

项目地址:https://github.com/mzz2017/V2RayA

前端demo: https://v2raya.mzz.pub

Build Status

name docker image travis-ci
V2RayA Docker Cloud Build Status Travis (.org)

功能清单

目前已完成基本功能,项目正在逐步开发中。

已支持:

  • 全局透明代理不支持docker模式
  • V2Ray服务控制
  • 导入vmess、ss、订阅地址
  • websocket、kcp、tcp、http、tls、shadowsocks全支持
  • 测试节点Ping时延
  • 二维码、地址分享
  • 同时开放socks5、http、带PAC的http三个端口PAC模式可选GFWList、大陆白名单
  • 服务端启动自动检查PAC、订阅更新
  • 多路复用、TCPFastOpen支持

待开发:

  • 手动添加/修改节点
  • 测试节点HTTP时延
  • 自定义PAC路由规则
  • QUIC协议支持
  • 端口号配置
  • 登陆与安全

界面截图

节点

订阅源

点击展开更多截图

设置

使用自定义PAC时可以配置路由规则

使用

如下使用方法:

  1. 拉取源码使用docker-compose部署Web-GUI使用或手动部署Web-GUI

    git clone https://github.com/mzz2017/V2RayA.git
    cd V2RayA
    docker-compose up -d --build
    
  2. 使用docker命令部署Web-GUI使用或手动部署Web-GUI

    我们同步发行Docker镜像如果无法使用docker-compose可以参考docker-compose.yml并使用docker命令自行搭建。

  3. 不使用docker

    如不使用docker请确保已正确安装V2Ray及RedisJSON

    准备完毕后,可下载Releases启动V2RayA服务端

    或拉取源码通过golang启动

    git clone https://github.com/mzz2017/V2RayA.git
    cd V2RayA/service
    sudo go run -mod=vendor main.go
    

    注意尽管golang具有交叉编译的特性但由于项目使用了linux commands导致该方法不支持windows。若想在windows体验可借助Docker或WSL。

默认使用的四个端口分别为:

2017: V2RayA后端端口

20170: SOCKS协议

20171: HTTP协议

20172: 带PAC的HTTP协议

在不同运行环境下程序表现将不同

由于docker容器对systemd的限制性在docker中将采用pid共享进程命名空间volumes共享存储空间更新配置后通过结束进程触发v2ray容器的重启来更新配置以无inbounds的配置代替断开连接这是一种折中方案会有如下影响

  1. 在更换配置时略有卡顿
  2. 无法使用全局透明代理

在宿主环境下以sudo权限运行将不受此限制。

支持Windows、MacOS吗

目前仅在Linux进行过测试并计划优先适配Linux。目前尚未验证在Windows及MacOS上存在的问题。

实际上Windows和MacOS上已经存在很多优秀的V2Ray客户端若无特殊需求建议选择这些客户端。

已知问题

  • 在windows环境下无法监听2017端口。据了解Caddy的2015端口也是不能监听的后期将考虑支持自定义端口以解决问题。
  • 在使用GoLand进行开发时如果开启了全局透明代理由于程序捕获不了GoLand的结束signal在程序退出后将无法恢复正常网络因此建议使用killall ___go_build_V2R来结束进程。如已中招重启系统即可。

注意

应用不会将任何用户数据保存在云端所有用户数据存放在用户本地配置文件中。若服务端运行于docker则当docker容器被清除时配置也将随之消失请做好备份。

提供的GUI demo是由Render在本Github项目自动部署完成的如果担心安全性可以自行部署。

不要将本项目用于不合法用途,作者仅将该项目用于学习研究和内网穿透的用途。

在docker环境中开发

docker-compose -f docker-compose.dev.yml up

gin会监测文件改动并热重载codegangsta/gin

如果出现问题,可以尝试添加--build参数或将docker离开swarm模式docker swarm leave --force

感谢

hq450/fancyss

xlzd/quickdown

ToutyRater/v2ray-guide

txthinking/brook

相似项目

v2raywebui/V2RayWebUI

jiangxufeng/v2rayL

NoOne-hub/v2ray_client

协议

License: GPL v3