0%

彩虹六号语音问题解决方案

前言

彩虹六号(Tom Clancy’s Rainbow Six Siege)使用 Vivox 提供的语音聊天服务。由于部分机场使用 Xray/V2Ray 时,需要禁止 BT 或网络审计,在 inbound 开启了 sniffing,导致语音聊天服务器无法连接。
通过在 virustotal 的查询,以及在 AbuseIPDB 的查询,并凭借已知的彩虹六号语音服务器域名 rbspsxp.www.vivox.com (来源:XTLS/Xray-core#250)以及 rbswp.www.vivox.com (来源:steamcommunity: Voice chat not working?),我们可以推测出彩虹六号的语音服务器域名应该以“rbs”开头,可能意为“rainbow six”,并得到以下域名/IP对:

1
2
3
4
5
6
7
8
9
10
rbsxbxp-mim.vivox.com	    74.201.106.190
rbsxbxp.www.vivox.com 74.201.106.189
rbsxbxp-ws.vivox.com 74.201.106.215
rbspsxp.www.vivox.com 74.201.106.175
rbspsxp-mim.vivox.com 74.201.106.174
rbspsxp-ws.vivox.com 74.201.106.245
rbswxp.www.vivox.com 74.201.106.173
rbswxp-mim.vivox.com 74.201.106.172
disp-rbspsp-5-1.vivox.com 70.42.196.186
disp-rbsxbp-5-1.vivox.com 70.42.196.185

并且通过 nslookup 发现以下域名无解析:

1
2
3
4
5
6
7
8
9
proxy.rbsxbp.vivox.com
proxy.rbspsp.vivox.com
proxy.rbswp.vivox.com
rbswp.vivox.com
rbsxbp.vivox.com
rbspsp.vivox.com
rbspsp.www.vivox.com
rbswp.www.vivox.com
rbsxbp.www.vivox.com

所以我们可以大致推测出彩虹六号使用的 Vivox 服务器 IP 段为 74.201.106.0/24。并且根据 XTLS/Xray-core#250 中的日志,不难发现语音使用的是 443 端口,亦即 TLS 流量,因此无法避免被服务端 sniffing 到。因此诞生了以下三种解决方案。

方案0

等 Xray/V2Ray 修复 sniffing 的 bug。

方案1 (未验证有效性)

让机场主在节点 inbound 的 sniffing 添加 "domainsExcluded"。如下:

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
"sniffing": {
"enabled": true,
"destOverride": ["http", "tls"],
"domainsExcluded": [
"rbsxbxp-mim.vivox.com",
"rbsxbxp.www.vivox.com",
"rbsxbxp-ws.vivox.com",
"rbspsxp.www.vivox.com",
"rbspsxp-mim.vivox.com",
"rbspsxp-ws.vivox.com",
"rbswxp.www.vivox.com",
"rbswxp-mim.vivox.com",
"disp-rbspsp-5-1.vivox.com",
"disp-rbsxbp-5-1.vivox.com",
"proxy.rbsxbp.vivox.com",
"proxy.rbspsp.vivox.com",
"proxy.rbswp.vivox.com",
"rbswp.vivox.com",
"rbsxbp.vivox.com",
"rbspsp.vivox.com",
"rbspsp.www.vivox.com",
"rbswp.www.vivox.com",
"rbsxbp.www.vivox.com",
"rbsxbxp.vivox.com",
"rbspsxp.vivox.com",
"rbswxp.vivox.com"
]
}

方案2 (已验证有效)

如果使用 Netch 作为加速器,选择 [TUNTAP] Bypass LAN and Vivox 作为规则,该规则会不代理语音服务,如果使用该规则后你依然不可以连接语音服务器,请继续。
在路由器上搭建透明代理服务,将 74.201.106.0/24 加入代理 IP 段。节点使用其他机场/自建的节点(确保本地配置与落地节点均未开启 sniffing 选项)。这样可以使游戏流量走 Netch 中的节点,语音流量走路由器的节点。(当然如果你有能力折腾 clash 也行,直接分流一步到位,不使用 Netch。但 clash 的 vmess 并不支持 NAT1,你可以局域网搭建 Xray 服务,开放 socks 端口,在 clash 中让游戏流量走这个 socks 服务器以达到 NAT1。注意:如果你选择本地搭建 Xray 服务,以及在你玩游戏的电脑上使用 Xray,请务必在 clash 的规则中让节点的域名及 IP 以及 DNS 的 域名和 IP 使用 DIRECT 规则,否则会构成回环)。

以下是测试效果:

1
2
Host                DL      UL      DL Speed    UL Speed    Chains              Rule    Time        Source              Destination IP  Type
74.201.106.174:443 25.2 KB 7.09 KB 0 B/s 0 B/s MATCH / US / vless Match 3 minutes 192.168.0.166:11015 74.201.106.174 Redir(tcp)