发布于 

使用中转服务器反代家庭宽带 IP(3x-ui / Xray Reverse)

# 反代家宽 IP(基于 3x-ui)

目标:中转机(VPS)对外提供入口,通过 Xray Reverse 把流量 “反向” 转到 落地机(家宽 IP)

# 0. 拓扑与名词(先对齐概念)

  • 中转机:对外暴露 VLESS+Reality;同时有一条 Shadowsocks “互联通道”(interconnection)
  • 落地机:通过 interconnection 主动连到中转机,并作为 bridge
  • Reverse 角色
    • portal :通常在 中转机
    • bridge :通常在 落地机
  • 你需要记住 4 个关键量: reverse tagreverse domainss 端口vless 用户名(user)

注意:文中示例仅讲配置思路;域名 / 密码等请用你自己的真实配置,避免把订阅信息写进博客。


# 1) 中转机:创建入口(VLESS + Reality)

  1. 添加入站(备注任意)
  2. 协议: vless
  3. 端口:优先 443 (不通再换)
  4. 安全: reality
  5. Dest1.1.1.1:443
  6. SNI:填一个 “看起来正常的域名”(建议随机主机名 + .com ),不要用真实邮箱; proxy 只是备注不影响协议本身
  7. 点击 get new cert ,然后添加保存

你最终要得到:一个对外可用的 VLESS Reality 入口(后续 portal 会挂到它上面)。


# 2) 中转机:创建互联通道(Shadowsocks)

  1. 添加入站(备注全英文,方便后面筛选)
  2. 协议: shadowsocks
  3. 加密: 2022-blake3-aes-128-gcm (3x-ui 里可能显示为 BLAKE3_AES_128_GCM
  4. 添加后:复制节点链接,并记录该节点的 端口(后面 interconnection 要用)

# 3) 落地机:配置 Xray Reverse(bridge)

  1. xray设定出站规则 :新增一个出站(用于 interconnection)
  2. 粘贴你的 SS 节点 JSON → 解析 → 保存
  3. xray设定反向 :新增反向
    • 类型: bridge
    • 记录: tagdomain后续中转机 portal 必须一致
    • interconnection :选择上一步新增的 SS 出站
    • 出站: direct
  4. 保存并重启 Xray

✅ 你现在应该手里有: reverse tag + reverse domain


# 4) 中转机:配置 Xray Reverse(portal)并绑路由

  1. 回到中转机:在 VLESS 入站里新增一个用户(用户名随意),记下该用户名(后面路由要填 user
  2. xray设定反向 :新增反向
    • 类型: portal
    • tag / domain :与落地机 bridge 的保持一致
    • interconnection :选择第 2 步 SS 入站对应的端口 / 项
    • 入站:选择第 1 步 VLESS 入站
  3. 路由规则:编辑刚刚添加的规则,把 user 填成你刚新增的用户名

# 5) 导出节点(给客户端用)

  1. 打开第 1 步创建的 VLESS 入站 → 编辑
  2. 一般会看到多个用户:
    • 第一个用户:中转机入口(中转机 IP)
    • 第二个用户:反代后的入口(落地机 / 家宽 IP 侧效果)
  3. 二维码 / 链接复制导入客户端即可

# 安卓 / 苹果(v2ray /v2box)示例

说明:以下用 jsonc (允许注释)。把占位符替换成你自己的值:

  • <SS_SERVER> <SS_PORT> <SS_PASSWORD>
  • <REVERSE_TAG> <REVERSE_DOMAIN>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
{
"inbounds": [
{
"tag": "api",
"listen": "127.0.0.1",
"port": 6666,
"protocol": "dokodemo-door",
"settings": { "address": "127.0.0.1" }
}
// ...你的其他 inbounds(如有)...
],
"outbounds": [
{
"tag": "direct",
"protocol": "freedom",
"settings": { "domainStrategy": "UseIP" }
},
{ "tag": "blocked", "protocol": "blackhole" },
{
"tag": "reverse-proxy",
"protocol": "shadowsocks",
"settings": {
// 修改为:中转机上的 SS 互联通道信息
"servers": [
{
"address": "<SS_SERVER>",
"port": <SS_PORT>,
"password": "<SS_PASSWORD>",
"method": "2022-blake3-aes-128-gcm",
"uot": true
}
]
},
"streamSettings": { "network": "tcp", "security": "none" }
}
],
"routing": {
"domainStrategy": "AsIs",
"rules": [
{ "type": "field", "outboundTag": "blocked", "ip": ["geoip:private"] },
{ "type": "field", "outboundTag": "blocked", "protocol": ["bittorrent"] },

// 命中 reverse 的流量走 SS(reverse-proxy)
{
"type": "field",
"outboundTag": "reverse-proxy",
"inboundTag": ["<REVERSE_TAG>"],
"domain": ["full:<REVERSE_DOMAIN>"]
},

// 其余来自该 reverse inbound 的流量直连
{
"type": "field",
"outboundTag": "direct",
"inboundTag": ["<REVERSE_TAG>"]
}
]
},
"reverse": {
"bridges": [
{
"tag": "<REVERSE_TAG>",
"domain": "<REVERSE_DOMAIN>"
}
]
}
}

客户端:设置 → 模式 → 进阶设置 → 仅代理(按你的使用习惯调整)