Xray让不同UUID的用户走不同的路由routing - inboundTag篇

需求

想问个需求。xray里怎么配置不同的uuid用户,走不同的routing?  防止朋友看Netflix影响小鸡ip解锁,给朋友uuid分流到warp,


参考


思路

对inbound设置tag

对outbound设置tag

routing中设置根据inboundTag的路由策略


实践

以你已经搭好了一个正常使用的梯子 为前提.


编辑你的Xray配置文件. 比如, 在这个位置 /usr/local/etc/xray/config.json

* 推荐使用Xftp, 直接用系统记事本编辑.

* 推荐用 notepad3 替换系统记事本. 对Linux环境下的LF换行比较友好.

https://www.appinn.com/notepad-replacer/


复制一份inbound给你的朋友使用

注意看inbound的结构, 是用一对 [] 包起来的一对 {}

我们要做的就是把中间的这一对 {} 复制一份, 接在原来的 那一对 {} 下面, 一起放在 inbound的这一对 [] 里面. 

而且因为JSON格式, 这两对 {} 之间要用逗号分开. 像下面这样:


然后给复制出来的inbound, 新设置一个UUID.

你可以通过v2rayN生成一个. 为了设置简便, 可以先复制一份节点信息.



还需要设置不同的 x25519 公私钥

在VPS命令行上执行
xray x25519
* 如果报错说不存在命令, 那么你需要指定xray执行文件的位置, 比如:
/usr/local/bin/xray x25519

把私钥设置到 config.json 配置文件, 把公钥设置到v2rayN节点信息. 


在VPS上确认一下文件是否修改正确了. 万一你在电脑上编辑的内容没有同步到VPS呢.
cat /usr/local/etc/xray/config.json
测试配置文件格式正确
/usr/local/bin/xray run -config /usr/local/etc/xray/config.json -test

* 如果你不是用官方脚本安装的, xray和配置文件的位置可能不一样.

重启Xray服务

service xray restart
在v2rayN中 Ctrl+R 测试新生成的节点, 确认可以正常使用.


设置inbound的tag

对不同的inbound, 设置不同的tag.

比如,

"tag": "in-2",


设置warp的outbound的tag

以socks代理的形式安装warp, 比如:

bash <(curl -fsSL git.io/warp.sh) s5

那么可以设置一个socks的outbound, 设置一个tag

{
    "protocol": "socks",
    "settings": {
        "servers": [{
            "address": "127.0.0.1",
            "port": 40000 //warp socks5 port
        }]
     },
    "tag": "socks5-warp"
},

整个outbound像这样的: 


针对不同的inbound的tag设置routing

找到config.json配置文件中的"routing", 再找到其下的"rules". 注意观察 "rules" 是一对 []. 我们在里面添加一对{} 如下:
{
     "type": "field",
     "inboundTag": ["in-2"],  // 这里写inbound的tag
     "outboundTag": "socks5-warp" // 这里写outbound的tag
},

这样就可以简单地把某个inbound进来的全部走warp出去了.

改完像这个样子



测试配置文件格式正确

/usr/local/bin/xray run -config /usr/local/etc/xray/config.json -test

* 如果你不是用官方脚本安装的, xray和配置文件的位置可能不一样.

重启Xray服务
service xray restart


测试

将v2rayN设置为全局, 使用不同的节点, 访问测IP的网站. 



评论

The Hot3 in Last 30 Days

无服务器 自建短链服务 Url-Shorten-Worker 完整的部署教程

ClouDNS .asia免费域名 托管到CloudFlare开CDN白嫖Websocket WS通道翻墙 / desec.io