进程规则命中的是拥有套接字的进程,不是窗口标题里的应用名。名字对不上时规则为假,连接落到默认出站;默认若是直连,AI 客户端会超时或出现地区拒绝。2026-11-04 核对的是 sing-box 1.14.4 的文档和源码,没有运行这些桌面应用。

OpenAI、Anthropic 和 Google 都没有把中国大陆写成这些产品的无条件服务地。让某个进程走一条出站,不会把人变成名单内的用户。绕过地区检查可能违反条款,账号可能被限制或停用。本文不写伪造证件、购买或借用账号、手机号和支付卡,也不列举任何官方应用的可执行文件名。那些名字要以你自己的日志为准。

四种「应用没走代理」要分开

一个可单独引用的区分:进程规则没命中,是因为套接字主人的文件名不在名单里;应用不读系统代理,是它自己的网络设置。

你看到的结果更像什么下一步
浏览器能开,桌面应用不读系统代理两个程序不是同一条读取路径见 桌面应用不跟浏览器
手机只有部分应用进隧道分应用或私有 DNS见 电脑能用、手机不行
日志有 found process path,文件名和规则里的不一样比的是套接字主人按本文改规则里的字符串
日志是 failed to search process没查到主人,进程规则不会命中先看这条错误,不要改账号
页面已是国家或地区英文,且出站就是你选的那条网站按出口判断停止加进程名

第二个名字复用已有 HTTP/2 连接时,根本不会再出现一条新连接,见同日草稿 连接复用后,第二个 AI 名字不再握手。回环回调被交给代理,见 回环地址交给代理,请求就离开本机。两篇都还是草稿,链接要等发布后才有效。

文件名要整串相等

路由规则 在 v1.14.4 的文档里写:process_name、process_path、process_path_regex 只支持 Linux、Windows 和 macOS。process_name 的说明只有 “Match process name.”,没有写它是否包含父进程,也没有写是否忽略大小写。

标签 v1.14.4(提交 c005f35300ce76427dc285481ec5695f5b179cd2)的 route/rule/rule_item_process_name.go 是另一句:ProcessInfo 为空,或 ProcessPath 为空,就返回假。否则用 filepath.Base 取出路径的最后一段,到一张表里做相等查找。Go 的这张表区分大小写。因此 Name 和 name 不是同一条。文档没有写这个差别。

process_path 比的是整段路径,同样是相等查找。同一标签的 rule_item_process_path.go 在 Android 上还会用包名去比,而规则页把 process_path 写成只支持 Linux、Windows 和 macOS。本文不把这行源码写成 Android 的配置方法。手机上的包名见分应用那一篇。

同一条规则里,process_name 被放进必须全部为真的 items。文档里的域名条件在另一组。两组都写上时,文件名和域名都要命中。只想按域名选路时,不要顺手加上一个没核对过的进程名,否则域名对了也会被进程名否掉。

下面不是完整配置。name-from-the-log 是占位,必须换成日志里的文件名。ai-out 必须是你配置里已有的出站标签。这条会带走该进程的全部连接,包括国内站点,不是只带走 AI 域名。

{
  "route": {
    "rules": [
      {
        "process_name": [
          "name-from-the-log"
        ],
        "action": "route",
        "outbound": "ai-out"
      }
    ]
  }
}

route/rule/rule_default.go 在动作为路由且要检查出站时,空的 outbound 会报 “missing outbound field”。发布前用你安装的那一版做配置检查。本文没有运行 sing-box check。

日志里的路径从哪来

route/router.go 在规则、规则集或 find_process 需要查进程时创建搜索器。因此已经写了 process_name 时,不为了匹配再去打开 find_process。文档对 find_process 的说明是:没有任何 process_name、process_path、package_name、user 或 user_id 规则时,仍为日志去查。搜索器创建失败时,源码只打一条警告,随后进程规则都会落空。

route/process_cache.go 的查找还有一个前提:来源地址要被看成本机。回环地址,或等于本机网卡地址,才继续查。来源不是本机时,函数直接返回,不会有 found process path。路由器上转发出来的连接因此对不上进程规则。这不是 AI 网站的地区判断。

查到路径时,info 级别写 found process path: 加上整段路径。查失败时写 failed to search process:。规则命中则是 route/route.go 里的 debug:match[ 序号 ]。2026-11-04 的日志文档 把默认示例的 level 写成 info。要看命中了哪条,需要临时改成 debug,看完改回去。output 指向文件后,文档写明不再打到控制台。

平台差别只记源码里能对上的两句,本文没有在 Windows 或 macOS 上跑过:

系统v1.14.4 源码里的查找本文没有做的事
Linuxcommon/process/searcher_linux.go 用套接字诊断找 inode,再在 /proc 里对上路径。注释写套接字保留创建时的 uid,和进程后来的 uid 可能不一致没有用一份真实 AI 进程验证 inode
Windowssearcher_windows.go 用 FindPid(network, source) 取 PID,再用 QueryFullProcessImageName 取路径。PID 为 0 或 4 时返回占位字符串没有在 Windows 上确认大小写

占位字符串 :System Idle Process 和 :System 不是 AI 应用。把它们写进 process_name 没有意义。

命中之后,名单仍在

进程走了你选的出站,只说明这一跳的路径。2026-11-04 打开的 ChatGPT Supported Countries 页眉是 “Updated: 13 days ago”。页面写明名单外访问或提供访问,账号可能被封锁或暂停。可见名单里有 Taiwan,没有看到 China、Hong Kong、Macau。

Anthropic Supported Regions Policy 页眉生效日是 Nov 12, 2026,晚于核对日。未列出的国家或地区不受支持,其中包括人在未列出地区使用。当天名单有 Taiwan,没有看到中国大陆、香港、澳门。生效日之前是否已经按这张名单执行,不能从页眉反推。

Gemini API 可用地区 当天能搜到 Taiwan,搜不到 China、Hong Kong、Macau、Macao、Mainland。这是 API 与 AI Studio 那一页。网页名单本文没有重开。

同一出口上的域名怎么写,见 网页能开,不代表 API 同一出口。不要为了让进程规则命中,去新建账号。

公开文件里的法律范围

《关于清理规范互联网网络接入服务市场的通知》(工信部信管函〔2017〕32号)写明,未经电信主管部门批准,不得自行建立或租用专线(含 VPN)等其他信道开展跨境经营活动。2017 年 1 月 24 日的答记者问说明,对象是无国际通信业务经营资质而开展跨境电信业务经营的企业或个人;企业办公自用、向依法设置国际通信出入口局的经营者租用,不在该条针对的范围内。2026-11-04 没有重新打开部委网页,这段沿用该通知和答记者问的公开表述。本文不判断某种个人使用是否违法,也不写规避执法的做法。

改完进程规则留下的记录

留下五样东西:found process path 的整段路径、规则里写下的文件名是否与最后一段逐字相同、日志是命中还是 failed to search process、默认出站标签、有没有地区英文。路径里不要包含别人的用户名再贴到公开场合。占位字符串 name-from-the-log 不能留在要运行的配置里。