返回全部指南

应用场景

在 macOS 上阻止某个 App 联网

用一条「阻止」规则阻止指定 App 建立网络连接,并了解这条规则实际覆盖到哪些进程、哪些地址不在它的管辖范围内。

「阻止」是应用规则的三种动作之一,它不需要代理服务器:匹配到的进程发起的连接会被阻止。理解它的覆盖范围,比创建它本身更重要。

01

创建规则

  1. 1

    添加规则

    在「规则」页面点击「添加规则」,把目标 App 的 .app 拖入表单。规则的对象也可以是命令行可执行文件、脚本包或目录。

  2. 2

    选择「阻止」

    动作选择「阻止」。与「代理」不同,「阻止」规则不需要选择代理服务器。

  3. 3

    保存并确认扩展在运行

    阻止动作由系统扩展执行。扩展未运行时没有拦截点,规则也就不起作用。Antify 需要 macOS 14.0 或更高版本。

Antify「规则」页面,展示代理、直连和阻止三种应用规则,以及「网络锁」一列
02

这条规则覆盖到哪些进程

App bundle 内部的组件随这个 App 的规则一起处理。

但这个 App 启动的其他进程默认不在覆盖范围内。规则表单里的「同时应用于派生进程」开关控制这件事,默认关闭,并且只对 .app 类型的规则有意义。它的适用对象是终端启动的 curl、IDE 启动的构建工具这类由该 App 拉起的程序。

03

阻止到什么程度

局域网也会被切断。「阻止」规则不豁免私有地址(10.x、172.16–31.x、192.168.x 等),所以被阻止的 App 连打印机、NAS 这类局域网设备也一并断掉。(「代理」和「直连」规则相反,局域网默认直连。)链路本地地址(169.254.x.x、fe80::)和多播不经过 Antify,不受影响。

  • 目标是 localhost 或本机地址的连接不受影响,始终直连。
  • 要阻止整个 App,请让「高级选项」里的「目标主机」和「目标端口」保持为空;设置了过滤条件后,没有命中的流量按配置的默认行为处理。
  • 已经建立的连接不会被切断 —— 要立刻生效就重启那个 App。
  • 系统扩展没在运行时,规则不生效。
  • 要让阻止在 Antify 代理未运行时也不放过这个 App,打开这条规则的「网络锁」,详见页面底部「继续阅读」里关于网络锁的指南。
04

确认是否生效

被阻止的连接会记入连接日志。在「连接」页面触发一次目标 App 的新连接,确认「连接」页(「记录中」开关保持打开)出现对应记录,动作显示为「已阻止」。

如果记录没有出现,通常说明这条连接没有匹配到你的规则 —— 先确认规则指向的是该 App 实际运行的那个可执行文件。