RPRX 谈 Xray-core 依赖策略:非必要不引入外部库,便于他人 fork 定制,许可证永远是 MPL
摘要:在 Xray-core PR #7130(TUN 入站改用内置轻量 TCP/IP 栈替换 gVisor)的讨论中说明:以 TUN 把一部分数据直穿到 WG、MASQUE 出站为例,可能需要往解析 TCP/IP 的代码里插点东西;认为 Xray-core 这种非必要就不引入外部库的开发模式更好,别人想 fork 搞定制的话也少些麻烦,许可证永远是 MPL 不会改。
摘要:在 Xray-core PR #7130(TUN 入站改用内置轻量 TCP/IP 栈替换 gVisor)的讨论中说明:以 TUN 把一部分数据直穿到 WG、MASQUE 出站为例,可能需要往解析 TCP/IP 的代码里插点东西;认为 Xray-core 这种非必要就不引入外部库的开发模式更好,别人想 fork 搞定制的话也少些麻烦,许可证永远是 MPL 不会改。
摘要:在 Xray-core PR #7130 关于是否引入外部 TCP/IP 库的讨论中,Fangliding 回应 RPRX:ss2022 的问题不就只有许可证么;同样都是动不了的外部库,gvisor 不是好好的,以及所有 gomod;之前 ss 超时那些问题本质是 sing-bridge 模块的 bug,而不是 sing ss 这个库本身有多大问题。
摘要:在 Xray-core PR #7103(xdns 增加 DoT/DoH 支持)的讨论中提出:TLS、ECH、DoH 暂不支持 h3 分享就有点尴尬了,要不 core 内所有能写 `https://` 的地方都能写 `http3://`?以及 Xray-core 内的 h3 都得支持 `quicParams`,这些都加起来好麻烦,得想想怎么设计了,或许以后往 `tlsSettings` 里塞一份。
摘要:在 Clashoo 体积讨论中回应「内核与规则改在线获取/不打包」的建议:认为这个讨论意义不大——初始化安装占用硬盘小,要启动一样要占用;去掉内核、规则等无法做到开箱即用,而且拉取需要访问 GitHub,很大概率就是开箱不能用。原文以折叠沙发作比:第一次使用还是要打开,而且以后一直是打开、折叠不了,那要第一次的折叠干嘛。
摘要:在 openwrt-honk「初始化配置失败」issue 中说明:Doona 不需要单独安装,初始化并启动 Honk 后可从首页打开;截图中的 unknown 是版本显示问题,下一版本修,但不影响使用;初始化失败仍需安装输出和系统检查结果才能定位,建议用一键脚本重新安装最新版本。
摘要:在 openwrt-clashoo PR #69(ucode mkdtemp 兼容与 proxy-providers 自动复制)中提出两处需调整:空的 proxy-providers: {} 会生成缺少必要参数的配置;复制订阅时也会覆盖模板中其他 provider,以及各代理组原有的 use 列表。并给出本轮范围决定:这次只保留 mkdtemp 回退和订阅自动复制,模板下拉过滤另开 PR,同步最新 main 后再看。
摘要:Fangliding 在 issue #7131(把 Xray-core 的 uTLS 依赖从 Chrome 133 指纹升级到 Chrome 155)中表示:uTLS 并没有 release(如果 release 了会自动更新);并且 155 这个版本非常新,立刻迁移也不全是好事。
摘要:Fangliding 在 PR #7130(TUN 入站改用内置 TCP/IP 栈替代 gVisor)中向 RPRX 建议:可以考虑直接使用 MetaCubeX/mipstack,理由是同类翻墙软件已经踩过各种坑,其许可证为 MPL 2.0,也方便一并替换 wireguard 和 masque 等依赖,这样才能去掉 gVisor 依赖。
摘要:Fangliding 在 PR #7124(Finalmask noise 的 Lua 脚本)关于 script 配置与热重载的讨论中表示:传文本就不重载;证书和 geofile 属于无人值守更新,一更新就希望立刻生效,与文本配置不同,别到时候又只能加个 fswatch 进来。
摘要(节选):在 openwrt-honk 一键安装脚本「无反应」的问题讨论中,维护者回复已修复,脚本共 3 处改动:① release 获取改用 `/releases?per_page=1`——此前使用 `/releases/latest`,当仓库所有 release 都是 pre-release 时会返回 404,脚本拿不到任何包并静默退出,表现就是无反应;② luci 资产优先匹配本机架构——此前会抓到其它架构的 noarch apk;③ curl 增加 `--connect-tim…
摘要(节选):在 Clashoo 体积过大的功能建议讨论中,维护者解释 clashoo 的 20MB 就是 mihomo 内核本体(Go 编译的代理引擎,带 gVisor 网络栈)。报告者提议把规则文件改为在线获取,维护者指出这只涉及仓库里打包的 ruleset/nftables 文件、总共约 953 KB(cn.mrs 528K + geolocation-!cn.srs 166K + geoip_cn.nft 115K + geoip6_cn.nft 68K + cn-ip.srs 3…
摘要:针对「增加 naiveproxy」的功能请求,tokenpls 说明 Clash 内核跟上游 mihomo 走:上游目前没有 naiveproxy(入站、出站都没有),项目不单独添加;上游哪天加了,会跟着同步。
摘要:alireza0 回复「订阅流量重置后用户状态没有变回已启用」:周期性重置其实已经重新启用了客户端,但这次重置没有被记为一次变更,面板因此不刷新,一直显示为已禁用,直到手动刷新页面。已修复:重置会被记录,面板会自行更新,将在下个版本包含。关于报告者提出的「用完流量后限制而不是禁用」建议,作者说明用尽流量的客户端会被禁用以便内核停止为其服务,下一次重置会重新启用,结果相同。
摘要:liandu2024 说明该修复已随 v0.1.309 发布:当 SOCKS5 服务端返回 0.0.0.0,或云主机网卡上只有内网地址而返回了内网地址时,现在会改用服务器地址发送 UDP;路由器和客户端 0.1.309 都是这样。作者同时提醒,3x-ui「IP」填 127.0.0.1 的情况仍需按前述说明改成落地 VPS 的公网 IP。
摘要:在 Xray-docs-next 的 MASQUE 文档 PR #908 讨论中,RPRX 要求补上提交 aa7aa9ad(TLS 客户端默认使用内置 RootCAs)的行为说明后合并该 PR,并表示 TUN 的两个文档 PR 也该合并。
摘要:在 Xray-core issue #7115 关于 (x)mux 连接稳定性的讨论中,Fangliding 对「引入 ACK 机制」的提议提出反对:为部分网络一分钟断一条连接的情况引入上千行、涉及各种状态的 ACK 状态管理并不值得;TCP 已费大力气把这些问题抽象掉,再引入进来不划算;HTTP/2 也没有做这类机制,仅处理队头阻塞的 window update 就已带来很大麻烦。
摘要(节选):liandu2024 回复「链式代理 UDP 不通」:已在测试路由器上复现。原因是落地 SOCKS5 回给客户端的 UDP 中继地址——3x-ui 的 socks 入站开启 UDP 后,客户端发 UDP 前要先询问「UDP 发到哪个地址」,它返回的是入站里「IP」这一项,3x-ui 默认填 127.0.0.1。走链式代理时 UDP 经 VLESS 中转发往 127.0.0.1,而新版 Xray 默认拦掉发往本机/内网地址的流量,所以 TCP 通、UDP 不通;换机场节点当中转…
摘要:liandu2024 说明已随 v0.1.308 发布:节点组里选的「直连」「拒绝」现在会正常出现在组里,升级后生效;客户端 0.1.308 的本地分流也一并修好。
摘要:liandu2024 回复「每日 04:00 自动升级时 database is locked 导致内核未启动、代理中断近 9 小时」:已随 v0.1.308 发布。升级后起内核时如果数据库正被面板占用,部署脚本会等锁(最长 60 秒)并重试,不再等 5 秒就退出;升级脚本遇到这种情况也会再试几次。起内核用的是新版本里的部署脚本,所以升到 v0.1.308 这一次就生效。
摘要:在 Xray-core issue #7115(让 warp.publicKey 可选)的讨论中,RPRX 表示配置层面仍要求 publicKey、这个没必要不填;删掉 pcs/vcn 就能改为靠 publicKey 来验证。
摘要:liandu2024 说明已随 v0.1.307 发布:添加/刷新订阅时,有问题的节点(比如 REALITY 公钥不对)会直接丢掉,并提示丢了哪几个、为什么;启动内核时如果还查出有问题的节点,会跳过它照常启动,同样会提示。客户端 0.1.307 也一样:本机刷新订阅时丢掉有问题的节点,连接时遇到内核不支持的节点会自动跳过。此前在「过滤节点」里为这个节点加的关键词,升级后删掉或留着都可以。
摘要:liandu2024 回复「APP 同步总是提示路由器上的配置没有变化」:已随 v0.1.307 发布,配置没有变化时提示改成「已是最新,和路由器上的配置一致」。App 里「设置 → 检查更新」即可升级,该 issue 先关闭。
摘要(节选):Max Lv 复核 meow-rs PR #745(稳定多路复用 WebSocket 连接):在 macOS 本地验证新增 ws_test、mux 库与 api_test 的 DNS 用例通过,fmt、三路 clippy、rustdoc 干净。他在原提交上追加了一个小提交 dc72528:为 ws.rs 的 16 KiB 单次 poll_write 上限与 64 KiB tungstenite 写缓冲上限命名并加 const 断言关联,更新过时的 ws_config() 文档…
摘要:liandu2024 确认报告者的定位:卡住的是面板随包 Node 运行库里的 DT_RELR(musl 1.2.4 才认),内核是静态的、不受影响。项目不打算为 musl 1.2.3 单独维护一份运行库,Open-Box 只支持 OpenWrt 24.10 及以上(musl 1.2.4 起)的固件;这台 QWRT 建议换成基于 OpenWrt 24.10 的版本再装。该 issue 已关闭。
摘要:RPRX 在 Xray-core issue #7115 中说明:看代码后确认 tlsConfig.VerifyPeerCertificate 一定不为 nil,所以要先判断 randCarrier 有没有 pcs 或 vcn,有的话就只按它们来验证。
摘要:RPRX 在「TLS 客户端默认使用 Xray-core 内置 RootCAs」的 PR #7105 中说明当前范围:只覆盖底层传输显式调用 TLS/uTLS(但不含 REALITY 的 spiderX),后续会改成覆盖 core 内所有 TLS 请求,并加环境变量开关。
摘要:在 Xray-core PR #7118(XHTTP:出站删除时释放缓存客户端)讨论中,yiguodev 回应维护者「core 当前重点不包含 outbound 动态增减」的意见:目前在给 libXray 增加运行时测速功能,这个不解决的话就只能放弃这个 feature 了。原文时间 2026-10-10T02:44:16Z。
摘要(节选):liandu2024 在 Open-Box issue #514(故障转移管理器四重放大缺陷报告)回复:四条缺陷与定时测速问题逐条对代码核实属实,另查出一个内核问题,修复已随 v0.1.305 发布(该版带新内核,升级后内核会重启一次)。修复项:1) 全局测速名额——故障转移/定时/手动测速共用面板一份名额,同一时刻最多 4 个请求在内核侧,按「复查→例行/手动→定时」三档排队,定时测速有活时至少保 1 个名额;2) 各组轮次各跑各的,部署/重启内核后错开几秒开始,读回正文纳…
摘要(节选):yiguodev 在 Xray-core PR #7118(XHTTP: Release cached clients on outbound removal,状态 closed、未合并)给出中文修改说明:反复新增、拨号和删除 XHTTP outbound 时,每个新建的流配置都会在全局拨号缓存中留下一个条目;即使额外调用 Handler.Close(),关联的缓存客户端也没有被释放。本次修改让节点删除同时关闭 handler 及其拥有的传输资源,包括独立下载配置和所有目标地…
摘要(节选):在 shtorm-7/sing-box-extended issue #158(AmneziaWG 3.0 在 TUN 包且 ContentPaddingAddition > 16 时于 RoutineEncryption 触发 panic)中,Leadaxe 说明其自有 sing-box 下游(sing-box-lx)移植 AWG 3.x 的处理方式,与提案补丁略有不同:①注入元素按实际上界预留 tailroom,而非固定的 MaxMessageSize —— 设置 con…