我正在寻找一种方法来实现windows 10移动热点的专用门户。这样做的目的是将连接到热点的所有设备重定向到网页。
我找到了这个文章,它展示了如何在linux中实现它。
但我一直没能找到类似的窗户。像这 one这样的帖子被证明是死胡同。
如果需要的话,我可以使用一个简单的nginx服务器给客户端302个重定向响应,但不喜欢使用任何实现闭锁门户的现有软件。
更新
我已经成功地在客户端(linux、笔记本电脑、android设备等)上触发了一个封闭门户。
每当设备连接到热点时,它都会向一些预定义的网站发送请求,以检查wifi连接是否具有互联网接入。如果获得302响应,则生成捕获门户窗口。
因此,我将以下条目添加到windows计算机上的主机文件中。
127.0.0.1 clients3.google.com #android
127.0.0.1 connectivitycheck.gstatic.com #android
127.0.0.1 nmcheck.gnome.org #ubuntu
然后,使用主机文件条目在本地解析这些请求,并将其发送到nginx服务器,nginx服务器将302重定向到所有http请求。
发布于 2020-03-13 07:43:15
我在上面的更新中提到的设置最终被调整以达到我想要的位置。我使用了德谢夫,一个开放源码的dns服务器,它作为命令行客户端完美地工作.接下来的步骤。
--fakeip = 192.168.137.1
启动就这样!当设备连接到热点时,它将尝试连接到用于确定internet连接性的任何预置网站。这些请求将在本地由dnschef解析到我们的Nginx服务器。然后,Nginx服务器提供302重定向,该重定向触发客户端上的捕获门户。
发布于 2022-02-06 14:17:26
我尝试了一种类似的方法,使用泼尼斯堡-代理,它提供专用的闭锁门户支持。因为,这只不过是dns伪装,有几种方法可以实现,对某些“连接检查”域的请求被定向到本地are服务器。
与公认的答案不同,我想出了一种更简单、更灵活的方法,使用windows主机文件,而不使用任何第三方 dns代理。我没有将连接检查域与本地主机相关联,而是将它们映射到物理wifi访问点ip地址(即192.168.137.1)。这导致wifi客户端直接向运行在本地pc上的webserver发送连接检查请求,并监听端口80上的所有连接。
主机文件:
192.168.137.1 captive.apple.com
192.168.137.1 clients3.google.com
192.168.137.1 nmcheck.gnome.org
192.168.137.1 connectivitycheck.gstatic.com
192.168.137.1 connectivitycheck.android.com
192.168.137.1 www.msftncsi.com
192.168.137.1 dns.msftncsi.com
192.168.137.1 www.msftconnecttest.com
192.168.137.1 ipv6.msftconnecttest.com
192.168.137.1 ipv4only.arpa
这个are服务器(在我的例子中是asp.net核心)将客户机重定向到登录页面,除非它们已经注册。在这种情况下,been服务器可能响应调用,就像“真正的”服务器一样,这些服务器位于连接检查域的后面,以便不重定向已经成功登录的客户端。
https://stackoverflow.com/questions/59926169
复制相似问题