目录
什么是shadowrocket PAC模式
shadowrocket是一款常用的翻墙软件,它提供了多种工作模式,其中PAC模式是一种比较灵活的模式。PAC模式会根据预先设置好的规则,自动判断哪些网站需要通过代理访问,哪些网站可以直连。这种模式相比全局模式更加节省流量,同时也可以有效避免一些网站无法正常访问的问题。
PAC文件的配置
使用shadowrocket的PAC模式,需要先配置好PAC文件。PAC文件是一个JavaScript脚本文件,它定义了代理规则。有两种主要的配置方式:
手动编写PAC文件
PAC文件的基本格式如下: javascript function FindProxyForURL(url, host) { // 在这里编写代理规则 if (/条件1/) { return “PROXY 127.0.0.1:1080”; // 使用代理 } else { return “DIRECT”; // 直接访问 }} 你可以根据自己的需求,编写相应的代理规则。常见的规则有:
- 按域名匹配
- 按关键词匹配
- 按IP地址段匹配
使用在线生成器
除了手动编写,也可以使用在线的PAC文件生成器,比如Gfwlist2Pac。这些工具会根据一些常用的屏蔽列表,自动生成PAC文件。生成后只需要把文件链接填入shadowrocket的设置即可。
PAC模式的使用技巧
如何切换回全局模式
如果需要暂时切换回全局模式,可以在shadowrocket的设置中找到”Proxy”选项,然后选择”Bypass proxy”即可。这样就不会走PAC模式的代理规则,而是全局使用代理。
PAC模式下的DNS设置
在PAC模式下,建议将DNS服务器设置为一些公共的DNS,例如Google DNS或Cloudflare DNS。这样可以确保DNS解析不受代理影响,提高访问速度。
常见问题解答
PAC模式和全局模式有什么区别
PAC模式下,shadowrocket会根据预先设置好的规则自动判断是否需要走代理,而全局模式下所有流量都会走代理。PAC模式相比全局模式更加灵活,可以有效节省流量,但配置也相对复杂一些。
PAC文件中的规则怎么写
PAC文件中的规则是用JavaScript编写的。常见的规则有:
- 按域名匹配:
if (shExpMatch(host, "*.google.com")) return "PROXY 127.0.0.1:1080";
- 按关键词匹配:
if (dnsDomainIs(host, ".facebook.com") || contains(url, "facebook")) return "PROXY 127.0.0.1:1080";
- 按IP地址段匹配:
if (isInNet(dnsResolve(host), "8.8.8.8", "255.255.255.0")) return "PROXY 127.0.0.1:1080";
PAC模式下网速会变慢吗
在PAC模式下,shadowrocket会先判断是否需要走代理,再进行实际的代理连接。这个过程会增加一些延迟,但对于大多数网站来说,延迟并不会太大。如果你发现网速明显变慢,可以检查一下PAC文件的规则是否过于复杂或者有问题。
如何测试PAC文件是否生效
可以使用浏览器的开发者工具,查看网页请求的代理情况。例如在Chrome中,打开开发者工具 -> 网络标签页,就可以看到每个资源的请求方式(Direct或Proxy)。如果PAC文件生效,你应该能看到一些资源是通过代理访问的。