因为一些原因,我抹掉了 iPhone 上的所有设置和数据,而后拟从 iCloud 备份恢复手机状态。不过,在中国,去往 iCloud 的连接十分不稳定;于是恢复变得漫长无期,网友们也对此怨声载道 (1, 2, 3, 4)。
这里简单记录一下我观察到的现象以及解决方法。
现象
抹掉 iPhone 上的数据并重启后,随着设置助手到备份恢复的步骤。一般来说,此时会有如下一些选项:
- 从 iTunes 备份恢复
- 从 iCloud 备份恢复
- 设置为新的 iPhone
- 从 Android 手机迁移
当选择「从 iCloud 备份恢复」之后,需要登录 iCloud 对应的 Apple ID。随后开始进入恢复状态。然而,当我的 iPhone 进入此状态后,进度条一个小时内没有任何动静;进度条底下的状态提示持续停留在「预估时间」。之后无论连接什么样的 Wi-Fi 热点,这个现象都会重复发生。
于是,经验上可以认为,iPhone 并没有成功和 iCloud 服务器正确连接,或者连接后因为网络问题(本地网络问题或者网络中某个结点)导致数据无法正确传输。
解决
从上述怨声载道来看,虽然 Apple 在中国大陆地区架设了 CDN,然而并没有什么〇用。所以,我们必须想想别的办法。
现在的情况是,iPhone 借由 Wi-Fi 网络和 Apple 在中国大陆地区的服务器连接存在某种问题。我们的目的是要和 iCloud 服务器正确连接,然后恢复备份。
于是,解决问题的办法有两个:
- 排查问题,恢复网络通畅;
- 想办法绕过网络连接异常状态。
第一个办法,从上述怨声载道来看,并不可取。因为这可能是一个大范围的频繁发生的问题,甚至 Apple 也在官网发布了一个并没有什么〇用的帮助文本:插上电源,往死里等。所以,我们只能想办法绕过异常的网络连接。
通常,绕过异常连接的办法有以下几个:
- 挂 VXN,希望出口能绕过异常连接;
- 挂 PXXXY,希望出口能绕过异常连接;
- 对有 CDN 的服务,设置临近地区的 DNS,以解析得到网络连接无异常的 CDN 服务器并进行连接。
我暂时没有可用的 VXN,也不想让私密数据流量都依赖公开的匿名 PXXXY,所以修改 DNS 对我来说是最合适的解法。于是,问题就变成了:如何在 iPhone 初始化界面设置 DNS。
经过一番试(乱)验(按),我发现,成功连接上 Wi-Fi 之后,按下 Home 键会弹出一个菜单——这个菜单提供了更丰富地 Wi-Fi 设置的入口。进入之后,只需要点击已连接网络旁边的 (i)
,即可对 DNS 进行设置。
在这里,我检索到了港台地区使用的一些 DNS。传说中很有效的中华电信 DNS 在我这里并没有什么用,最终选择的香港主副 DNS 倒是有奇效:整个恢复过程在设置香港主副 DNS 之后,只用了 7 分钟就完成了。
主 DNS:202.45.84.58 地理位置:香港特别行政区
副 DNS:203.80.96.10 地理位置:香港特别行政区