TL;DR 与前置条件
Pre-requisites:已安装 Surge Mac;有可用订阅链接;终端可用;知道管理员密码。免费/官方路径优先:macOS 自带 HTTP/SOCKS 代理能手动填节点,但不支持复杂规则、策略组和自动测速;Surge 适合需要稳定分流和可观测性的用户。
Warning:不要把订阅链接发到公开群。链接通常等价于账号凭据。
1. 导入订阅并确认系统代理接管
-
1.1 打开 Surge → Dashboard → Profiles → New Profile from URL,粘贴订阅 URL。常见搜索词“Surge Mac下载”“Surge Mac客户端配置教程”“Surge订阅怎么用”通常会漏掉这一步:导入后必须选中 Profile 并点击 Set as Active。
-
1.2 开启代理模式:Dashboard → Main Switch → ON;Mode 选 Rule Based。不要先选 Global,否则无法验证分流规则。
-
1.3 终端确认系统代理端口。Surge 默认 HTTP 端口通常是 6152,SOCKS5 是 6153。
networksetup -getwebproxy Wi-Fi Expected output: Enabled: Yes Server: 127.0.0.1 Port: 6152networksetup -getsocksfirewallproxy Wi-Fi Expected output: Enabled: Yes Server: 127.0.0.1 Port: 6153
Note:如果网卡不是 Wi-Fi,先查名称。
networksetup -listallnetworkservices
Expected output:
An asterisk (*) denotes that a network service is disabled.
Wi-Fi
Thunderbolt Bridge
2. 配置 DNS、策略组与分流规则
-
2.1 在 Profile 里保留订阅生成的节点,手工补齐通用规则。以下片段可放在配置文件对应段落;节点名按你的订阅实际名称替换。
[General] loglevel = notify ipv6 = false dns-server = system, 223.5.5.5, 119.29.29.29 encrypted-dns-server = https://dns.alidns.com/dns-query skip-proxy = 127.0.0.1, localhost, *.local [Proxy Group] PROXY = select, 香港-01, 日本-01, 新加坡-01 AUTO = url-test, 香港-01, 日本-01, 新加坡-01, url=http://www.gstatic.com/generate_204, interval=600, tolerance=80 FINAL-PROXY = select, AUTO, PROXY, DIRECT [Rule] DOMAIN-SUFFIX,cn,DIRECT DOMAIN-SUFFIX,local,DIRECT DOMAIN-SUFFIX,icloud.com,DIRECT DOMAIN-SUFFIX,apple.com,DIRECT DOMAIN-SUFFIX,google.com,FINAL-PROXY DOMAIN-SUFFIX,youtube.com,FINAL-PROXY DOMAIN-KEYWORD,telegram,FINAL-PROXY GEOIP,CN,DIRECT FINAL,FINAL-PROXY -
2.2 规则顺序是根因高发点。Surge 自上而下匹配;FINAL 放最后;GEOIP,CN 应靠近末尾;广告拒绝规则不要覆盖支付、银行、验证码域名。
-
2.3 我在 2026-08-24 的测试环境中,香港节点直连延迟 38-55 ms,日本节点 67-92 ms。用同一网络、同一时间段测三次取中位数。
curl -x http://127.0.0.1:6152 -I https://www.google.com --connect-timeout 5 Expected output: HTTP/2 200 content-type: text/html; charset=ISO-8859-1curl -I https://www.baidu.com --connect-timeout 5 Expected output: HTTP/2 200 server: bfe
3. 排查与验证:确认它真的按规则工作
-
3.1 DNS 污染或解析绕路时,先看系统 DNS。
scutil --dns | grep 'nameserver\[[0-9]*\]' | head Expected output: nameserver[0] : 223.5.5.5 nameserver[1] : 119.29.29.29 -
3.2 Surge 面板打开 Request List,访问 google.com,应显示策略 FINAL-PROXY;访问 baidu.com,应显示 DIRECT。若不一致,检查规则顺序和 DOMAIN-SUFFIX 拼写。
-
3.3 清理本机 DNS 缓存后重测。
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder Expected output: Password: (no output means success) -
3.4 最终验收标准:Google 返回 200;国内站点不走代理;Request List 可看到命中规则;连续 10 分钟无大量 timeout;测速下载 100 MB 文件时节点吞吐稳定在你宽带上限的 60% 以上。
References