上个月我踩了个挺狼狈的坑:开着小火箭在银行 App 里给房东转账,输完密码一点确认,App 直接闪退。重启再试,提示"网络环境异常,请稍后再试"。关掉代理,一切正常。那一刻我才意识到,金融类 App 和代理天生不对付。
插图来源:Storyset
为什么银行 App 容不下代理#
银行、证券、支付类 App 对网络环境极其敏感,原因有三:
- 代理环境检测:很多金融 App 会检测设备是否走了代理或 VPN,一旦发现就拒绝服务或直接闪退,这是风控策略的一部分;
- 证书校验严格:这类 App 普遍做证书绑定,中间人式的流量接管会直接触发保护机制;
- IP 归属地风控:你的常用登录地是国内,突然从一个海外 IP 登录,风控系统很可能直接限流甚至临时冻结。
所以正确姿势不是"关掉代理再用银行 App",而是把金融类 App 永久设为直连,让它们永远走真实网络。
各客户端的直连设置方法#
Shadowrocket(小火箭)#
- 打开 App,进入「配置」,选中当前在用的配置文件;
- 点「规则」,右上角加号新增一条;
- 类型选
DOMAIN-SUFFIX(针对银行域名,如95555.cn这类)或直接用PROCESS-NAME匹配 App 进程; - 策略选
DIRECT(直连); - 关键:把这条规则拖到列表最上方,确保优先级最高。
嫌一条条加麻烦?直接在规则里搜已有的"银行"“支付"分类,很多现成规则集已经收录了主流银行域名,引用过来就行。
Stash#
- 「设置」→「分流」→「规则」,新建规则组;
- 规则类型选
PROCESS-NAME,填入银行 App 的进程名,动作为直连; - 或者更省事:订阅一份带"金融直连"分类的规则集,在策略组里把该分类固定为 DIRECT。
Surge / Loon#
- 在规则列表顶部加一行:
PROCESS-NAME, 银行App进程名, DIRECT; - 也可以按域名写:
DOMAIN-SUFFIX, bank.com, DIRECT; - 注意 Surge 的规则是从上往下匹配,直连规则必须放在代理规则前面。
Hiddify#
- Hiddify 的分流能力相对简单:进入「设置」→「路由」/「分流」;
- 把银行类 App 加入"直连应用"名单;
- 如果用的客户端版本没有按 App 分流,就把整个客户端切到"按需"思路:用银行 App 时手动暂停连接。
直连规则的优先级逻辑#
记住一条铁律:直连规则永远要放在代理规则前面。分流引擎是按顺序匹配的,第一条命中的规则生效。如果你的"全局代理"规则排在前面,后面写的直连规则就永远轮不到执行,等于白写。
检查清单:
- 金融类 App 已加入直连名单(银行、证券、支付、公积金、社保类全算上)
- 直连规则排在规则列表最顶部
- 切换网络后测试一次:开着代理打开银行 App,能正常登录转账才算生效
- 境外银行 App 反过来可能需要走代理,按实际测试结果调整
最后一点提醒#
即使设了直连,有些银行 App 在系统级 VPN 开启的状态下依然会报警——因为它们检测的是"设备是否处于 VPN 环境”,而不是流量走哪条路。遇到这种情况,只能在使用银行 App 时临时断开代理连接,用完再连回来。安全第一,这点麻烦值得。
相关阅读:分应用代理设置教程、全局代理、规则分流、直连模式怎么选、iOS 四大付费代理工具横评、iOS 端 Shadowrocket 从安装到上网的完整步骤