Captive Portal 认证流程 - 基于 DNS 污染

本文详细描述了一个基于DNS污染的CaptivePortal认证流程,涉及DNS解析、请求转发及用户认证。初次接入时,客户端通过DNS查找验证网络,然后转至自定义认证页面;非首次认证则依赖于之前的认证记录。列举了部分设备验证网络地址的示例。

Captive Portal 认证流程 - 基于 DNS 污染

全局说明

本认证流程基于已有项目扩展。

本认证项目分两部分,分别为:

  1. self-dns 31573 DNS解析、请求转发等
  2. self-auth 31574 用户认证等

以下,用户统称为 client,服务器统称 server,服务地址统称 IP,自定义认证页简称 Portal。

认证流程

首次认证

  1. client 接入 wifi,并通过浏览器访问网站,如访问 baidu.com,
    若此时无网,则 client 设备将主动访问其自身配置的地址验证网络是否可用。
    部分设备验证网络地址见附录1。

  2. server self-dns 启动 UDP:53 端口监听,当其匹配到设备验证网络地址时,
    将请求转发到自定义认证 Portal。

  3. client 通过 Portal 发送认证请求到 self-auth 进行校验,校验成功后开通网络访问

非首次认证

  1. 同首次认证1
  2. 同首次认证2
  3. 同首次认证3
  4. 检查认证记录,若已认证成功,则转发请求到 baidu.com,client 完成请求目标地址

附录

  1. 部分设备验证网络地址
http://connect.rom.miui.com/generate_204
https://connect.rom.miui.com/generate_204
http://connectivitycheck.platform.hicloud.com
http://edge.microsoft.com/captiveportal
http://captive.apple.com/hotspotdetect.html
http://connectivitycheck.android.com
https://captive.v2ex.co
http://clients3.google.com/generate_204
http://connectivitycheck.gstatic.com/generate_204
https://www.google.com/generate_204
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

差点GDP

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值