Surge TestFlight Feed
8.23K subscribers
12 photos
1 video
1 file
34 links
该频道用于提供关于 Surge iOS/Mac/tvOS 的最新 beta 版本信息
Download Telegram
Surge iOS & tvOS 5.12.0 App Store 版本更新已发布
- 新的订阅功能:自定义策略组图标
- 使用 CloudKit 重构 Surge tvOS 配置部署流程,稳定性得到大幅提升。请注意需要将 iOS 和 tvOS 都升级至最新版本后才可以使用配置部署功能,且 tvOS 版本需要先启动一次完成注册
- 在请求列表里使用增加规则功能时,可以选择加入已存在的规则集。(支持本地规则文件和 inline 规则集)
- 模块支持配置 client-source-address 参数
- 修正导出 HAR 时的一些问题
- UI 恢复兼容模式(接管模式)设置并增加详细描述
- 优化 No Default Route 模式下开启 IPv6 VIF 时的行为
- 修正 UI 编辑规则时的一些细节问题,如开启状态和注释
- 优化在外部资源页面查看巨型资源时的表现
- 其他细节优化与问题修正
Surge iOS Beta 更新日志
- 新增 Ponte 诊断功能,用于快速定位 Ponte 相关问题,从 Ponte 设备页面进入
- 修正 subnet 组无法配置自定义图标的问题
- 修正当存在名为 Global 组时,使用全局模式可能出现的问题
Surge Mac & iOS Beta 更新日志
- 提高与服务端 quic-go v0.46.0 的兼容性

相关技术细节
QUIC 协议内置了 Idle Timeout 的机制,同时约定了 max_idle_timeout 参数用于服务端和客户端协商空闲超时的具体时间,根据 RFC 9000,该值为 0 的时候表示不使用该机制或遵循对端设置。(Section 18.2)

Surge 目前版本该参数会指定为 0,因为 Surge 不依赖 QUIC 的 Idle Timeout 机制。然而最新版本 quic-go 重写后,错误将值 0 作为了超时时间,在第一个 stream 结束后,立刻认为闲置时间超时关闭了连接。

更糟糕的是,quic-go 也没有完成 stateless reset 机制,对于 Surge 后续发出的数据包,直接予以丢弃而不产生 stateless reset 响应,导致 Surge 需等待一定时间超时后,才会认为连接失效而重新建立连接。

最新版本为规避该问题,将 max_idle_timeout 参数调整为 30s。
Snell Server 版本更新 v4.1.0 beta 1

- 更新 DNS 库 c-ares 至最新版本,以解决和特定 DNS 记录的兼容问题
- 在启动时新增当前使用的 DNS 服务器输出
- 新增 dns 参数,用于自定义 DNS 服务器地址,支持配置多个地址,如


[snell-server]
dns = 1.1.1.1, 8.8.8.8, 2001:4860:4860::8888


https://dl.nssurge.com/snell/snell-server-v4.1.0b1-linux-amd64.zip
https://dl.nssurge.com/snell/snell-server-v4.1.0b1-linux-i386.zip
https://dl.nssurge.com/snell/snell-server-v4.1.0b1-linux-aarch64.zip
https://dl.nssurge.com/snell/snell-server-v4.1.0b1-linux-armv7l.zip
Surge iOS & Mac Beta 更新日志
Hysteria2 与 TUIC 协议支持端口跳越,用于改善 ISP 对 UDP 的 QoS 问题。详见服务端说明。

Proxy = hysteria2, 1.2.3.4, 443, password=pwd, port-hopping=1234;5000-6000;7044;8000-9000, port-hopping-interval=30

配置 port-hopping 参数后,配置前方的主端口号不再生效。

参数
- `port-hopping`:用于配置端口范围,逗号分隔,支持以-配置范围
- `port-hopping-interval`:变换端口号的时间间隔,默认为 30s
Surge iOS & Mac Beta 更新日志
- 修正开启端口跳越后,数据统计出现的一些问题
- 调整端口跳越配置参数的分隔符为 ;
- [Mac] 适配 macOS Sequoia,解决了增强模式下的一些兼容性问题
Surge Dashboard 新增维护菜单,用于便捷管理远程设备
Surge Mac Beta 5.8.0 重要版本更新

由于传统的 utun 接管方案在新版系统下会产生众多问题,从 Surge Mac 5.8.0 版本开始,Surge Mac 将使用 Network Extension 作为增强模式接管系统网络。

- Surge Mac 的最低系统版本需求调整至 macOS 12
- 由于需要的权限不同,更新后需要手动进行授权操作
- vif-mode 参数将不再生效
- 增强模式现在可以和网络共享功能协同使用了,即可以直接创建出由 Surge 接管的 Wi-Fi(需要有线网络提供外网)
- 相比旧方案,新方案的最大吞吐量略有下降,我们会在之后给出具体数据。(非万兆网络忽略不计)

最近版本可能有诸多小问题,如果希望稳定请先暂缓更新。
由于新 macOS 系统中需要授权的内容太多,为此新增了一个专门的页面用于管理系统授权
Surge Mac & iOS Beta 更新日志
- [Mac] 本地 DNS 映射的 syslib 关键字可以在增强模式下使用了,但是非增强模式下是完全交给系统完成解析,增强模式下是读取系统的 DNS 地址后由 Surge 解析。
- 新增 [General] 参数 `show-error-page`,用于控制在出现错误时,是否显示 Surge 的 HTTP错误页,该参数默认为开启,行为与先前版本一致
Surge Mac 5.8.0 和 iOS 5.13.0 已进入 RC 阶段,如果有问题请尽快反馈
Surge Mac & iOS Beta 更新日志
新增参数 proxy-restricted-to-lan/gateway-restricted-to-lan

目前发现部分用户由于不太了解网络安全知识,意外将代理和网关服务暴露于公网(如配置了 DMZ),因此增加了这两个参数,将限制代理和网关服务仅接受来自当前子网下的设备。

这两个参数为默认开启。
Surge iOS 使用提示
最近几周接到若干用户回报,米家 app 开启时会产生大量请求,可能导致 Surge 因瞬时内存占用过高导致 Surge 被停止。确认该问题为米家 app 死循环请求所致。
部分用户采用 tun-excluded-routes 和兼容模式参数绕过,这其实是不合适的,即使不开启 Surge,系统仍然会因为米家 app 的疯狂请求而严重发热与大幅消耗电量。
目前的最佳解决方案是配置对应的 REJECT-DROP 规则。由于访问的 IP 是动态解析结果,我们无法提供具体的规则,需要自己根据请求列表结果配置,一个例子:
IP-CIDR,106.120.178.9/32,REJECT-DROP,no-resolve
请向米家 app 团队反馈该问题。