yanue / V2rayU

V2rayU,基于v2ray核心的mac版客户端,用于科学上网,使用swift编写,支持trojan,vmess,shadowsocks,socks5等服务协议,支持订阅, 支持二维码,剪贴板导入,手动配置,二维码分享等
https://github.com/yanue/V2rayU
18.68k stars 2.87k forks source link

xray-core最新版的配置文件,使用导入json配置模式,启动代理时,配置信息里一些不认识的元素会丢失(比如reality协议相关配置) #1246

Closed stxpons closed 1 year ago

stxpons commented 1 year ago

1) 你正在使用的 V2RayU 和 Mac 版本 ? V2RayU版本:v3.4.0-preview Mac版本:13.4.1【其实应该无所谓】

2) 你遇到的问题是什么?(请描述具体现象,比如访问超时,TLS 证书错误等) xray-core官方有新版本时,客户端的config.json配置文件,是可以有一些新元素的。 比如我手工替换了v2ray-core版本为最新的1.8.3版本,使用最新的reality协议,服务器配置使用“导入模式”手工编辑config.json文件【试过手工编辑粘贴json配置和文件导入等当时】, 但最终保存后时,启动该服务时(开启代理),outbounds的出站配置会被重新覆盖调整,如图所示:

outbounds元素差异

--> 题外话,目前个人解决方案: 手工修改 ~/.V2rayU/config.json 方式解决。甚至想过修改~/Library/Preferences/net.yanue.V2rayU.plist里的配置。想想还是没干:1是文件内容太多编辑麻烦;2是想了下可能的实现原理,下次编辑说不定还得覆盖我内容,估计是运行时拷贝到~/.V2rayU/config.json文件的。

stxpons commented 1 year ago

个人建议的实现方式,可供参考: 每个人的维护精力毕竟有限,但官方产品一直在迭代,导入json配置文件的模式,就没必要非得该软件认识的元素才保存【除非用户从json配置切换到图形界面去编辑保存了】。 直接原生的json配置文件保存应该就可以了。

stxpons commented 1 year ago

呦呦,刚还在看代码,里面好像支持reality了。然后就看到3.5.0发布了。。作者辛苦了!

stxpons commented 1 year ago

还是有问题,会把realitySettings里的publicKey和serverName给清没掉。

image
stxpons commented 1 year ago

临时搞定下 手工编辑~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist启动文件,调整了config参数。 重启yanue.v2rayu.v2ray-core: launchctl stop yanue.v2rayu.v2ray-core launchctl unload ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl load -wF ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl start yanue.v2rayu.v2ray-core

owiofwm2i commented 1 year ago

还是等作者更新吧,确实3.5有问题,感谢提供的方法,就是感觉自己去改麻烦了,而且话说REALITY不是xray 1.8支持的吗?现在3.5默认更新的xray还是1.7.5,应该也不支持吧

xyz3282836 commented 1 year ago

临时搞定下 手工编辑~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist启动文件,调整了config参数。 重启yanue.v2rayu.v2ray-core: launchctl stop yanue.v2rayu.v2ray-core launchctl unload ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl load -wF ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl start yanue.v2rayu.v2ray-core

@stxpons 请问需要怎么调整,plist文件就是个xml

stxpons commented 1 year ago

有一些专门的编辑软件的,我用的软件是PlistEdit pro,用软件打开这配置文件,里面有个ProgramArguments参数,我把里面的config.json换成我自己手工编辑好的文件了【要自己提前准备好配置文件。看代码里其实就是用launchctl命令执行这些玩意的。v2ray跟xray是一摸一样的,只是名字改了。xray-core下载最新的1.8.3版本】

image
stxpons commented 1 year ago

还是等作者更新吧,确实3.5有问题,感谢提供的方法,就是感觉自己去改麻烦了,而且话说REALITY不是xray 1.8支持的吗?现在3.5默认更新的xray还是1.7.5,应该也不支持吧

我是手工自己到官网下载最新的1.8.3版本【https://github.com/XTLS/Xray-core/releases】,然后全部替换掉 ~/.V2rayU/v2ray-core里的5个文件【v2ray文件直接复制自xray即可】

xyz3282836 commented 1 year ago

手工编辑~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist启动文件,调整了config参数。 重启yanue.v2rayu.v2ray-core: launchctl stop yanue.v2rayu.v2ray-core launchctl unload ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl load -wF ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl start yanue.v2rayu.v2ray-core

可以的,按照 手工编辑~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist启动文件,调整了config参数。 重启yanue.v2rayu.v2ray-core: launchctl stop yanue.v2rayu.v2ray-core launchctl unload ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl load -wF ~/Library/LaunchAgents/yanue.v2rayu.v2ray-core.plist launchctl start yanue.v2rayu.v2ray-core 以上的顺序执行下,这样就算覆盖config.json,实际使用的是plist新设置的文件,就不影响使用xray加载了;不过如果退出软件并重新开启,plist也会被覆盖原样

xyz3282836 commented 1 year ago

https://github.com/yanue/V2rayU/releases/tag/v3.6.0 fix it