1
PowerDi 2023-08-28 08:40:46 +08:00
直接开代理就行了吗
|
2
elechi 2023-08-28 09:05:50 +08:00
用 4G 咋办?
|
3
pagxir OP @elechi 我现在办法是,挂代理( ss/ray 等),然后在代理中 hook DNS ,将 mtalk.google.com 解析到国内的 VPS/挂机宝,然后在那个挂机宝/VPS 上作中转( UDP/udp2raw )处理。也就是 mtalk.google.com 既不走代理也不走直连,而是单独中转。
|
4
pagxir OP @PowerDi 可能 TCP 承载的代理不会很稳定,可以在路由器上用 gost 走 quic/kcp 类的承载转发一下。如果确认 TCP 承载是稳定的直接走代理也可以。
|
5
ParanoidAndroid 163 天前
@pagxir 你好,请教一下这里为什么是做 UDP 中转呢?使用 Haproxy 来转发 TCP:5228 的流量可以吗?
|
6
pagxir OP 这个问题的原因是一是某些 ISP 的 NAT 时间过短,二是 gcm 服务器位于海外收众所周知的干扰。要解决这两问题即可以,NAT 问题可以用不需要 nat 的 ipv6 来解决(不过国内大部分的 ISP 提供 DNS 没有提供 ipv6 接入/不是 ipv6 优先,所以不会解释 mtalk.google.com 到 AAAA 记录,所以需要改用 8.8.8.8 的或者手动设置 mtalk.google.com 的 AAAA 记录), 而这里建议用 UDP 原因是没有 TCP RST 的干扰,并且可以自动重新而 tunnel 不断。自己可以根据自己情况测试,用 haproxy 进行 v4 转 v6 应该也是可行的。我后来试过,路由器上用 socat 并且将 keepalive 设置成 120 秒,实际上也是可以的,也就是我的宽带的 nat 时间过短(毕竟是移动的宽带)
|
7
pagxir OP @ParanoidAndroid #5 国内有 ipv6 的话可以将 mtalk.google.com 绑定到 2404:6800:4008:c06::bc
|
8
ParanoidAndroid 162 天前
@pagxir 也就是说远端的 mtalk.google.com:5228 可以通过 quic 与中转服务器交互数据,之后中转服务器再通过 TCP 返回给手机客户端吗?新手刚接触这里,理解可能不到位,请见谅😂
|
10
laod911 36 天前
@pagxir 断开的原因我估计是因为在 nat 下没法保持 tcp 长连接吧,这样做端口转发的话 手机→vps 的连接不还是 tcp 连接吗,怎么能保持长连接呢,不太懂,望大佬教教
|
11
pagxir OP ipv6 没有 nat ,理论上不需要改动,但是毕竟经过了 GFW ,所以可能受到干扰。至于 ipv4 ,某些网络的 nat 会话保持时间比较短,比如只有 2 分钟,所以通过 tcp 转发并且在路由器上打开 keepalive 可以让 nat 会话刷新,避免失效。当然了,这时候刷新 nat 会话一部分从手机转移到路由器,耗电也只是从手机转到路由器,不过一般路由器直接插电,所以问题不大。
@laod911 |