主要用途:在执行 claude 命令前,先检测当前出口国家/地区。如果检测不到,或者出口不是美国,就直接拒绝启动,避免在代理没生效、分流异常、节点切换失败的情况下误登录。
claude() {
COUNTRY=$(curl -s --max-time 5 https://ipok.dev/country)
if [ -z "$COUNTRY" ]; then
echo "❌ 无法检测当前出口区域"
return 1
fi
if [ "$COUNTRY" != "US" ]; then
echo "❌ 当前出口不是美国: $COUNTRY"
return 1
fi
echo "✅ 美国出口确认,正在启动 Claude"
command ~/.local/bin/claude "$@"
}
放到 ~/.zshrc 或 ~/.bashrc 里即可:
source ~/.zshrc
或
source ~/.bashrc
之后直接执行:
claude
这样每次启动前都会先检查出口,适合配合 Clash Verge / Mihomo 分流使用。
补充说明:
这里只是做“启动前检查”,不是绝对防风控。
如果浏览器、终端、CLI 走的不是同一个代理环境,检测结果可能不同。
如果使用 TUN 模式,建议确认终端流量也被接管。
ipok.dev/country 返回的是国家代码,例如 US、JP、SG。
如果担心检测接口不可用,可以换成自己的检测接口或增加备用源。
这个方法比较适合防止“节点没开 / 分流没走 / 出口切错地区”这种低级失误。
防封检车
好想法
不错
直接passwall本地分流,😁
我也写过一个类似的工具,等会也在论坛里发一下
@darnell #0 好想法,鸡腿已喂!!
很好的想法
@2bjx3ren #6 感谢大佬~
好思路
正常在用的 一般都自己加了吧 CC帮写CC的检测脚本