Surge
> Surge — 一款集代理、抓包、网络调试与规则分流于一体的神器级工具箱。
---
先声明,这玩意儿不是给小白准备的“一键翻墙”App,它更像是一把瑞士军刀,但刀柄上刻着“极客专用”。如果你只是想在手机上刷刷Instagram,那有更轻量的选择;但如果你是个开发者、网络管理员,或者对“我的数据到底走了哪条路”有执念的折腾党,Surge 会让你上瘾。
我用了三年,从 iOS 版入坑,到 macOS 版彻底沦为日常主力。今天不聊参数,就聊聊它到底怎么帮我解决那些“破网络”问题的。
## 它到底干了啥?
简单说,Surge 是一个**基于规则引擎的代理客户端**。它监听你设备上的所有网络流量,然后根据你设定的规则(比如“访问 Google 走代理”、“访问国内视频站直连”),把流量分发到不同的通道。这听起来不复杂,但它的强大在于:
1. **规则系统极其灵活**。支持域名、IP段、GeoIP、进程名(Mac端)、甚至 HTTP 请求头匹配。你可以写“如果请求来自微信,且域名含 amazon,则走美国节点”,这种变态级细粒度控制。
2. **自带高性能 HTTP 抓包**。不用再装 Charles 或 Fiddler,Surge 的抓包界面流畅,还能直接断点修改请求,调试 API 神器。
3. **网络状态可视化**。实时看每个连接的延迟、流量走向、用了哪条规则,一目了然,强迫症福音。
4. **跨平台**。iOS / macOS / Windows(Windows 版叫 Surge for Windows,但功能少些,主力还是 Apple 生态)。
**解决的核心痛点**:你不想所有流量都绕路去国外(慢),也不想某些流量被墙(打不开)。Surge 帮你自动分流,该快则快,该通则通。
## 下载方式
别去 App Store 搜“Surge”,你搜到的是同名垃圾游戏。官方渠道:
- **macOS 版**:直接去官网 [Surge 官网](https://nssurge.com/) 下载试用版,14天全功能试用,之后需要购买授权(单设备 $49.99,家庭版 $99.99,不算便宜,但买断制,不订阅)。
- **iOS 版**:在 App Store 搜索 “Surge 5” 或 “Surge iOS”,售价 $49.99(经常有打折,黑五半价)。注意,这是 **付费独立 App**,不是订阅制,一次买断。
- **Windows 版**:官网同样有,但功能精简,主要是代理模式,没抓包。
**提醒**:别买淘宝共享账号,Surge 的授权和 iCloud 同步绑定,共享账号容易翻车,而且这工具本身值得你为它付钱。
## 安装方法
Mac 版下载后是 .dmg 文件,拖进 Applications 文件夹即可。首次打开会提示“无法验证开发者”,去 系统设置 -> 隐私与安全性 -> 仍要打开。
iOS 版更简单,App Store 购买后,**关键一步**:需要去 设置 -> 通用 -> VPN与设备管理 里,信任 Surge 的配置描述文件。否则无法创建虚拟网卡。
装好后,打开 Surge,它会请求“添加 VPN 配置”,点允许,输入你的 Mac 密码(iOS 是锁屏密码)。这一步是让它创建虚拟网卡,接管所有流量。
## 基础使用教程
### 1. 导入你的代理节点
你从机场(代理服务商)拿到的订阅链接,在 Surge 里:
- **Mac 端**:点击左上角“配置文件” -> 右下角“+” -> 从 URL 下载 -> 粘贴订阅链接。Surge 会自动解析成节点列表。
- **iOS 端**:首页 -> 点击“默认”配置 -> 右上角“+” -> 从 URL 下载。
### 2. 选一个“策略组”
这是 Surge 的灵魂。默认配置里有一个叫“Proxy”的策略组,你可以设为“自动测试”(Surge 每秒 ping 一次所有节点,自动选延迟最低的)或者手动选一个固定节点。
### 3. 开启系统代理
Mac 端点击菜单栏的 Surge 图标 -> 打开“设置为系统代理”。iOS 端直接点首页的开关按钮。此时状态栏会出现 VPN 图标,说明流量被接管了。
### 4. 看看日志
打开“请求”面板(Mac 端在左侧栏,iOS 端在底部),你能看到每个连接的域名、耗时、走了哪条规则。如果某个 App 打不开,先看这里,是不是规则把它误判成直连了。
## 进阶技巧(这才是精华)
### 1. 写你自己的分流规则
默认规则够用,但想精细化,你需要编辑配置文件。Mac 端用“配置文件” -> “编辑”打开文本编辑器。举个例子,我想让所有来自“腾讯视频”的流量都走直连(因为它有国内 CDN,代理反而慢):
```ini
[Rule]
DOMAIN-SUFFIX,qq.com,DIRECT
DOMAIN-SUFFIX,v.qq.com,DIRECT
```
放在`[Rule]`最上面,优先级比默认规则高。同样,你可以让特定 App(如 Telegram)强制走代理,即使它没被墙,为了稳定:
```ini
[Rule]
PROCESS-NAME,Telegram,Proxy
```
(Mac 端需要先开启“增强模式”才能用进程匹配)
### 2. 利用“脚本”自动化
Surge 支持 JavaScript 脚本,可以在请求发出前修改 header 或 body。比如我写了个脚本,自动给某些 API 请求加上签名 header,省得每次调试手动改。
### 3. 抓包与断点调试
打开“抓包”模式(Mac 端在顶部菜单“调试” -> “开始捕获”),然后你就能在“请求”面板看到所有 HTTP/HTTPS 请求。点击某个请求,可以查看请求头、响应体,甚至右键“断点” -> 修改参数再放行。这对调试客户端 API 简直是救命。
### 4. 多网卡策略
如果你有软路由或在家组了 Mesh,Surge 支持“物理接口”分流。比如:在家时,局域网内走直连,出外网才走代理。配置里写:
```ini
[PhysicalInterface]
en0 = LAN
en1 = WLAN
```
但普通用户用不上,懂的人自然懂。
## 最后的碎碎念
Surge 的学习曲线陡峭,但一旦上手,你会觉得其他代理工具都像玩具。它的规则引擎、抓包能力、稳定性,在 Apple 生态里没有对手。如果预算允许,直接上 Mac + iOS 全家桶,iCloud 同步规则,无缝切换。
如果你只是偶尔需要科学上网,别买,浪费钱。但如果你是个爱折腾的开发者,或者家里网络环境复杂,Surge 是你值得花一晚上研究的好玩具。
有问题评论区见,我看到会回。