浏览器检测强制门户 [HostApd]?

浏览器检测强制门户 [HostApd]?

我正在使用 hostApd 开发一个强制门户。我的机器提供 Wifi(无需密码),我计划让客户看到一个弹出窗口,说“你好”。你知道,就像 wifi 提供商的弹出窗口一样,要求积分或登录......

(注意:当客户端(顺便说一句,iPad 客户端)连接 wifi 时,我想打开我的机器本地网站。我不在乎让他们付费或登录)。

请问我该怎么做这样的事?有人说操作系统通过尝试 ping google.com 等来检测它,如果没有,它就知道该 portail 已被捕获并显示一个 html 弹出窗口。哪个网址? ...

谢谢

答案1

另请调查(并参与)IETF CAPPORT WG。 https://datatracker.ietf.org/wg/capport/about/

新的 ICMP、HTTP 回复和 DHCP 响应将可用。随着互联网转向 HTTPS,许多当前的方法将不再有效。

答案2

if ping -q -w 1 -c 1 $(ip r | grep default | cut -d ' ' -f 3) > /dev/null; then
    wget "http://clients3.google.com/generate_204?" -O /dev/null 2>&1 | grep "204 No Content" > /dev/null
    if [[ $? -ne 0 ]]; then
      # Perform login
    fi
fi

参考:

相关内容