高级功能¶
增强模式(仅限 Mac)¶
增强模式通过创建一个虚拟网卡 (VIF) 接管设备的所有 TCP 和 UDP 流量,使不遵循系统代理设置的应用程序也能被 Surge 处理。
相关选项¶
tun-excluded-routes¶
绕过特定 IP 范围,允许流量不经过 Surge VIF:
tun-included-routes¶
添加更小的路由确保流量通过 Surge VIF:
支持 IPv6 CIDR 块。
端口转发(iOS 5.14.3+ / Mac 5.10.0+)¶
监听特定本地端口并将 TCP 请求转发到特定主机。即使未启用系统代理或增强模式也可独立使用:
policy 参数可选,未指定则使用标准代理匹配。
信息面板(仅限 iOS 4.9.3+)¶
自定义信息面板显示相关信息。
静态模式¶
支持 style:good、info、alert、error。
动态模式¶
通过脚本更新面板内容:
更多自定义¶
- 不传入
style时不显示图标,可传入icon(SF Symbol Name) - 传入
icon-color(HEX 颜色码)控制图标颜色 update-interval使面板自动更新(秒)
模块 (Module)¶
模块是一组配置片段的集合,用于扩展 Surge 功能。可通过 UI 安装和管理。
安装模块¶
- 首页 → 通用 → 模块 → 点击 模块 按钮
- 下滑至 安装的模块 最下方,点击 安装新模块
- 填入模块 raw 链接并保存
- 等待外部资源下载
- 点击 调整生效顺序 调整模块顺序
注意
新安装模块不会自动启用,需手动勾选。
模块包含的段落¶
模块可覆盖以下段落:
[General]、[MITM]:支持覆盖(key = value)、追加(key = %APPEND% value)、插入(key = %INSERT% value)[Rule]、[Script]、[URL Rewrite]、[Header Rewrite]、[Host]:新行插入到原始内容顶部[Ruleset *]:内联规则集补丁[WireGuard *]:WireGuard 策略追加
模块中的规则只能使用内部策略:DIRECT、REJECT、REJECT-TINYGIF。
模块元数据¶
网关模式(仅限 Mac)¶
Surge Mac 可配置为三层网关,处理同一网络中其他设备的网络流量:
[General] 杂项选项¶
日志与调试¶
网络¶
DNS¶
HTTP¶
远程访问¶
测试¶
Host List 参数类型¶
Surge 中多处使用 Host List 类型参数(如 skip-proxy、always-real-ip、hostname 等)。
语法规则¶
| 模式 | 示例 | 说明 |
|---|---|---|
| 域名 | example.com |
匹配单个域名 |
| 通配符 | *google.com |
匹配所有包含 google.com 的域名 |
| IP 地址 | 192.168.2.1 |
匹配特定 IP |
| IP 范围 | 192.168.2.* |
通配符 IP 范围 |
| CIDR | 192.168.2.0/24 |
CIDR 表示法 |
| 排除 | -*.apple.com |
以 - 为前缀排除 |
URL Scheme¶
Surge 支持 URL Scheme 用于外部调用。
通用格式¶
支持的 Action¶
surge://install-config?url=— 安装配置文件surge://install-module?url=— 安装模块
Surge Mac CLI¶
Surge Mac 提供命令行工具,位于 /Applications/Surge.app/Contents/Applications/surge-cli。
常用命令¶
参数¶
--raw— 以原始 JSON 格式输出--remote/-r— 连接到远程 Surge 实例,如-r password@192.168.2.2:6170
托管配置 (Managed Profile)¶
托管配置允许配置文件由远程服务器管理,用户界面中的某些设置可被锁定,防止最终用户修改。
配置示例:
HTTP API¶
Surge 提供 HTTP API 用于远程控制。
端点¶
| 端点 | 说明 |
|---|---|
GET /v1/policies |
获取所有策略信息 |
GET /v1/policies/[policy-name] |
获取指定策略信息 |
GET /v1/profiles |
获取配置文件信息 |
GET /v1/rules |
获取规则信息 |
GET /v1/requests/recent |
获取最近的请求 |
GET /v1/requests/active |
获取活动请求 |
POST /v1/requests/kill |
终止活动请求 |