开通 claude code 指北(codex 同理)
# 开篇
为了防止 claude code/codex 检测出与大陆相关的信息,我购买了 iPhone 备用机、Mac Mini,并且将它们设置成:
- 语言为英文
- 美国时区(与科学上网 IP 的地区的时区相同)
- 不开通位置权限
- 只连科学上网的 WIFI
这虽然有过度谨慎的嫌疑,但“小心驶得万年船”嘛。
# 必备硬件
a. 银行卡
可以支付外币的 VISA/MasterCard 银行卡(信用卡、借记卡都可以),没有的话用招商银行 APP 就可以申请到。
b. 备用手机
我选择了用 iPhone,Android 手机同理(具体版本我没有研究)。claude 和 chatgpt 这两个 app 要求 iOS 最低版本是 iOS17.0,这需要 iPhone 至少是这些:
- iPhone XR
- iPhone XS, XS Max
- iPhone 11 及以上
- iPhone SE (第二代及之后)
我在某鱼上买了个 iPhone SE 2 代 64G 全原机¥500。
c. 开发机
我选择了使用 Mac Mini。
# 科学上网
按通常的说法,要使用住宅 IP。方法略。
# 备用机
如果没有单独的开发机,我估计使用 macOS 虚拟机也可以。推荐使用 VirtualBuddy 安装 macOS 虚拟机。
**注意!!!以下操作请在备用机(或虚拟机)中进行**。
# 电话卡
到[这里](https://gg3.simpanda.cc/products/Giffgaff)买一张 gg 卡,按这个[教程](https://gg3.simpanda.cc/blog/giffgaff)去激活。根据下面的保号教程可以用 20 年了。在 gg 的官网注册时,使用常用的 email 地址即可。
# 身份
到[这里](https://www.google.com/ai)用以下提示语生成一个身份,并保存下来。
````plaintext
请帮我生成一个 24 岁白人男子的姓名、通讯地址(使用免税州的)、出生日期、可以注册的 gmail 地址,注意:他的职业为程序员,通讯地址在 google map 中需要可以查到。
````
# 邮箱
到[这里](https://mail.google.com/)注册 gmail。
# appleid
在 iPhone 上登录 apple 账户,使用 gmail 创建 apple id。
# 礼品卡
使用礼品卡订阅的方式可以阻断 Claude 获取付款信息。
到[这里](https://www.apple.com/shop/buy-giftcard/giftcard)购买礼品卡,注意“Recipient Email Address”填上面注册的 gmail。
# 订阅
在 iPhone 上安装 Claude,使用 gmail 注册账号,然后订阅 Claude。
# 使用 Claude Code
在开发机上安装 claude-code,并且每次启动 claude code 前先检查是否连接了科学上网,我的做法是:
在 $PATH 路径中 “/opt/homebrew/bin” 前面的目录下(比如 ~/.local/bin),将以下 bash 脚本保存为 'claude' 文件,并 chmod +x 权限。注意修改其中的 IP 'x.x.x.x' 为你的科学上网 IP。
````shell
#!/bin/bash
check_ip() {
# Ensure a target IP was passed as an argument
if [[ -z "$1" ]]; then
echo "[Error] Please provide a target IP. Usage: check_ip <IP>" >&2
return 1
fi
local TARGET_IP="$1"
# Fetch public IP using ipconfig.sh with a 5-second timeout
local CURRENT_IP
CURRENT_IP=$(curl -s --max-time 5 https://ipconfig.sh | tr -d '[:space:]')
# Check if IP was successfully retrieved
if [[ -z "$CURRENT_IP" ]]; then
echo "[Error] Could not fetch public IP. Please check your connection!" >&2
return 1
fi
# Compare IPs
if [[ "$CURRENT_IP" == "$TARGET_IP" ]]; then
return 0
else
echo "[Alert] IP mismatch! Expected: $TARGET_IP. Launch denied." >&2
return 1
fi
}
# 包装后的 claude 启动命令
claude_start() {
# 直接使用 if 判断函数的执行状态码( 0 为真,非 0 为假)
if check_ip "x.x.x.x"; then
# 只有在 check_ip 成功(返回 0 )时,才会执行到这里
/opt/homebrew/bin/claude
return 0
else
# check_ip 失败(返回 1 )时,走这里
echo "[Error] Could not launch claude" >&2
return 1
fi
}
# 执行启动函数
claude_start
````
# 电话卡保号
参照这个[教程](https://gg3.simpanda.cc/blog/gapa) 每 6 个月内保号一次。
---
原文链接:[点击查看](https://www.v2ex.com/t/1229497)
为了防止 claude code/codex 检测出与大陆相关的信息,我购买了 iPhone 备用机、Mac Mini,并且将它们设置成:
- 语言为英文
- 美国时区(与科学上网 IP 的地区的时区相同)
- 不开通位置权限
- 只连科学上网的 WIFI
这虽然有过度谨慎的嫌疑,但“小心驶得万年船”嘛。
# 必备硬件
a. 银行卡
可以支付外币的 VISA/MasterCard 银行卡(信用卡、借记卡都可以),没有的话用招商银行 APP 就可以申请到。
b. 备用手机
我选择了用 iPhone,Android 手机同理(具体版本我没有研究)。claude 和 chatgpt 这两个 app 要求 iOS 最低版本是 iOS17.0,这需要 iPhone 至少是这些:
- iPhone XR
- iPhone XS, XS Max
- iPhone 11 及以上
- iPhone SE (第二代及之后)
我在某鱼上买了个 iPhone SE 2 代 64G 全原机¥500。
c. 开发机
我选择了使用 Mac Mini。
# 科学上网
按通常的说法,要使用住宅 IP。方法略。
# 备用机
如果没有单独的开发机,我估计使用 macOS 虚拟机也可以。推荐使用 VirtualBuddy 安装 macOS 虚拟机。
**注意!!!以下操作请在备用机(或虚拟机)中进行**。
# 电话卡
到[这里](https://gg3.simpanda.cc/products/Giffgaff)买一张 gg 卡,按这个[教程](https://gg3.simpanda.cc/blog/giffgaff)去激活。根据下面的保号教程可以用 20 年了。在 gg 的官网注册时,使用常用的 email 地址即可。
# 身份
到[这里](https://www.google.com/ai)用以下提示语生成一个身份,并保存下来。
````plaintext
请帮我生成一个 24 岁白人男子的姓名、通讯地址(使用免税州的)、出生日期、可以注册的 gmail 地址,注意:他的职业为程序员,通讯地址在 google map 中需要可以查到。
````
# 邮箱
到[这里](https://mail.google.com/)注册 gmail。
# appleid
在 iPhone 上登录 apple 账户,使用 gmail 创建 apple id。
# 礼品卡
使用礼品卡订阅的方式可以阻断 Claude 获取付款信息。
到[这里](https://www.apple.com/shop/buy-giftcard/giftcard)购买礼品卡,注意“Recipient Email Address”填上面注册的 gmail。
# 订阅
在 iPhone 上安装 Claude,使用 gmail 注册账号,然后订阅 Claude。
# 使用 Claude Code
在开发机上安装 claude-code,并且每次启动 claude code 前先检查是否连接了科学上网,我的做法是:
在 $PATH 路径中 “/opt/homebrew/bin” 前面的目录下(比如 ~/.local/bin),将以下 bash 脚本保存为 'claude' 文件,并 chmod +x 权限。注意修改其中的 IP 'x.x.x.x' 为你的科学上网 IP。
````shell
#!/bin/bash
check_ip() {
# Ensure a target IP was passed as an argument
if [[ -z "$1" ]]; then
echo "[Error] Please provide a target IP. Usage: check_ip <IP>" >&2
return 1
fi
local TARGET_IP="$1"
# Fetch public IP using ipconfig.sh with a 5-second timeout
local CURRENT_IP
CURRENT_IP=$(curl -s --max-time 5 https://ipconfig.sh | tr -d '[:space:]')
# Check if IP was successfully retrieved
if [[ -z "$CURRENT_IP" ]]; then
echo "[Error] Could not fetch public IP. Please check your connection!" >&2
return 1
fi
# Compare IPs
if [[ "$CURRENT_IP" == "$TARGET_IP" ]]; then
return 0
else
echo "[Alert] IP mismatch! Expected: $TARGET_IP. Launch denied." >&2
return 1
fi
}
# 包装后的 claude 启动命令
claude_start() {
# 直接使用 if 判断函数的执行状态码( 0 为真,非 0 为假)
if check_ip "x.x.x.x"; then
# 只有在 check_ip 成功(返回 0 )时,才会执行到这里
/opt/homebrew/bin/claude
return 0
else
# check_ip 失败(返回 1 )时,走这里
echo "[Error] Could not launch claude" >&2
return 1
fi
}
# 执行启动函数
claude_start
````
# 电话卡保号
参照这个[教程](https://gg3.simpanda.cc/blog/gapa) 每 6 个月内保号一次。
---
原文链接:[点击查看](https://www.v2ex.com/t/1229497)
· 0 个赞
· 0 个赞
· 0 个赞
· 0 个赞
· 0 个赞
· 0 个赞
· 0 个赞
· 0 个赞