关于Apple的Captive Network Assistant

Captive Network Assistant(CNA)是Apple设备在连接WiFi后自动检测网络是否需要登录的功能。当检测到Captive Portal时,iOS和Mac OS会打开登录页面。CNA通过发送特定HTTP请求并检查响应来判断网络状态。如果响应不正确,iOS可能会显示登录页面或断开SSID。未正确配置的网络可能会导致连接问题,需要开放www.apple.com的访问权限或支持避开CNA检测。
摘要由CSDN通过智能技术生成

在WIFI的应用场景中,有个很典型的应用,叫做Captive Portal,也叫Captive Web Portal(CWP)。

大致流程是:

  1. 用户的移动设备(例如手机)接入WIFI。
  2. 打开任意网页。
  3. 得到一个类似Login的页面,需要用户填写一些信息,然后提交。
  4. 认证通过后,允许自由访问网络,否则无法上网。

电信、移动等运营商经常会推出一些市区里的WIFI,很多用的就是这种方式。还有像机场等地。有个典型的应用,就是杭州的ihangzhou

iOS,还有Mac OS,都有个功能,当接入无线网络后,会自动检测网络是否通。如果不通,则会自动弹出一个页面,让用户去登录。

Apple把这种功能叫做Captive Network Assistant(CNA)。

其原理如下:

  1. 发送一个HTTP/1.0的请求到 http://www.apple.com/library/test/success.html 
  2. 接收一个回应,如果回应跟它预计的结果一致,那么认为网络是通的,就不会自动弹出页面。同时,状态栏的WIFI图标出现。流程结束。否则,进入下一步。
  3. 如果收到的回应不是它想要的那个,它就认为有CWP存在。
  4. 如果有CWP存在,iOS就会自动打
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值