Skip to content
BoWen Chai's Notes
Go back

遇到私有 Proxy 客户端的正确使用方法

Edit page

遇到私有 Proxy 客户端的正确使用方法

Table of Contents

Open Table of Contents

Intro

作为低等公民,在大陆上网是一个大难题,你要同时与下述内容同台竞技,拼不过就 G 的那种:

  1. GFW:我会污染 DNS,阻断你的 UDP/TCP,随机阻断 Full Encrypt Traffic,遇到不认识的 HTTPS 还会 AI 识别
  2. 运营商 A:我会丢你的 UDP 包;如果你想要连 B、C 家,我还会限制你的速度,封禁你的上传。
  3. 路由器:我会指定大陆 DNS。你想要解析某些地址?Sorry,给你一个 localhost 自己玩去吧。
  4. Proxy 提供商:因为 GFW 收紧了 IEPL/IPLC 政策,再加上根据订阅结果封禁,我的专线消耗殆尽。给你个 AI 写的、功能很少、性能很差的私有客户端自己玩吧。
  5. Xbox/Steam:我不小心的啊,识别到您不是大陆用户,用了海外 CDN,一天就把您的流量跑完了 ^~^
  6. Google:我用上了严苛的 IP 政策。如果你的 Google IP 跟 Gemini IP 不一致,对不起 ;)。如果我检测到您的 VPN 源站了,对不起,我要给你送中(HK)。Why? Because fuck you, that’s why.
  7. Duolingo/Anthropic:我将要检测你的设备时区、设备语言、SIM,等等一切可能 Trace 到你个人的信息。如果我们认为你是,Sorry,Fuck You。
  8. 海底大鲨鱼:这根线是什么,咬咬看。

这里你一个都干不过,只能躺着享受。但是,你的 Proxy 提供商没法让你那么爽,怎么办?我不想用他的私有客户端了:Bug 多、性能差、用户体验糟糕。

幸好,你的 Proxy 提供商提供了 SOCKS5 连接。那么,就把他们的客户端当作 Momo 的一个 Provider 好了。

大便客户端

私有💩(客户端)的问题:

还有什么问题没有解决

大便客户端之只有 GUI 控制,所以通过 Sunshine + Headless WLR 来控制

这个客户端没有可用的 Daemon,也没有正常的管理 API,连接与切换都只能点 GUI。但是 .B 是一台没有显示器的 Arch Linux 主机,所以我给它运行了一个持久的 Headless WLR Session,再通过 Sunshine 远程控制这个桌面。

主机启动以后,Headless WLR 创建虚拟输出,私有客户端和 Sunshine 一起运行。需要登录、换线路或者确认连接状态时,我才打开 Sunshine;关闭远程画面以后,桌面、私有客户端与 SOCKS5 Listener 仍然继续运行。

Sunshine 只对管理 LAN 开放,不暴露到公网。这样,这个只能靠 GUI 活着的大便客户端终于能够像一个普通后台 Provider 一样,被 OpenWrt 长期使用。

DNS 与路由一起优化

中国大陆域名由 geosite-cn 识别,使用大陆 DoH 返回真实地址,并直接访问;没有域名时,再用 geoip-cn 判断目标 IP。

其他 A/AAAA 查询返回 FakeIP。FakeIP 保存原始域名,连接与全球 DoH 一起进入 provider-socks。这样 DNS 和业务流量不会各走各的,Google、Gemini 等服务看到的出口也更稳定。

FakeIP Rule 要放在 Private IP Rule 前面,因为 IPv6 FakeIP 使用 ULA。缓存放在 /tmp,避免不断写 OpenWrt Flash。

Result

Pacman -Syu 速度从原本约 10 MB/s 恢复到了 100 MB/s+

大陆服务能够用更正经的 DNS 与 IP,有更好的 Local Recommendation.

虽然海外的 Google 还是送中,但这个优化就任重道远了。

Others

Sing-box 的 Tailscale Endpoint 也可以接入 Mullvad Exit Node,但我没有实际测试过,不构成任何建议。


Edit page
Share this post:

Previous Post
胶卷使用与曝光速查:2460、5207、Pro Image 100 与 Phoenix II
Next Post
Make Zig Avaliable in Jules Env