【问题标题】:Is there a way to implement captive portal on windows hotspot?有没有办法在 Windows 热点上实现强制门户?
【发布时间】:2020-05-12 12:51:10
【问题描述】:

我正在寻找一种方法来为 Windows 10 - 移动热点实施强制门户。这个想法是将所有连接到热点的设备重定向到网页。

我找到了这个article,它展示了如何在 linux 中进行操作。

但我一直没有成功找到一个类似的 windows。像this 这样的帖子被证明是死胡同。

如果需要,我可以使用简单的 nginx 服务器向客户端提供 302 重定向响应,但不喜欢使用任何实现强制门户的现有软件。

更新

我已使用一种解决方法成功触发了客户端(Linux 笔记本电脑、Android 设备等)上的强制门户。

每当设备连接到热点时,它都会向一些预定义的网站发送请求,以检查 wifi 连接是否可以访问互联网。如果收到 302 响应,则会生成强制门户窗口。

所以我在 windows 机器上的 hosts 文件中添加了以下条目。

127.0.0.1 clients3.google.com  #android
127.0.0.1 connectivitycheck.gstatic.com  #android
127.0.0.1 nmcheck.gnome.org  #ubuntu

然后这些请求将使用 hosts 文件条目在本地解析并发送到 nginx 服务器,该服务器会为所有 http 请求提供 302 重定向。

【问题讨论】:

    标签: windows network-programming wifi-direct hotspot captiveportal


    【解决方案1】:

    我在上面 UPDATE 中提到的设置最终被调整到了我想要的位置。我使用了dnschef,这是一个开源的 dns 服务器,可以完美地用作命令行客户端。 步骤如下。

    1. 启动 windows mobile 热点。

    2. 转到网络适配器 => 选择热点适配器 => 更改 IPv4 设置 => 将 127.0.0.1 设置为 DNS 服务器。

    3. 使用--fakeip = 192.168.137.1 启动 dnschef
    4. 在 192.168.137.1 上启动一个 http 服务器,并对所有请求给出 302 重定向响应。

    就是这样!每当设备连接到热点时,它都会尝试连接到任何一个用于确定互联网连接的预设网站。这些请求将由 dnschef 在本地解析到我们的 Nginx 服务器。 Nginx 服务器然后给出一个 302 重定向,触发客户端上的强制门户。

    【讨论】:

    • 我只想说声谢谢...我已经研究了好几天了。因为你,我现在可以睡觉了。
    • 乐于助人:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    • 1970-01-01
    • 2012-05-19
    • 1970-01-01
    • 1970-01-01
    • 2010-10-09
    相关资源
    最近更新 更多