Skip to content
This repository has been archived by the owner on Mar 17, 2024. It is now read-only.

v1.2.4 (交互模式有nil bug)

Compare
Choose a tag to compare
@e1732a364fed e1732a364fed released this 04 Dec 18:13
· 303 commits to main since this release

新功能

协议

支持了shadowsocks aead,包括tcp和udp,实测可用 (后发现udp有问题,在1.2.5-beta.2以及以后版本修复了)。运行 examples/ss.client.toml 和 examples/ss.server.toml 试一下吧!

添加 reject 作为listen
以前的版本我们只是仿照v2ray 的 blackhole 这个 outbound 制作了 对应的 reject的 dial。但是后来发现 reject也可以 作为 最终 fallback回落,所以 也添加为 listen协议。

新增 reject.server.toml 示例文件 供你参考。

url格式

全新定义url格式, 在
https://github.com/e1732a364fed/v2ray_simple/tree/main/docs/url.md

新的url格式完美支持了adv高级层,以及各种extra配置,已经十分可用了

新格式有一些优点,比如

  1. path直接就放在url的path中,不用另外加一个 path=xxx的 参数了;
  2. ss/socks5的用户名和密码也不用单独填写,而是直接遵循 url的rfc定义,用冒号隔开放在 @的前方;
  3. 采用点号表示法 来描述 header以及extra的内容,十分规整

更强大的交互模式

交互模式现在支持了自动保存用户偏好 (放在 .verysimple_preference中),也可以用 -dp 参数关闭该特性

交互模式现在可以 自动把常用项排序到最顶端.

支持热加载URL、支持将当前配置导出为各种第三方格式/url

支持如下格式

vs标准url
xray分享链接标准提案 (#716)
shadowsocks uri (SIP002)
v2rayN分享链接 (vmess://base64)
Quantumult X (圈叉的配置的 [server_local] 部分)
Clash (yaml配置中 proxies 部分)

dual 网络类型

新增了 "dual" 网络类型,可以填到 network中

在direct, socks5 和 shadowsocks这三个协议,都是可以设置网络类型为dual,表示同时支持tcp和udp,这也是默认的行为;

如果只设为tcp,则协议的 udp功能会被关闭

sendThrough 配置支持双协议

原来sendThrough只能配置一个地址,现在因为支持了dual网络类型,你可以这么填写 "tcp:1.1.1.1:80\nudp:2.2.2.2:8000" 表示 tcp用 前一个地址发,udp用后一个地址发

api server

api server添加热删除功能
举例:/api/hotDelete?listen=1&dial=2 删除第2个listen和第三个dial,具体第几个是啥用 /api/allstate 查

api server 添加 热加载url功能; 举例: /api/hotLoadUrl?listen=vlesss://sdfdfadfss@0.0.0.0:443&dial=...
除了把参数放在query里,也可以放在http的form里提交。

添加sa参数,配置api server的监听地址;

允许api server 在不设置密码时运行

杂项

命令行参数

添加ds命令行参数,可以强制关闭splice

添加-dt, -geosite命令行参数, 以及相关的toml配置中的app配置
添加path参数,可指定文件搜索路径,如 -path /etc/verysimple_files

-dt可调节拨号超时秒数,app配置:dial_timeout
-geosite:app配置:geosite_folder
-geoip: app配置:geoip_file

配置文件

添加 encrypt_algo 配置, 现在vmess/ss 的加密选项不需要再在 extra里填写了,toml配置直接 encrypt_algo = "aes-128-gcm" 即可

添加sendThrough配置,配置为 sendThrough = "63.77.15.11:0"

功能增强

令http层支持回落

为grpc和ws添加解析X-Forwarded-For 功能

在Request的Info输出中添加fallback信息

监听uds时,自动设文件权限为666, #160

其它

升级到go1.19

设置 fullcone的超时。默认 fullcone时会有30分钟的超时时间。这回应该不会出现 too many open files 问题了。(该 超时时长暂时不可通过配置文件配置,因为还不确定是否有bug,先测试一下)

令tproxy的fullcone可配置,默认fullcone关闭. 旧版本的 tproxy的fullcone是无法调节的,现在可调节了。

tproxy 现在也可以被热加载、删除了

bug fix

修复 reject 的 nginx 类型 的 多个错误

修复tproxy代码中的 一些缺陷

令grpcSimple返回正确的h2c 拒绝响应
修复vmess的prng使用math/rand的漏洞,关联 #161

修正nginx响应的行为

fix #113 , 使用smux时会出现无法加载的情况
fix #115
fix #132, 修复panic的bug
fix #142,修复tproxy无法路由的bug
fix #144, 令拨号时使用sockopt
fix #118, 修复无法传输ipv6 的bug
fix #154,使用proxyProtocol时闪退的bug;
fix #151 bug
fix #166, vmess 在 ws + earlydata时 会导致连不上
fix #158, lazy = true 時,fallback 無回應
fix #159 , 使用nginx+grpc做服务时,配合有的客户端读取firstpayload超时的话会导致连接被关闭
fix #157 , 某些客户端与与vs之间的socks UDP连接不正常