iPhone提示:无线局域网似乎未接入互联网,您要暂时使用蜂窝数据吗?
iPhone手机内部自带了一些探测机制,在刚连上Wi-Fi、刚解锁、以及使用过程中,会不定时对苹果服务器发起http探测,用于诊断网络连通性。而netcts.cdn-apple.com是升级iOS 13.x后新增的域名。
正常交互流程:抓取iPhone与netcts.cdn-apple.com正常探测的报文,交互流程如下图,iPhone对服务器发起http请求,接着服务器回复一个较长聚合报文,之后服务器和iPhone之间一应一答,交互多个来回,最终完成探测,iPhone端未弹窗提示。
异常交互流程:在服务器丢包时,抓取到终端异常交互流程,如下图所示,终端发起http探测,服务器仅回复了第一个聚合报文,之后终端发起后续报文,服务器无应答。在终端多次尝试服务器无回应时,最终认为是Wi-Fi网络出现问题,触发弹窗提示。
当iOS设备连接到一个Wi-Fi网络,但是无法通过该网络访问互联网时,系统会自动弹出提示询问用户是否要切换到蜂窝数据。这是一个系统级别的功能,开发者无法通过应用层的代码来改变或阻止这种系统级别的提示。