Commit Graph

339 Commits

Author SHA1 Message Date
e1732a364fed
efb2ee0010 修订代码,文档, 示例 2022-05-01 09:32:00 +08:00
e1732a364fed
a07a57fdd8 修复tproxy不可用的bug; 令tproxy支持分流
该不可用bug是从1.1.9开始的, 当时重构后没有对tproxy进行测试,导致遗留一个很笨的bug.

之前的tproxy不支持分流。实际上是可以分流的。这里改动了一下函数签名,新增 *netLayer.RoutePolicy 参数,
就支持了分流。
v1.2.0-beta.1
2022-05-01 08:31:34 +08:00
e1732a364fed
eb10bfc773 修订代码. 令grpcSimple 可以回落到http2
老代码只是回落到http1.1

实际上只有回落到 h2才不会被审查者察觉
2022-04-30 22:16:49 +08:00
e1732a364fed
af5a06b30d 修订代码; 将ws的回落检查从main.go 转移到ws包中 2022-04-30 12:28:18 +08:00
e1732a364fed
dc86e17de7 支持grpcSimple 回落所有的method
老代码只能回落Get。新代码经过测试已经可以回落所有请求.
2022-04-30 11:53:28 +08:00
e1732a364fed
43a0eb96b7 添加了netLayer.IOWrapper 以用于grpcSimple的回落.回落已经可用 2022-04-30 10:46:59 +08:00
e1732a364fed
3963a21db7 修订workflow文件 v1.2.0-alpha.4 2022-04-29 23:41:54 +08:00
e1732a364fed
796db7fb02 修订 workflow文件 v1.2.0-alpha.3 2022-04-29 23:30:38 +08:00
e1732a364fed
d8cd82ff53 修订文档 v1.2.0-alpha.2 2022-04-29 23:14:01 +08:00
e1732a364fed
5aeb6092bf 修订代码,文档 2022-04-29 23:08:58 +08:00
e1732a364fed
053c644bc6 修复一个导致 使用quic时,回落时马上回闪退的bug v1.2.0-alpha.1 main 2022-04-29 21:51:49 +08:00
e1732a364fed
2e7dda7c18 修订代码,文档;logfile标准配置以及-sp行为改变,见下:
在标准 toml 配置中 配置 logfile 配置文件路径。 如 `logfile = "/var/log/verysimple/vs_log"`

将 -sp 的行为 改为 打印完毕后立即退出。
2022-04-29 21:40:01 +08:00
e1732a364fed
b27e65bbf8 修订代码,文档;更新依赖包 2022-04-29 19:46:04 +08:00
e1732a364fed
1bac60b50f 修订代码,文档 2022-04-29 18:23:50 +08:00
e1732a364fed
996dbe1d98 全面修订代码,文档;修复一系列bug;修改quic配置格式,见下:
修复一处quic的代码缺陷导致速度不高问题。
修复 quic 的 too many open streams 问题。
修复 quic的 early实际未生效的问题。
修复 grpcSimple 的一些导致闪退的bug

quic 的配置中,maxStreamCountInOneSession 改名为 maxStreamsInOneConn
v1.1.9
2022-04-29 10:57:56 +08:00
e1732a364fed
cc758dec66 全面修订代码;完成 grpcSimple包;使用 tag选择编译quic 和 grpc
grpcSimple包的服务端和客户端现在都已完成,且兼容v2ray等内核。
grpcSimple包 简洁、高效,更加科学。暂不支持multiMode。

若 grpc_full 给出,则使用grpc包,否则默认使用 grpcSimple包。
若 noquic给出,则不使用 quic,否则 默认使用 quic。

修复 ws early 失效问题;
v1.1.9-beta.1
2022-04-28 05:41:56 +08:00
e1732a364fed
4e700d7475 重构advLayer代码,完全使用通用接口. 2022-04-27 19:56:13 +08:00
e1732a364fed
2ea170e365 修订advLayer代码,添加公共接口 2022-04-27 11:04:55 +08:00
e1732a364fed
041e73eec1 修订文档 2022-04-26 17:55:03 +08:00
e1732a364fed
9b174ae520 修复上一个commit 没有 处理 tproxy 的错误. 2022-04-26 13:39:11 +08:00
e1732a364fed
f28f0d0bee 修订代码, 默认loglevel 改为 Log_info.
对一般用户而言,还是需要使用Info等级 来了解一下 一般的 日志情况,等到使用熟练之后,且确认运行没有错误后, 可以自行调为 warning 来提升性能

发现 bubble包 还自己引入了 命令行参数,这十分不可取,所以我们还是直接使用其代码。

将其它包中 的 命令行参数 统一 移动 到 cmd/verysimple 中;tls lazy 特性因为还在 调试阶段,所以 命令行参数 仍然放到 v2ray_simple 包中。
2022-04-26 13:22:18 +08:00
e1732a364fed
9d5b553e01 重构代码, 修订文档 2022-04-26 09:16:12 +08:00
e1732a364fed
8725dc513a 修订文档 2022-04-25 21:42:24 +08:00
e1732a364fed
ba1135d0d5 重构代码, 支持 use as library.
现在根目录作为一个可用的库,而可执行文件的代码放在 cmd/verysimple 文件夹中。

只是粗略地使其能够运行,有待进一步重构完善。

同时更新了 Makefile 和 .github/workflows
v1.1.9-alpha.1
2022-04-25 20:17:51 +08:00
e1732a364fed
a0ef5ca575 update 2022-04-25 18:40:32 +08:00
hahafool
27872e7dfc rename 2022-04-25 18:33:24 +08:00
e1732a364fed
5a5621426e Update go.mod 2022-04-25 18:21:35 +08:00
hahafool
cb6966e9fc 实现 quic 0-rtt v1.1.8 2022-04-25 17:59:00 +08:00
hahafool
96dbc99e8b 修订代码;为 quic的 0-rtt功能做铺垫. 2022-04-24 22:59:47 +08:00
hahafool
73b14b9a9a 修订代码 2022-04-24 20:52:05 +08:00
hahafool
345aaa88bb 修订panic捕获的代码;将 grpc的 mult的配置改为"grpc_multi" 2022-04-24 20:43:00 +08:00
hahafool
f0c7d47b7e 修复utils.RandPort 的log不当使用导致 空指针bug. v1.1.8-beta.2 2022-04-24 20:25:14 +08:00
hahafool
c761e007a2 修复udp监听失败的错误没有捕获导致空指针bug;main中捕获panic; 2022-04-24 20:18:59 +08:00
hahafool
fb1e639c55 添加 grpc multiMode, 应该与xray兼容 2022-04-24 20:04:10 +08:00
hahafool
8fcc3857fc 修订文档,代码 2022-04-23 09:26:36 +08:00
hahafool
e44e885282 更新文档,代码;
非 *nix 平台不再使用 bubble包, 减小大小
2022-04-22 20:11:02 +08:00
hahafool
f5803d1ba0 添加bindToDevice功能;配置示例: sockopt.device = "eth32423" v1.1.8-beta.1 2022-04-22 19:21:23 +08:00
hahafool
4c6e5b79c4 修订文档, makefile, 代码; 添加vless的v1添加mux支持.
减少 firstPayload的timeout,从1秒减少到100ms.

v1 的mux 和trojan一样,使用 smux + simplesocks的方式。
2022-04-22 19:00:50 +08:00
hahafool
22fc0722f3 修订文档, 代码; 添加reject协议,与v2ray的blackhole等价;
RejectClient 直接在 proxy包内实现,而不是放在子包。

把direct也放到了proxy中。因为 direct和 reject是两个通用client,不需要单列出来。
2022-04-22 13:51:36 +08:00
hahafool
a1a15770d2 修订代码, 文档.
令tls随机证书的国别和组织等信息随机化,在证书文件不存在时不退出程序, 而是使用随机证书继续运行。
不再提供 现成的 证书。
2022-04-22 12:40:23 +08:00
hahafool
e7ae557b91 修订文档, sockopt 和 utils包的代码. 2022-04-21 21:34:56 +08:00
hahafool
28279dfc31 更新文档, 代码 2022-04-21 17:05:41 +08:00
hahafool
7ffeafa7ee 更新文档、sockopt代码 2022-04-21 15:20:22 +08:00
hahafool
718bc0412e 修复读不到firstpayload时没有正确退出而导致空指针闪退问题. v1.1.7 2022-04-21 14:08:31 +08:00
hahafool
a43cd88888 修复tproxy bug, 已经可用! 2022-04-21 13:56:21 +08:00
hahafool
dd08b1dc2a 更新docs/install.md v1.1.7-beta.4 2022-04-21 11:54:00 +08:00
hahafool
98d9169a9d 试图按不同时区进行不同的go test 2022-04-21 11:14:18 +08:00
hahafool
14fe2226c1 修订代码和 makefile 2022-04-21 10:08:29 +08:00
hahafool
b8a27ab713 实现tproxy,添加tproxy示例文件.未经测试,很可能有问题. v1.1.7-beta.3 2022-04-20 13:22:10 +08:00
hahafool
9a1afe18c9 修订netLayer和proxy包的代码; 添加日志文件功能;试图添加tproxy功能 2022-04-20 09:18:49 +08:00