1
phpc 5 天前
v2rayNG 就是直接调用其他可执行文件的
|
![]() |
2
morpheuszero2023 5 天前
开源社区的东西有个问题,就是开发者偶尔会在新版本中修改 API ,或者把配置文件的参数改了,导致原来能用的,更新之后就不能用了。
|
![]() |
3
xiaozecn 5 天前 via Android
@morpheuszero2023 就比如最近上游 GEO 规则更改了一个规则的名称,把 geosite:category-ai-chat-!cn 更名为 geosite:category-ai-!cn 。😂
|
![]() |
4
Kinnice 5 天前 via Android
因为你说的这些代理客户端都是针对某种内核开发的,对接的也是指定内核的 API 。 因为一个两个特殊的协议搞一个内核大杂烩,对接一堆 api/cmdline ,后台起五六个 core ,不值当也没必要。
|
![]() |
5
Kinnice 5 天前 via Android
@morpheuszero2023 可以自己 fork 或者锁版本不更新,不能既要又要吧
|
![]() |
6
Kinnice 5 天前 via Android ![]() 还有就是协议是协议,内核是内核,客户端是客户端,不是一个东西。协议是规范不是实体,内核实现了协议,客户端调用内核。
|
7
tuki 5 天前 via Android
这些软件的作者之间有矛盾,所以不太可能集成对方的软件。而且这些软件的开源协议也不一样
|
![]() |
8
ostrichb 5 天前
其他的不清楚,但貌似 iOS 的 App 不能集成現有的執行檔,必須自己把協定進行實作(如果說法有誤歡迎糾正)
|
9
w568w 5 天前 ![]() > 为什么不直接把这些协议对应的可执行文件打包到项目里面
你说的大概是指调库,不是调可执行文件。 有几个原因: 1. 各个协议实现的抽象等级不一样,很难统一接口。A 协议开发者发布的库打包了 dns 解析器,B 协议不支持自定义 DNS ,C 协议依赖系统的 TLS 、不支持自定义证书,D 协议完全解离了网络逻辑,要自己实现请求接口……你怎么办?打包在一起,小则行为不一致、令用户迷惑,大则功能完全不能用; 2. 增加调试成本。现在用户来报告 bug 时,你还得先搞明白到底是你写错了,还是引用的上游库有 bug 。就算不是你的问题,你还得重新向上游报告 bug 、等上游修复、集成新的版本……一套流程下来,用户早就不用了(如果 bug 影响到你自己,你估计也不想用了); 3. 小圈子政治,这个不仅仅是国内开发者,但国内确实更明显,代理软件这种开发难度高、用户群体大的更是如此。一群小白在一起跪舔一个(顶着二次元头像的)大佬开发者,甚至攻击其他代理软件、嘲笑其他协议,基本是国内一部分代理项目的常态。 |
10
Orzpls 4 天前 via Android
吐槽 R 主席又不是一天两天了,原因上面的基本都说了。Xray 总搞一些新名词,但其实是别人已经实现的东西,搞得像它自己发明的样,这样不好,其它还有比如代码问题,实现某些东西如屎山。SB 这帮人理念不同没法和他们一起玩。
|
11
lovestudykid 4 天前
@xiaozecn 这个完全不影响,分流自己实现,传输层直接调用官方实现就行了
|
12
shunia 4 天前
使用 mihomo 内核的就基本是你说的这种方式啊,大部分情况下只需要更新 mihomo 就可以了。
v2rayN 也是调用可执行文件的方式,安装目录里有各种不同协议的二进制文件。 singbox 是因为它搞自己的协议吧?所以想把其他协议都融合到自己的协议里,统一支持和管理。 clash meta 我记得好像也有自己的 meta 内核? |
13
MacsedProtoss 3 天前 via iPhone
@shunia 你错了 人家说的就是 为啥 mihomo 这类要自己实现 ssclient vmess vless 之类的….
|