| 
							
							
								 hahahrfool | b31557df14 | 大范围修订代码,以试图防止内存逃逸到堆; | 2022-03-31 13:33:58 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 3fa75b181f | 修订代码,注释;修复小bug | 2022-03-30 19:54:16 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 6ef8bf57c1 | 添加quic和hy阻控; 若tls证书配置未指明,会在内存生成随机rsa证书 | 2022-03-30 14:33:14 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 4a1f05fd08 | 修复无法加载同文件夹下的配置文件和证书的问题 | 2022-03-26 15:23:04 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 3838c251ce | 修订代码,文档,注释,示例 | 2022-03-26 13:27:14 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 146f7cf926 | 修复大量与websocket和回落相关的bug; 修复 websocket时无回落的问题
修复 websocket不匹配时直接返回内部错误字符串导致 可探测 的超级bug
修复回落不匹配问题
修复websocket时readv闪退问题
修复 命令行 loglevel参数被配置文件覆盖问题
修复获取tls 的 alpn和 sni时遇到空指针闪退问题
将默认fallback地址的赋值放到通用代码中;
移除 ErrSingleFallback, 改用utils.ErrFirstBuffer
使ws的server可以返回 预设的path | 2022-03-24 13:42:34 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 8c6ed6377d | 修订代码;将addr的赋值从各个proxy自己的方法中提出来 | 2022-03-23 18:54:38 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | c9cf683a58 | 将common包改名为utils, 因为common太长了 | 2022-03-17 08:11:56 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | e664b9740e | feat:添加回落和分流功能. 创建新子包netLayer, 将 proxy.Addr改为 netLayer.Addr
修订文档
RoutePolicy等分流机制也放到 netLayer
引入github.com/oschwald/maxminddb-golang 依赖,支持使用 GeoLite2-Country.mmdb 来进行ip分流
另外注意它默认的版本对于 golang.org/x/sys 包的依赖太老了,会导致go1.18中编译不通过,我在
go.mod 文件中新增了下面代码,就能通过编译了
```
require (
	golang.org/x/sys v0.0.0-20220315194320-039c03cc5b86 // indirect
)
```
verysimple的可执行文件的相同目录下,必须有该mmdb文件才能够开启ip分流功能
新配置方式:配置文件新加一行 "route":{ "mycountry":"CN" }
mycountry指定的国家的ip会被直连发送,其他地址ip会被发送到代理.
新配置方式,回落,直接在 local 项的 url 的 query部分添加 fallback=:80, 或者 fallback=127.0.0.1:80
即可 回落到指定端口.
将tls_test重新挪动到tlsLayer包中
在main.go中添加了 logLevel变量,并且把关于配置文件的部分挪动到 config.go
出了上面的分流和回落以外,还新增支持了 #xxx 的尾缀,用于配置该url的tag. tag在未来会被用于精准分流
Makefile中新增了 PACK 参数用于编译出 打包版的发行包;可选 tag=embed_geoip 参数用于将mmdb.tgz文件内置到可执行程序里
同时,我开始直接使用go1.18编译本项目,期待性能提升,因为这是新发布的版本,看了介绍据说对 mac m1有20%的提升. | 2022-03-16 19:28:26 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | a72db91512 | 实现lazy_secure代码,仍未完成,更新文档注释;测速 此时的 lazy_secure 代码会导致下面问题,不知原因。
tlsLayer: tls握手失败 : remote error: tls: unknown certificate authority
同时,我进行了测速, 发现lazy特性的速度确实能达到近似直连的速度,
但是同时发现了bug,在测速上传速度时,verysimple的服务端程序会出bug导致闪退,
进而导致上传速度测不到或者测到很低的上传速度。
这个bug在普通日常使用、看视频时是遇不到的,所以我也是首次接触这个bug。
bug内容显示slice问题,似乎是短时间流量过大导致缓存爆掉。 | 2022-03-13 21:57:06 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 2b235d4d5a | 修订文档注释;将自签证书更换为ecc证书; 在代码中,新增了 tls lazy secure 的部分,但还未完成全部代码 | 2022-03-13 16:42:25 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | e558ba21cf | 初步实现 tls lazy encrypt 功能 (splice) | 2022-03-11 14:06:55 +08:00 |  | 
			
				
					| 
							
							
								 hahahrfool | 009162cf40 | first | 2022-03-09 21:27:13 +08:00 |  |