概述

Shadowrocket 是一款基于规则的代理实用工具。

  • 高性能和稳定性:功能多样,但只占用最少的系统资源。它将完美地处理所有的流量,让你无忧无虑。
  • 灵活的规则系统:您可以根据域名,IP CIDR,GEOIP 等设置代理转发规则。Shadowrocket 将自动将请求发送到另一个代理服务器。支持的代理协议多样化。
  • HTTPS 解密:HTTPS 流量可以被 MitM 解密。证书生成器将帮助您生成用于调试的 CA 证书,并使证书受系统信任。
  • 本地 DNS 映射:Shadowrocket 支持本地定制的 DNS 映射。其多功能模块,包括通配符,别名和自定义 DNS 服务器,将能够满足不同的需求。
  • HTTP 重写:根据自定义规则将 HTTP / HTTPS 请求重写到另一个 URL,或者简单地阻止请求。
  • 所有功能都可以在蜂窝网络上工作。
  • 捕获设备上任何应用程序的所有 HTTP / HTTPS / TCP 流量,并将流量重定向到 HTTP / HTTPS / SOCKS5 代理服务器,遵循高度可配置的规则,即使应用程序不遵循系统代理设置。
  • 即使在蜂窝网络上也可以覆盖系统 DNS 设置。并通过同时向所有 DNS 服务器发送 DNS 查询来提升性能。

首页

添加节点

可通过扫码和首页右上角的 ➕ 来操作。

节点排序

可通过长按 ➕ 或者节点列表右上角的”三“来操作(号长按为节点排序)。

全局路由

  • 配置(即使用 .conf 文件)
  • 代理(即 PROXY)
  • 直连(即 DIRECT)
  • 场景(根据不同使用场合自动切换相关配置,暂时支持使用不同的 urltest 测速分组和 conf 配置文件)

场景设置

场景可选无线局域网、蜂窝数据网络、默认;
路由可选配置、代理、直连;
类型可选单个节点及分组;
配置即为该场景使用的配置文件。

如果路由器挂载了 ss 我如何指定该路由下走直连,而其他路由器下走代理?

您可以新建一个场景 SSID 取名为 wifi(该四个单词不区分大小写),然后进行其他相关设置。SSID 设置为 wifi 意思是通配所有 wifi 的 ssid。然后单独设置挂载了 ss 的路由器的场景,ssid 取名为挂载了 ss 的路由器的名称,选择直连即可。

速度测试

自动选择最优节点,需要添加分组后使用。例如我有节点 a b c d ,可创建分组将其加进去,一般分组内的节点不超过5个为佳,速度测试分组可以和场景搭配使用,具体去场景设置。速度测试分组也可以和配置搭配使用,和配置搭配使用的时候注意下当前勾选的是哪个分组。

延迟测试

通过 TCP / ICMP ping 获取当前的延迟信息,延迟信息仅作为参考,无其他实际意义。

配置

主要是规则相关文件的配置

  • 从 iCloud 等位置导入配置文件
  • 从网址导入配置文件
  • 从 WiFi 上传

数据

基于域名的规则

域名

1
DOMAIN,www.apple.com,Proxy

如果与请求的域名完全相同,则匹配规则。

域名后缀

1
DOMAIN-SUFFIX,apple.com,Proxy

如果与请求的域名后缀相同,则规则匹配。例如:’google.com’ 匹配 ‘www.google.com','mail.google.com' 和 ‘google.com’,但并没有匹配’content-google.com’。

域名关键字

1
DOMAIN-KEYWORD,google,Proxy

如果请求的域包含关键字,则规则匹配。

基于域名的规则选项

force-remote-dns

1
2
3
DOMAIN,www.apple.com,Proxy,force-remote-dns
DOMAIN-SUFFIX,apple.com,Proxy,force-remote-dns
DOMAIN-KEYWORD,google,Proxy,force-remote-dns

基于IP的规则

IP-CIDR

1
2
3
4
IP-CIDR,192.168.0.0/16,DIRECT
IP-CIDR,10.0.0.0/8,DIRECT
IP-CIDR,172.16.0.0/12,DIRECT
IP-CIDR,127.0.0.1/8,DIRECT

如果请求的IP地址匹配指定范围,则规则匹配。

GEOIP

1
2
GEOIP,US,DIRECT
GEOIP,CN,DIRECT

如果 GeoIP 测试结果符合指定的国家/地区代码,则规则匹配。

基于 IP 的规则选项

no-resolve

1
2
GEOIP,US,DIRECT,no-resolve
IP-CIDR,172.16.0.0/12,DIRECT,no-resolve

当遇到 GEOIP 或 IP-CIDR 规则时,Shadowrocket 会发送 DNS 问题,以检查请求的主机名是否为域名。您可以选择 “no-resolve” 选项来跳过具有域名的请求的此规则。

注意:如果某些域名无法由本地 DNS 服务器解决,请确保在与该域匹配的规则前面没有基于 IP 的规则。否则由于 DNS 错误,规则测试将失败。您也可以使用 “no-resolve” 来解决问题。

设置

证书

用于解密 HTTPS。

延迟测试方法

建议选择 TCP

按需求连接

建议关闭,因为规则不支持 IP-CIDR,所以 Telegram 在按需连接下无法使用。

代理共享

首先开启代理共享,其他 iOS 用户去无线局域网下点击当前所处的同一 wifi 右边的感叹号,最下面 HTTP 代理-手动,填写服务器和端口,例如,Shadowrocket 代理共享处的地址为 192.168.123.36:1082,则服务器填写 192.168.123.36,端口填写 1082 即可,电脑及安卓用户类似。

TCP

默认参数即可。

UDP

类型默认 Socket 即可,Socket 为作者自己实现,Session 为使用苹果的库实现,参数用默认即可。