(本帖子文字内容经过 Codex 润色)
今天遇到一个问题:Mac 解锁时远程连接正常,锁屏一段时间后,手机上的 Codex/ChatGPT 会显示 Mac 离线或连接超时。起初以为只在手机使用流量时发生,后来确认手机连 Wi-Fi 也会出现。
目前通过 Codex 找到一个处理办法,先分享排查过程,也想请其他用户和开发者帮忙确认原因。
我的环境:
- macOS 27.0.1 ,系统构建号 26A434 。
- Surge Mac 6.11.0 ,构建号 12560 。
- MacBook Pro 接着电源、保持开盖,远程连接和保持唤醒功能已开启。
问题不是锁屏后立即出现。其中一次在锁屏约 126 秒时,检查到以下情况:
- Mac 仍处于锁屏状态。
- 物理网卡的直连 TCP 、DNS 、TLS 测试正常。
- 通过 Surge 本地代理的请求出现 CONNECT 超时,经过系统隧道的请求也超时。
- Surge 进程出现了
PROC_FLAG_SUPPRESSED标志;同期 ChatGPT 和相关服务进程没有出现这个标志。
因此,目前怀疑问题与 Surge 被系统后台节能机制抑制有关。
这次采用的处理方法是,仅针对 Surge 禁用 App Nap:
defaults write com.nssurge.surge-mac NSAppSleepDisabled -bool YES
然后退出并重新打开 Surge 。没有更换代理节点,也没有调整原有策略组选择。
处理后进行了约 20 分钟的连续锁屏检查:Surge 没有再次出现上述抑制标志,未观察到桌面端云连接再次中断;结束时 Mac 仍锁屏,代理请求和云端入口的网络访问均正常。
不过,目前验证范围仍有限,暂时把它作为一个排查线索和临时处理办法分享,还不能认定为普遍适用的修复。
如果需要撤销这项设置,可以执行以下命令,再重新打开 Surge:
defaults delete com.nssurge.surge-mac NSAppSleepDisabled
以前相同使用方式没有遇到这个问题,今天更新了 macOS 系统才开始出现。