记一些日常使用时的小细节吧,也谈不上使用教程。

增强模式下终端不走代理

我在官方论坛上提过一个同名问题:Surge5 Mac 增强模式下终端不走代理,最后发现是 pfctl 的问题。

在我现在使用的电脑上它是开机自启的,并且在我调试 Surge 期间并没有关闭它,最终导致了这个问题。

可以通过在命令行中执行 sudo pfctl -d 来临时关闭它。

托管配置

官方文档见 托管配置

Surge 的配置直接托管到服务器上,或者如果你使用某个机场,那么 Surge 也可以自动从 URL 更新配置文件。

只需要在你的配置文件最前端增加下面内容即可(记得把 url 替换成你自己的 url):

#!MANAGED-CONFIG http://test.com/surge.conf interval=60 strict=true

配置分离

当你的配置设置了从 url 自动加载,那么你就无法再在本地修改你的配置了,此时可以通过 配置分离 来解决这个问题。

单独建立一个配置文件,随后通过 #!include 引用你的远端配置。这样就可以做到既自动拉取机场配置,又能享受本地自定义配置。

一个注意点是,上面的文档中有这么一段话:

The filename suffix is not required, if it is a complete profile, you can continue to use the conf suffix, if it is not a complete profile, it is recommended to use another suffix to avoid being displayed in the configuration list.

也就是说如果你的子配置文件不完整,那么可以不加后缀,避免该文件出现在 Surge 的配置文件列表里。

一般子配置文件的 [Rule] 不会包含也不能包含 FINAL,所以如果加载到 Surge 里之后会报错提示 “非法的配置文件,需要以 FINAL 结尾”(但是不会影响功能,仅仅是提示错误)。这个时候就可以通过去掉后缀或者修改后缀的方式将该文件从配置列表中 “隐藏” 掉。

抓包 - “wifi 无网络链接”

主包用的 Surge v6,其实从 Surge 5.8.1 版本开始就可能会遇到这个问题:在 iPhone wifi 上设置了 “配置代理” 后提示 “无互联网访问”,mac surge 上也不显示设备。

Surge 版本 5.8.1 中新增了一个配置 proxy-restricted-to-lan,就是它导致了这个问题。

这个配置默认启用,在配置文件中将其设置为 false 即可解决问题。