Commit Graph

406 Commits

Author SHA1 Message Date
e1732a364fed
997a7152a0 支持打印出tls的具体类型 2022-12-27 10:11:32 +08:00
e1732a364fed
50d7e373ce 修订代码 2022-12-27 09:50:17 +08:00
e1732a364fed
3c9aed0435 修订代码;为shadowTls添加readv支持 2022-12-26 18:21:49 +08:00
e1732a364fed
a704f77eb4 重构readv代码,将MultiReader分为 BuffersReader和Readver两种
Readver是因为可以暴露出底层连接所以能加速;而BuffersReader是
因为协议对于多buf的读取支持良好所以可以加速,逻辑完全不同
2022-12-26 07:50:44 +08:00
e1732a364fed
e92faf7f9f 继续移动readv函数到utils 2022-12-25 13:00:03 +08:00
e1732a364fed
0b5c274555 为trojan和simplesocks实现SpliceReader 2022-12-25 11:55:49 +08:00
e1732a364fed
00110b9006 加强splice功能;添加SpliceReader接口;从vless->direct方向也使用splice
一般来说vless->direct方向因为 vless使用了tls,是不可以使用splice的
然而,如果是使用vless接受回落的话,则这个回落连接是可以进行splice的,
因为tls层已经被上级剥离了.
2022-12-25 11:33:31 +08:00
e1732a364fed
8de23403f4 方法改名 CanSplice->CanSpliceWrite;EverPossibleToSplice->EverPossibleToSpliceWrite 2022-12-25 10:11:51 +08:00
e1732a364fed
033dfa617e 修订代码 2022-12-25 10:05:26 +08:00
e1732a364fed
b3ebc52037 修订代码 2022-12-24 16:41:19 +08:00
e1732a364fed
816430a364 close #213, 移除极简模式 2022-12-24 13:44:25 +08:00
e1732a364fed
b347ba4f01 修订代码,示例;完善tls_cipherSuites配置的解析 2022-12-23 16:26:30 +08:00
e1732a364fed
f313c9fdc2 修订cmd代码,netLayer添加GetSystemDNS, SetSystemDNS ,PrintAllInterface 2022-12-23 13:22:27 +08:00
e1732a364fed
f1d36cd76f 修订示例;给vmess客户端在mux情况下加锁
之所以 vless和trojan不需要加锁,是因为它们的上级 tls层是线程安全的

如果要裸奔trojan+mux的话,还是一样需要枷锁
2022-12-22 20:02:32 +08:00
e1732a364fed
13589300ef 修订示例文档; use_mux = true配置改为 mux = true
并使用替换方式令 老配置依旧可用
2022-12-22 19:54:37 +08:00
e1732a364fed
3b9ffbe3b0 修订代码,文档;通过替换机制令 utls = true 配置依旧有效
因为新代码采用了 tls_type = "utls" ,且移除了 utls 配置,
为了保证兼容,使用替换方式预先替换为 tls_type = "utls"
2022-12-22 18:10:40 +08:00
e1732a364fed
3c754a0a89 feat: 实现 shadowTls v2;修订示例,文档,代码; 添加shadowTls的示例文件
shadowTls v2时客户端自动使用utls,且增强了探测防御

proxy.SetCommonReadTimeout -> netLayer.SetCommonReadTimeout

tlsLayer 配置也使用Extra,目前用于 shadowTls
2022-12-22 17:06:35 +08:00
e1732a364fed
6cdbf89220 修订tls配置格式,代码,移除utls项,添加 tls_type项。为shadowTls做准备 2022-12-21 23:31:13 +08:00
e1732a364fed
12f7dd1bc6 移除 ClientCreator.UseUDPAsMsgConn 方法 2022-12-21 14:08:31 +08:00
e1732a364fed
c8ce5046db 修复shadowsocks的udp传输错误问题, fix #201
该问题来自vs的一个超陈旧的 udp bug,应该是自从实现了dns功能之后就存在了

当时写错了,把拷贝buf的方向写反了,而且错误地返回了EOF

同时realTargetAddr的network从dual写为udp的位置也需要提前

而且ss实际上不需要也不可能自己处理拨号。

我真是太笨拙了, 犯下这么多错。
2022-12-21 14:01:09 +08:00
e1732a364fed
e9128e7fdf 增加 extra.tun_dns配置,若未给出,默认为8.8.8.8 2022-12-20 20:29:44 +08:00
e1732a364fed
822705e37b tun的自动路由在win上添加一条设置dns的命令
如果不设置wintun的dns,会默认走默认路由的dns,会导致收到外部的dns污染
2022-12-20 18:34:54 +08:00
e1732a364fed
eed0784f3e 修订代码;令tun在darwin不给出名称时使用系统指派的名称 2022-12-20 17:25:02 +08:00
e1732a364fed
af9917a657 根据 xjasonlyu/tun2socks提供的路由示例修复darwin的tun的自动路由
https://github.com/xjasonlyu/tun2socks/wiki/Examples

我自己写的路由果然太差,还是人家提供的好用
2022-12-20 11:16:49 +08:00
e1732a364fed
b102bd6fa1 补充提交 2022-12-20 00:15:04 +08:00
e1732a364fed
d219a33703 修复ss的udp的写入错误 2022-12-20 00:14:21 +08:00
e1732a364fed
097db3b017 MsgConn接口方法重命名:WriteMsgTo -> WriteMsg 2022-12-19 20:26:36 +08:00
e1732a364fed
2da0e63558 MsgConn接口方法重命名:ReadMsgFrom -> ReadMsg 2022-12-19 20:18:35 +08:00
e1732a364fed
e94ead14fb 修订代码,使tun的udp可用; 2022-12-19 19:07:54 +08:00
e1732a364fed
ece4996342 修订文档,将v2ray_simple中的proxy和adv子包引用转到cmd/verysimple中
v2ray_simple 包作为公共包,不应强制用户使用任何一种proxy
2022-12-19 11:47:42 +08:00
e1732a364fed
d27b659bf7 tun 不用chan而用回调函数,增强性能
用chan完全多此一举
2022-12-19 09:22:57 +08:00
e1732a364fed
92f2c1df70 SelfListen接口不用chan而用回调函数,增强性能
用chan完全多此一举
2022-12-19 09:14:36 +08:00
e1732a364fed
673bf2faf1 修订文档,代码;令关闭tun时不卡住;-d自动下载wintun.dll;notun编译tag
新增 notun  build tag,取消 tun和 gui之间的关联。
2022-12-19 08:41:25 +08:00
e1732a364fed
2ff907d335 修订文档,示例 2022-12-18 21:28:37 +08:00
e1732a364fed
6293af57ae 上一个commit测试成功. 修改windows的tun的自动路由以支持bindToDevice 2022-12-18 21:00:47 +08:00
e1732a364fed
7b2c4cd336 修订代码,文档;修复darwin和windows的bindToDevice的ipv6问题 2022-12-18 20:30:09 +08:00
e1732a364fed
3b814fa08e 修订tun文档,代码;修复darwin上tun在bindToDevice时遇到的问题 2022-12-18 20:20:28 +08:00
e1732a364fed
60271dcabd 修订tun文档,代码;前几个commit一直在修tun linux auto route,修好了 2022-12-18 16:26:09 +08:00
e1732a364fed
18e216326b 修正代码 2022-12-18 16:15:22 +08:00
e1732a364fed
5f980a3686 修正代码 2022-12-18 16:07:10 +08:00
e1732a364fed
e8fe7048c3 修正代码 2022-12-18 15:56:10 +08:00
e1732a364fed
e5a88e5e5c 修订tun代码 2022-12-18 15:50:34 +08:00
e1732a364fed
7c92afc260 修正代码 2022-12-18 15:43:03 +08:00
e1732a364fed
613b4ce54a 修正笔误 2022-12-18 15:21:11 +08:00
e1732a364fed
be6933607b 修正代码 2022-12-18 15:19:09 +08:00
e1732a364fed
4512122149 修正代码 2022-12-18 15:17:16 +08:00
e1732a364fed
bb3f73b03f 修正代码 2022-12-18 15:09:35 +08:00
e1732a364fed
6950e3026a 添加tun的linux的auto route;ui -> v0.0.1-alpha.12; 2022-12-18 15:06:16 +08:00
e1732a364fed
f00495fc26 修订文档和依赖 2022-12-16 18:15:03 +08:00
e1732a364fed
b85c886415 修正action 2022-12-16 16:30:19 +08:00