v2rayN-3.29-VLESS 生成配置文件 Xray 链式代理 多 http 代理 inbound 多落地节点 outbound 一对一 隧道节点方便切换
之前 做了一个 Xray 加载多个 链式代理 配置文件 多 inbound 多 outbound 一对一方案, 要一个一个导出客户端配置文件, 还要修改 inbound 和 outbound 的 tag.
最终把多个配置文件放在同一个目录, 启动 xray 内核, 会合并所有配置文件的 inbound 和 outbound, 以及路由规则, 这样保证 inbound 和 outbound 一一对应.
整个过程还是有点麻烦的.
最近给 v2rayN-VLESS 开发 HY2 支持, 在处理 Reality 协议与 Hysteria2 协议节点并存 时, 走读代码的逻辑. 发现
如果多选了节点, 再用测速功能, 会先生成配置数据. 这个配置数据包含以下内容:
1. 在生成配置的时候, 会生成多个 http 代理的 inbound.
2. 将你选择的那些节点也生成 outbound.
3. 生成很多个 路由规则 把这些 http 代理的 inbound 和要测试的节点的 outbound 一一对应起来.
然后启动一个内核, 加载这个配置, 也就是包括了 上述这些 inbound, outbound, 路由规则.
然后再用这些 inbound 的 http 代理, 一个一个去访问测试 URL, 也就一一测试了 outbound 表示的节点.
那么我多想一步, 如果我们把这个配置数据用 json 文件保存出来. 自己另外用个裸内核加载跑起来, 不就是我们之前想达到的功能吗?
而且本来设置的下一跳 socks5 设置也保存, 方便你将一批落地节点套上隧道 加速.
在 GenerateClientSpeedtestConfigString 函数, 把生成的配置文本保存出来就行了.
在 v2rayN (1) 中添加隧道节点
在 v2rayN (2) 中添加全部落地节点
在 v2rayN (2) 中设置下一跳 Socks5 为 v2rayN (1) 的监听 Socks 端口
在 v2rayN (2) 中 全选节点, Ctrl + R 测试真连接延迟. 此时, 会生成 testconfig.json 配置文件
在 v2rayN (2) 目录中, 命令行启动内核, 加载 testconfig.json 配置文件
testconfig.json 配置文件为每个落地节点设置了一个 http 代理端口.
你自己要用指纹浏览器, 或是其它软件的, 设置 http 代理为对应的端口就好了.
在这个方案中, 单独有一个 v2rayN 管理隧道节点, 切换会很方便. 如果你用的是便宜的隧道方案的话, 有可能会更需要维护?
如果你要共享代理给局域网的同事使用, 在 testconfig.json 中查找替换, 把 "listen": "127.0.0.1" 的前面加上 // 注释掉.
操作演示视频
========
评论
发表评论