反向
reverse 块用于搭建反向隧道跳点 —— 目的端的 Bridge 等待入口端 Portal 发起的控制连接,然后把用户流量通过已建立的隧道转发。
顶层
| 字段 | 类型 | 默认值 | 允许值 | 描述 |
|---|---|---|---|---|
bridges | []BridgeConfig | [] | Bridge | 反向代理隧道目的端的 Bridge 列表。 |
portals | []PortalConfig | [] | Portal | 反向代理隧道入口端的 Portal 列表。 |
源码: infra/conf/reverse.go:32-35 · 锚定版本 v26.6.1 (94ffd50)
Bridge
| 字段 | 类型 | 默认值 | 允许值 | 描述 |
|---|---|---|---|---|
tag | string | (required) | <tag> | 该 Bridge 的路由 tag。 |
domain | string | (required) | <domain> | 用于与另一端匹配 Portal 配对的共享域名。 |
源码: infra/conf/reverse.go:8-11 · 锚定版本 v26.6.1 (94ffd50)
Portal
| 字段 | 类型 | 默认值 | 允许值 | 描述 |
|---|---|---|---|---|
tag | string | (required) | <tag> | 该 Portal 的路由 tag。 |
domain | string | (required) | <domain> | 用于与匹配 Bridge 绑定的共享域名。 |
源码: infra/conf/reverse.go:20-23 · 锚定版本 v26.6.1 (94ffd50)
示意示例
json
// 目的端服务器(能访问内部目标的那台):
{
"reverse": {
"bridges": [{ "tag": "bridge", "domain": "tunnel.example.com" }]
},
"outbounds": [
{ "tag": "tunnel", "protocol": "freedom" }
]
}
// 入口端服务器(用户实际连接的那台):
{
"reverse": {
"portals": [{ "tag": "portal", "domain": "tunnel.example.com" }]
},
"outbounds": [
{ "tag": "portal-out", "protocol": "vless", "settings": { /* ... */ } }
]
}说明
- 一对 Bridge 与 Portal 的
domain必须逐字节完全一致。Xray 把它 作为内部的「会合名」使用 —— 永远不会经 DNS 解析。 - 反向隧道本质上是一对路由 tag;两端的路由规则决定哪些流量进入或 离开隧道。
源码: infra/conf/reverse.go:8-35 · v26.6.1 (94ffd50)
