Commit Graph

27 Commits

Author SHA1 Message Date
e1732a364fed
c45045aa8a 添加tls_cipherSuites 配置和 tls_maxVersion 这两个extra配置 2022-12-09 15:44:15 +08:00
e1732a364fed
dd1926c49b 修订代码;tlsLayer 的配置参数统一到一个 Conf结构中 2022-12-09 09:26:43 +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
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
5fcaee22d1 定义dual类型的Network,用于direct,ss和socks5
这三种协议在实际传输时可能同时用到tcp和udp. 如果没给出Network值,
那么默认的Network应该为dual
2022-12-03 16:39:02 +08:00
e1732a364fed
2e5a33feb1 修订文档,示例,代码;解决http头层回落代码导致panic的bug;
添加 encrypt_algo 配置;

添加 configAdapter包
2022-11-30 22:40:26 +08:00
e1732a364fed
89c50fe4df 整理注释、文档、代码 2022-11-01 11:54:51 +08:00
e1732a364fed
a7257bec43 修订代码;添加"mix"网络类型,用于多重传输层的proxy:
如direct,shadowsocks,socks5等.
2022-09-23 11:17:25 +08:00
e1732a364fed
7b79887d50 修订注释;小优化。 2022-09-20 17:50:07 +08:00
e1732a364fed
55ea3c6a66 close #141, 支持sendThrough配置 2022-09-15 10:30:26 +08:00
e1732a364fed
cd8734a719 继续优化日志输出 和 注释 2022-09-14 10:22:01 +08:00
e1732a364fed
8fcf747479 fix #113 , 使用smux时会出现无法加载的情况
这是由两个问题造成的

问题1:

同时并发请求多个请求时,会出现同时建立两个mux的情况,导致先建立的mux被覆盖;

问题2:

一旦某个stream的连接失败后,代码 会关闭整个session。这是由于 iics无法分辨simplesocks和普通协议造成的。

加一个 isInner 标签即可分辨。
2022-05-22 22:29:02 +08:00
e1732a364fed
d29ed0857f 修订文档, fix #98, http和socks5在没配置多用户时会闪退 2022-05-16 08:37:37 +08:00
e1732a364fed
961bde8d6d 令所有proxy均支持fullcone配置.只有当listen和dial都为fullcone时,才真fullcone 2022-05-15 23:20:33 +08:00
e1732a364fed
d18bd71ff2 令tls配置支持minVersion: extra = { tls_minVersion = "1.2" } 2022-05-15 11:14:09 +08:00
e1732a364fed
049aa0bef8 fix #70 : unix时ws的path无法正确匹配 2022-05-09 20:56:47 +08:00
e1732a364fed
41d9358f51 修订文档, 代码 2022-05-09 20:19:00 +08:00
e1732a364fed
7d6b743058 修订代码,示例; 支持嗅探tls中的 sni,以便分流;转发日志添加id
修复tls sniff中padding 扩展的错误,

为 iics新增 baseid 成员,并在每一个日志输出 均附带 该id,便于追踪

该id固定为6位长度。且使用了pool来缓存zap.Field, 以及一系列 iics.CanLogErr 这种方法。
2022-05-09 15:08:48 +08:00
e1732a364fed
8db2856ed6 修订文档,代码, 修复 #46 问题;为sniffing 作准备 2022-05-09 00:44:08 +08:00
e1732a364fed
b07b12cd4c 修订代码 2022-05-08 09:25:39 +08:00
e1732a364fed
0aaf7608b1 令quic也支持客户端证书验证 2022-05-08 09:11:15 +08:00
e1732a364fed
5723c73297 修订代码,文档,示例;支持客户端证书和CA. 2022-05-08 08:30:59 +08:00
e1732a364fed
ef89beb653 修订代码;修复socks5的dial连不上的愚蠢bug 2022-05-06 21:36:37 +08:00
e1732a364fed
5d31ee4cfe 修订代码拼写 2022-05-06 17:26:20 +08:00
e1732a364fed
b7adea1c05 修订代码,cleanup调用Stop; Stop 也 Stop advLayer.Server; 2022-05-05 23:15:33 +08:00
e1732a364fed
5867bac0b2 修订代码,文档,Makefile,示例
修复 没给出 -c参数而给出了 -L 参数时,未能成功运行 的bug
使Makefile 支持 免参数编译 当前系统的 可执行文件。

Makefile的 BUILD_VERSION 这次 添加了 显示 build_on 系统 和 all_go_files_md5 的功能。

md5的打印只支持 linux/darwin,且因为 darwin的命令是 md5 而不是 md5sum,导致输出有差别,所以导致md5总和也有差别.
2022-05-05 14:09:12 +08:00
e1732a364fed
00c25b914f 重命名proxy的一些接口和接口方法 2022-05-05 08:28:23 +08:00