Commit Graph

641 Commits

Author SHA1 Message Date
e1732a364fed
c92219d18d 整理代码,文档,示例 2022-12-04 23:15:49 +08:00
e1732a364fed
b517f9d4de 整理文档,代码; go.mod -> 1.19 2022-12-04 22:35:26 +08:00
e1732a364fed
83ed640117 修订ss代码,使ss的udp可用,已通过测试
测试使用vs的ss客户端以及vs的ss服务端,tcp和udp都是通的
2022-12-04 20:44:54 +08:00
e1732a364fed
bee1afd286 修订代码使ss可正常拨号 2022-12-04 19:28:12 +08:00
e1732a364fed
7355b33d9b 完成ss的server的udp部分 2022-12-04 19:19:07 +08:00
e1732a364fed
f35c485a63 定义好新的RelayMsg函数 2022-12-04 18:34:58 +08:00
e1732a364fed
d7aaeb481c 修订代码;添加MsgProducer和MsgConsumer接口 2022-12-04 13:50:52 +08:00
e1732a364fed
7a81617eed 修订示例,代码; grpc的给出的path自动移除前面的/; 修订tproxy代码使其可用,并可指定监听tcp/udp 2022-12-04 11:50:45 +08:00
e1732a364fed
7879e87380 修订tproxy和url的path
把tproxy重新放回server中,不单独分开处理;添加 ListenerServer类型,以及SelfListen方法

修正url中path的读取

todo: grpc 的servername读取path时自动删除前面的 /
2022-12-04 08:46:20 +08:00
e1732a364fed
b72bd3145a 修正url代码,path直接放在url的path中 2022-12-04 07:17:00 +08:00
e1732a364fed
a9a746ba2f 多项对接口的修改,为ss做准备:
取消Client的LocalAddr,改为 LocalTCPAddr 和 LocalUDPAddr
删除direct中的对应条目。这样可更清晰地配置双本地地址

将设置sendthrough设置双地址的代码移动到 proxy.newClient函数

这样不仅direct可指定不同的tcp和udp的本地地址,任何client协议都可以了

为ClientCreator 接口 添加 UseUDPAsMsgConn 方法,direct和ss返回true

在ss的client的EstablishUDPChannel进行自行拨号

在ss的server建立后,自动循环监听udp,绕过vs的基本监听机制。因为vs架构的限制,一个代理只能有一个唯一的传输层协议。

ServerCreator 接口 添加 AfterCommonConfServer 方法
2022-12-03 23:51:51 +08:00
e1732a364fed
f7d1bf5e48 令netLayer.UDPMsgConn实现net.PacketConn 2022-12-03 21:42:47 +08:00
e1732a364fed
9ccd5bac71 修订文档,代码 2022-12-03 21:29:38 +08:00
e1732a364fed
5fcaee22d1 定义dual类型的Network,用于direct,ss和socks5
这三种协议在实际传输时可能同时用到tcp和udp. 如果没给出Network值,
那么默认的Network应该为dual
2022-12-03 16:39:02 +08:00
e1732a364fed
81514532d7 fix #178, tproxy传输ipv6的udp时出错
这是上游代码go-tproxy的一个bug.
v1.2.4-beta.7
2022-12-03 14:33:00 +08:00
e1732a364fed
d3c7a0f6df 修复simplesocks中atype类型用错的问题
trojan同问题解决后,立刻意识到simplesocks也犯了同样的错误。
2022-12-03 13:09:09 +08:00
e1732a364fed
d4ec27fad1 修复trojan传输ipv6的udp数据时出错的问题,关联#136
这是一个愚蠢的错误,将v2ray类型的定义用在了trojan上
2022-12-03 12:56:48 +08:00
e1732a364fed
4f82db83c6 修复socks5的client的udp associate的问题 2022-12-03 08:11:08 +08:00
e1732a364fed
669a65aa32 feature:api server添加热删除功能 2022-12-02 20:39:45 +08:00
e1732a364fed
4b27fbb0bd feature:api server 添加 热加载url功能;添加sa参数,配置api server的监听地址;
允许api server 在不设置密码时运行
2022-12-02 20:27:27 +08:00
e1732a364fed
18d5a8f062 feature:交互模式的用户偏好现在可以被自动保存;记录最近的交互项;修订代码,文档;
自动保存到 .verysimple_preferences 文件中
添加 -dp 选项,可关闭 该特性
最近的交互项现在可以被排序到首位,方便多次执行
2022-12-02 18:49:30 +08:00
e1732a364fed
7b3705c977 修订文档,代码;将AppConf代码从proxy移动到cmd中 2022-12-02 14:18:34 +08:00
e1732a364fed
6e39f4f2f2 完成url标准格式,见docs/url.md; 修订代码 2022-12-02 11:09:40 +08:00
e1732a364fed
a5b9455b88 修订代码,文档;添加url的extra部分的解析 2022-12-02 08:54:42 +08:00
e1732a364fed
ec1d594e69 升级go版本到1.19 2022-12-02 01:05:05 +08:00
e1732a364fed
90ec238f6b feature:交互模式添加 热加载url配置功能;修订代码,文档; 2022-12-01 23:32:06 +08:00
e1732a364fed
a6ecc4106e feature:交互生成各种分享url/格式;修订交互模式
支持如下格式

vs标准url
xray分享链接标准提案 (#716)
shadowsocks uri (SIP002)
v2rayN分享链接 (vmess://base64)
Quantumult X (圈叉的配置的 [server_local] 部分)
Clash (yaml配置中 proxies 部分)
2022-12-01 16:30:43 +08:00
e1732a364fed
0abceced2d 修订文档,示例;实现配置转换成圈叉,clash,v2rayN,ss,xray等格式 2022-12-01 13:39:33 +08:00
e1732a364fed
691c3831e1 添加CommonSplit相关的benchmark 2022-12-01 09:03:44 +08:00
e1732a364fed
2e5a33feb1 修订文档,示例,代码;解决http头层回落代码导致panic的bug;
添加 encrypt_algo 配置;

添加 configAdapter包
2022-11-30 22:40:26 +08:00
e1732a364fed
0546be296e 修订文档,示例,代码 2022-11-30 19:32:46 +08:00
e1732a364fed
dbed52a11e http添加no_resp_h_c配置,遇到http响应后绕过默认响应头
这样可以配合真实服务器响应.
2022-11-30 18:45:29 +08:00
e1732a364fed
0f527cfba4 修订文档;令http层支持回落 2022-11-30 17:02:29 +08:00
e1732a364fed
a44a83c5f3 fix #170 2022-11-05 16:07:26 +08:00
e1732a364fed
761e06a3d8 解决lazy在vless v1不可用的问题, fix #170 2022-11-05 16:01:33 +08:00
e1732a364fed
a247966c36 添加ds命令行参数,可以强制关闭splice 2022-11-04 22:54:37 +08:00
e1732a364fed
2c901f1fde try解决splice的问题, 关联#160 里面第二个发现的问题
这是一个古老的bug;过去一直认为unix可以用于splice,
这次重新查看资料才知道,只有tcp可以splice写入
2022-11-04 22:46:32 +08:00
e1732a364fed
35f0064d94 修订注释;添加遗漏的InitEasyDeadline();关联#169 v1.2.4-beta.6 2022-11-03 22:16:02 +08:00
e1732a364fed
34073bd174 修订注释;增加发布包目标架构 2022-11-02 08:43:18 +08:00
e1732a364fed
30b283b81b fix #166, vmess 在 ws + earlydata时 会导致连不上
这是一个陈旧的开发错误,直到现在才显现出来
v1.2.4-beta.5
2022-11-01 20:49:31 +08:00
e1732a364fed
c05f8b8b53 改进代码 2022-11-01 19:40:57 +08:00
e1732a364fed
ee4ddcdebe 修复一处ws握手前http验证时短读导致ws的earlydata功能可能出错 2022-11-01 19:30:42 +08:00
e1732a364fed
89c50fe4df 整理注释、文档、代码 2022-11-01 11:54:51 +08:00
e1732a364fed
52e829fa00 修订代码,注释;fix #158 2022-11-01 09:20:06 +08:00
e1732a364fed
1eb4568792 进一步试图解决grpc读firstpayload时提前关闭,关联#159 2022-10-31 21:34:40 +08:00
e1732a364fed
4e7a1504b4 试图解决 grpc读firstpayload时提前关闭,关联#159 2022-10-31 21:09:24 +08:00
e1732a364fed
59bab50e92 对上一个commit的补充 2022-10-31 19:34:15 +08:00
e1732a364fed
806cbfad82 修复一处socks5的udp代码中可能的空指针错误;关联 #157 2022-10-31 19:27:25 +08:00
e1732a364fed
0503cf89cb 令socks5收到不同地址的udp请求时仅warn而不阻断,关联#157 2022-10-31 19:05:20 +08:00
e1732a364fed
4267e196ed 监听uds时,自动设文件权限为666, closes #160 2022-10-31 18:31:20 +08:00