~/fliaping
AI之遥

不用买4000块Mac Mini 寄到美国,用本地设备实现Claude不封号的环境

为了给 Claude 准备一个独立的使用环境,要不要专门买一台 Mac mini?

我这次选择复用现有设备。

用 Docker 跑一个 KDE 桌面,把浏览器、Claude Code 和工作目录放进去,再接上 DMIT VPS 和 Webshare 美国家宽出口。

最后得到的是一个有独立桌面、明确网络出口、可以持续保存工作数据的开发空间。

新增硬件成本接近 0。已有的服务器继续用,不需要再买一台专用电脑。DMIT、家宽代理和 Claude 订阅本身仍有费用。

下面按搭建顺序,讲讲我是怎么做的。

复用现有设备搭建 Claude 开发环境:KDE、Docker、网络出口与 iPad 订阅

① 用容器提供桌面,不再单独准备一台电脑

我的实例叫 claude-box,里面运行 KDE 桌面。

打开桌面,就能使用浏览器、终端和开发工具。工作目录做持久化,重启容器后继续使用。

KDE 桌面中的 Claude 应用及 iOS App 订阅状态

KDE 桌面中运行的 Claude 应用,订阅页显示已通过 iOS App 订阅。

这一步解决的是“在哪里工作”:把 Claude 的使用环境集中起来,日常登录、开发和配置都有一个固定入口。

部署顺序是:先启动桌面并持久化数据,再配置网络网关、检查出口,最后登录账号。

这套方案主要适合浏览器和 Claude Code。需要 macOS 或专用虚拟化能力的应用,得另外评估。

② 用 DMIT 中转,Webshare 提供美国住宅出口

网络结构可以简化成:

1
2
3
4
5
6
7
8
9
KDE 桌面 / Claude Code
↓
TUN 网关
↓
DMIT VPS
↓
Webshare 美国家宽出口
↓
Claude

DMIT 和 Webshare 分别负责不同环节:一个用于中转,一个提供最终出口。

我关注的重点是,容器里的访问是否真正经过预期链路,以及连接出问题时能不能及时发现。

③ 配置 TUN,还要验收断网保护

仅仅能打开 Claude,还不足以说明配置完成。

我给这套环境定的验收目标是:正常情况下,Claude 相关访问经过预期出口;上游代理断开后,受保护的访问停止,不自动退回宿主机直连。

检查时按这个顺序做:

  • 在终端查询公网出口。
  • 在桌面浏览器查询公网出口。
  • 检查 DNS、IPv6 等是否出现意外出口。
  • 中断上游代理,再尝试联网。
  • 恢复代理,检查连接是否恢复。

其中,中断代理的测试很有必要。它能帮助确认,配置有没有在故障时失效。

我的最终 SOCKS5 落地不支持 UDP,所以处理原则也很明确:普通 UDP 阻断,DNS 由网关单独处理,不为了让请求成功而放行直连。

④ 时区自动识别,不写死某个美国城市

我没有把时区固定成某一个地址。

配置思路是:启动时先等待网络就绪,再通过最终出口识别时区;结果有效就应用,识别失败就使用 UTC。

以后换出口,也能减少手动调整配置的麻烦。

查询需要经过目标出口,返回的时区名称也要校验。系统时钟是否准确,另外检查。

时区只是环境配置的一部分。我没有证据认为,改成某个时区就能保证账号安全。

⑤ “纯净环境”,我更看重独立、可控和可检查

我想要的不是一个漂亮的“检测通过”截图,而是能回答几个具体问题:

  • 现在通过哪个出口访问?
  • DNS 有没有走预期路径?
  • 浏览器和终端的结果是否一致?
  • 代理断开后,会不会出现意外直连?
  • 工作空间里有没有暴露不必要的凭据和宿主机资源?

这些问题有了明确答案,后续出现连接异常,也更容易排查。

这仍然是一个容器开发环境,不代表 Docker 特征消失,更不能据此承诺不会触发平台风控。

⑥ 环境搭好了,最后却卡在付款

我这个 Claude 账号注册快一年了,一直免费,这次才准备第一次订阅。

付款尝试了:

  • Google Pay+招商 Visa 全币种。
  • 汇丰香港。
  • 众安香港。

这次都没有成功。具体原因没有查明,所以这里只记录自己的结果。

最后换了一条路径:

购买苹果美区礼品卡 → 充值自己的美区 Apple 账号 → iPad 下载 Claude → 登录原来的 Claude 账号 → App 内订阅。

这次成功了。

付款是在 iPad 上完成的,日常开发继续使用准备好的工作空间。

整套折腾下来,对我最有价值的是:复用了现有设备,基本没有新增硬件投入,就把桌面、网络出口和开发环境集中管理起来了。

如果手里已经有闲置服务器、NAS 或其他能运行容器的设备,可以先评估这条路线,再决定是否需要购买专用电脑。