环境
- Surge for Mac 4.4.1 (1532)
- Device > iPhone > ✓
Use Surge as Gateway...
- Surge for iPhone 4.11.0 (Build 2098)
- 以上两 Surge 使用同一配置文件
问题场景
[General] wifi-assist = true
与 [SSID Setting] "Home" suspend = true
这俩需求有个场景交集,就是当我的 iPhone 在家连着 "Home"
的 Wi-Fi,而 Mac 这个网关正在重启的时候(网关能 100% 不重启当然是最理想的,但总免不了因为各种原因时不时让 Mac 重启一下)。
而重启的这段时间内,这两个功能就冲突了。
由于 iPhone 还连着 "Home"
Wi-Fi,所以 [SSID Setting] "Home" suspend = true
使得 Surge for iPhone 给流量无条件全放行了,到了网关 Mac,网关不在线,于是 iPhone 没网了。
由于 iPhone 连接的 Wi-Fi 没网,原本这正是 [General] wifi-assist = true
发挥作用的时候,应该自动尝试使用手机蜂窝网络。但是,实际上 [SSID Setting] "Home" suspend = true
更优先,于是整个 Surge for iPhone 都是暂停分流工作(类似全局 DIRECT
)的状态,wifi-assist
根本不会运行,这就尴尬了,不得不自己去做 [General] wifi-assist = true
该做的事——手动关 Wi-Fi,还得记着待会儿再手动改回来。
建议
提供一个个人偏好设置项,用来修改 "SSID" suspend
的无条件 Suspend。比如 [SSID Setting] do-not-suspend-when-wifis-down
?
提供一个个人偏好设置项,用来给 "SSID" suspend
开例外。比如 [SSID Setting] suspend-exception-respect-wifi-assist-when-wifis-down
?默认为 false
,而其为 true
时的效果是,在:
[SSID Setting] "SSID" suspend = true
,且
- 正在使用
"SSID"
Wi-Fi,且
"SSID"
Wi-Fi 网络不通时,
遵从 [General] wifi-assist
。(如 wifi-assist = true
,则尝试使用蜂窝网络;否则,维持现状——继续使用无网络 Wi-Fi。)