在接入点模式下在设备上重定向请求

NSj*_*nas 5 networking router raspberry-pi access-point

我有一个带有 wifi 加密狗的 Raspberry Pi,该加密狗配置为接入点模式(wifi 热点)。

当用户连接时,我想将他们输入的任何 url 重定向到指定的 IP(设备设置/配置页面)。我正在寻找与您在机场连接到公共热点时发生的情况类似的行为,并且您必须输入电子邮件或接受“条款和条件”才能浏览其他页面。

这可以在 pi 的分布上完成吗?

And*_*ese 8

您可以通过一小组iptables规则将所有流量重定向到您的 AP 地址的端口 80 和 443 来实现这一点:

# iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination localhost:80
# iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination localhost:80
Run Code Online (Sandbox Code Playgroud)

此外,您应该将 HTTP 服务器配置为将每个未知 URL 重定向到其起始页(这样,如果用户输入,http://www.example.com/path/to/specific/site您就不会从 AP 的网络服务器获得 404)。

对于看门狗解决方案(在第一次连接时重定向到特定页面),存在专用软件包,如WiFiDog