起因

笔者公司内部的一些服务,虽然是国内的,但是依然会走 ClashX 代理,于是我尝试手动修改订阅的托管配置文件,但是订阅的配置文件每次自动更新后,我加入的配置就被覆盖了。

为了避免重复劳动,我翻阅了大量文档,最终发现 ClashX 支持通过在配置文件目录中创建 proxyIgnoreList.plist 文件实现忽略指定 HOST。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
	<string>192.168.0.0/16</string>
	<string>10.0.0.0/8</string>
	<string>172.16.0.0/12</string>
	<string>127.0.0.1</string>
	<string>10.0.10.0/24</string>
	<string>localhost</string>
	<string>*.local</string>
	<string>*.crashlytics.com</string>
	<string>*.it</string>
</array>
</plist>

这个 ignore list 会在 ClashX 设置为系统代理时,将其写入系统的网络的 Bypass proxy 设置中,如下图所示:

macOS Bypass proxy settings

设置好以后,浏览器中再次访问 *.it 的域名就不会走代理了!

I hope this is helpful, Happy hacking…