Mac 上的 Surge 是什么,为什么会产生大量流量?
最后更新: 2026-08-05
Surge 是第三方代理和网络工具,不是 Apple 的系统进程。它会替其他 App 或局域网设备建立连接,因此进程流量很大,不等于 Surge 正在自行上传或下载内容。
它是什么
Surge 是 Surge Networks 提供的第三方网络工具,不是 macOS 自带的系统进程,也不是维持系统运行所必需的组件。它的应用标识是 com.nssurge.surge-mac,主程序可执行文件可能显示为 /Applications/Surge.app/Contents/MacOS/Surge。
Surge 可以在本机提供 HTTP 和 SOCKS5 代理。收到请求后,它会按照用户写好的规则决定下一步:直接连接目标服务器,或者交给用户配置的上游代理。除此之外,它还能处理 DNS、检查请求,并按需启用 HTTPS 调试。这里的关键是“按用户配置工作”。Surge 连接谁、什么时候连接、采用哪条路径,都可能随规则和功能开关而变化。
Enhanced Mode 让 Surge 不再局限于普通的系统代理。它通过 Apple Network Extension 创建虚拟网络接口,接管那些不遵循 macOS 系统代理设置的流量。因此,看到 Surge 处理 TCP、UDP、ICMP 或 DNS,并不反常。现行 Enhanced Mode 使用的是 Apple 提供的 Network Extension,不应把它误认成需要清理的旧式内核扩展或旧驱动方案。
系统工具里还可能出现 Surge Mac、Surge NE、Surge Network Extension、Surge VIF、Enhanced Mode 等名字。nettop 中观察到的 com.nssurge.sur 是被截短的进程标识,不是完整 bundle ID。现有调研没有逐版确认它究竟来自主程序、Network Extension,还是某个辅助可执行程序,所以不能凭这个短名字进一步断定具体组件。
它为什么要联网
开启“Set as System Proxy”后,遵循系统代理设置的 App 会先连接 Surge 在本机开放的代理端口。Surge 读取规则,再去连接真正的目标服务器,或者连接用户指定的上游代理。也就是说,某条外连虽然记在 Surge 名下,最初的请求却可能来自浏览器、下载工具或其他 App。
有些程序完全不理会系统 HTTP 或 SOCKS 代理。Enhanced Mode 的用途就是扩大接管范围:流量进入虚拟接口后,由 Surge 处理其中的 TCP、UDP、ICMP 和 DNS。它并不意味着任何流量都必然经过 Surge;实际结果仍可能受到路由规则和排除规则影响。
如果打开 Gateway Mode,来源还会多一层。此时 Surge 不只处理这台 Mac 的请求,也可能转发局域网中其他设备的流量。于是,手机、平板或其他下游设备发起的连接,也可能体现在 Mac 上的 Surge 进程统计中。
Surge 自己同样会发起连接。远程配置更新、DNS 解析、代理可用性测试、吞吐测试、脚本中的网络请求和 Ponte,都可能产生流量。具体会访问哪些对象、多久访问一次,完全取决于当前配置。现有事实没有给出所有安装环境都适用的固定域名清单,因此不能只看一次连接记录,就推断每台 Mac 都会访问同样的服务器。
正常流量应该是多少
Surge 没有统一、可靠的“正常流量”数字。配置空闲时,它可能只留下接近于零的间歇性控制流量。开始转发请求后,统计值又可能迅速增长,达到所有相关 App、下载任务和下游设备合计吞吐的量级。这里没有一个适用于所有人的 MB 或 GB 标准。
视频播放、大文件传输和 Gateway Mode 都可能带来持续高流量。比如另一个 App 发起下载,而真正面向外部服务器的连接由 Surge 建立,监控工具便可能把大量字节记到 Surge 名下。这个结果只能说明 Surge 承载了连接,不能单凭总量认定它在秘密上传,也不能认定它自行选择了某个文件下载。
反过来,也不能把 Surge 名下的每个字节都算成其他 App 的重复流量。DNS 查询、配置更新、测试请求、脚本、连接握手、保活和协议开销,本来就是 Surge 自身工作产生的网络活动。判断一次高流量是否合理,需要把时间段、启用的功能、当时运行的 App,以及 Gateway Mode 下的其他设备放在一起看。脱离这些上下文,只比较进程累计总量,很难得出可靠结论。
能不能关掉
不需要代理时,可以关闭 Surge;代价是由它提供的整条网络路径都会停止。代理分流、Enhanced Mode、DNS 接管、规则、脚本、请求调试和 Gateway Mode 都不再工作。只能通过代理访问的服务会连接失败;原本受 Surge 规则约束的其他连接,则可能改为直连,绕过之前的隐私策略或访问策略。
在 macOS 15 及以上,如果系统已经列出该扩展,可以前往 系统设置 > 通用 > 登录项与扩展 > 网络扩展 > Surge,然后关闭它。如果 Enhanced Mode 在系统里显示成 VPN 配置,也可以前往 系统设置 > VPN > Surge 断开。Surge 在不同版本的系统设置中究竟显示什么名称,目前没有逐版核实;如果没有看到完全相同的文字,不能据此断定扩展一定不存在。
只强制结束 Surge 进程,可能留下另一半配置。假如系统代理仍然指向 Surge 的本机端口,而监听该端口的进程已经退出,一部分 App 就会失去网络连接。关闭时需要同时留意 Surge 的运行状态和 macOS 里的代理配置,不能把“进程消失”当成整条代理路径已经恢复。
常见的误解
- “Surge 是 macOS 自带的系统进程,不能关闭。” 这不正确。Surge 是用户安装的第三方应用及网络扩展,不属于 Apple 系统进程。
- “Surge 流量很大,说明它在秘密上传,或者自己偷偷下载东西。” 流量可能来自它替其他 App 建立的外连。开启 Gateway Mode 后,还可能包含局域网其他设备的请求。只有总字节数,无法确认真正的发起方和用途。
- “启用系统代理,就能让所有 App 都经过 Surge。” 有些程序不会读取系统 HTTP 或 SOCKS 代理设置。Enhanced Mode 可以通过虚拟接口接管更多流量,但实际覆盖范围仍可能受路由和排除规则影响。
- “Enhanced Mode 是早就淘汰、应该清理的内核扩展。” 现行方案使用 Apple Network Extension,不是旧式内核扩展,也不是旧的虚拟接口驱动方案。
- “直接结束 Surge 是一种没有副作用的网络优化。” 结束进程会切断用户主动配置的代理路径。系统代理如果仍指向已经无人监听的本机端口,还可能让部分 App 无法联网。
- “Surge 名下的每个字节,都是其他 App 被重复统计的流量。” Surge 自己也会产生 DNS、配置更新、代理测试、脚本请求、握手、保活和协议开销。不能把所有字节一概归给其他程序。
- “Already deduped in totals 是 macOS 或 Surge 保证的。” 不是。去重属于 Bytetally 的记账实现,其他网络监控工具可能采用不同口径,同一条代理路径在不同工具里未必得到相同总数。
怎么看它到底用了多少
下一步可以在 Bytetally 的逐进程统计里选定异常发生的时间段,查看 Surge 当时的收发变化。再对照那段时间里的下载、视频、Enhanced Mode、脚本、代理测试,以及 Gateway Mode 下的其他设备。阅读结果时要记住:记在 Surge 名下的连接,也可能是它替别的 App 或设备完成的转发。
相关进程
常见问题
Surge 是 macOS 自带的进程吗?
不是。Surge 是 Surge Networks 提供的第三方应用及网络扩展,需要由用户安装。
为什么 Surge 的流量这么大?
Surge 可能正在转发其他 App 的连接;开启 Gateway Mode 后,还可能包含局域网其他设备的流量。视频和大文件下载都可能让它持续产生高流量。
Mac 上的 Surge 可以关掉吗?
不需要代理功能时可以关闭,但代理分流、Enhanced Mode、DNS 接管、规则、脚本、调试和 Gateway Mode 也会随之停止。
打开系统代理后,所有 App 都会走 Surge 吗?
不会。有些程序不遵循系统 HTTP 或 SOCKS 代理设置;Enhanced Mode 可以扩大接管范围,但仍会受到路由及排除规则影响。
看清它到底用了多少
Bytetally 逐进程分别统计上传与下载,实时和历史都有,全部在本机完成。
免费下载 · Mac App Store需 macOS 14 Sonoma 或更高 · 100% 本机分析 · 无需账号