深入了解 Surge:一款优秀的 iOS 9 网络调试工具
Surge 是一款在 iOS 9 上运行的强大网络调试工具,虽然作者在 官网 中明确指出它主要为开发者设计,但自从该工具上线以来,它的广泛应用场景也包括科学上网的需求。Surge 的出现,使得越狱 iPhone 的理由减少了许多。
开始使用 Surge
如果您只想将 Surge 用作 Shadowsocks 的代理工具,而不关心详细的配置步骤,只需四个简单步骤:
- 在 iTunes 上购买 Surge。
- 下载整理好的 Surge 配置文件,您可以直接在 Surge 软件中下载或通过 iTunes 导入。
- 根据您的 Shadowsocks 服务器信息修改配置。
- 输入配置后,点击
Start
启动并按提示操作。
完成后,状态栏会出现 VPN
字样,您的 iOS 设备即可开始科学上网。同时,Surge 还提供各种视频客户端的广告过滤功能,对于需要保护隐私的用户非常实用。
Surge 的主要功能
Surge 的主要功能包括:
- 拦截流量:截获所有 iOS 应用程序的 HTTP、HTTPS 和 TCP 流量,并将其重定向到代理服务器。
- DNS 重载:能够在蜂窝网络下重载 DNS 配置,方便开发者进行 DNS 服务器配置。
- 请求记录:记录设备发送和接收的 HTTP 请求和应答的头信息。
- 过滤规则配置:支持基于域名、域名后缀、关键字、CIDR IP 和 GeoIP 的多种过滤规则。
- 流量统计与测速:统计 WIFI、蜂窝网络和代理连接的流量,并进行测速。
- 配置文件导入:支持通过 URL 下载或 iTunes 导入/导出配置文件。
- 高性能:在高负载场景下表现出良好的性能与适应性。
与之前需要越狱才能使用的 Shadowsocks 相比,Surge 提供了更强大的可配置性(如过滤规则)、数据统计和实时日志记录。不过,由于 iOS 沙盒限制,Surge 不能实现应用内代理功能,期望未来有相关越狱插件来弥补这一不足。
软件架构
Surge 由以下两个主要组件组成:
-
Surge Proxy Server:该组件自动代理 iOS 设备上的所有 HTTP/HTTPS 流量,并利用同一代理会话来提高性能。用户可以通过
skip-proxy
指令指定哪些流量不需要代理。 -
Surge TUN Interface:负责处理部分应用程序(如邮件客户端和 Facebook 客户端)使用 HTTP/HTTPS 以外的通信协议的数据流。用户可通过
bypass-tun
指令选择哪些流量不经过 TUN 接口处理。
注意:目前 Surge TUN 接口仅限于处理 TCP 流量,ICMP 和 UDP 流量将直接丢弃。
配置文件
Surge 的配置文件分为多个部分,例如 General、Proxy 和 Rule,支持通过 URL 下载和 iTunes 更新。
通用配置示例
[General] loglevel = verbose bypass-system = true skip-proxy = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, localhost, *.local bypass-tun = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12 dns-server = 8.8.8.8, 8.8.4.4
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
[...]前面分别对Surge、Shadowrocket进行介绍,本文介绍一个新的客户端Loon,并与前面两个科学上网的软件进行对比分析。Loon 的介绍Loon 是一款功能强大的科学上网客户端,专为 iOS 和 Android 平台设计。它通过对网络请求进行智能管理和优化,不仅支持 Shadowsocks、Vmess 和其他代理协议,还集成了多种便捷的配置和使用技巧,使用户可以轻松实现科学上网。Loon [...]