有没有一种编程方式或标准方法来断开某人与路由器的连接?

时间:2014-10-15 08:56:56

标签: networking wifi

我有一个应用程序,我需要允许用户连接到未连接到互联网的WiFi路由器,与某些东西进行交互5-10分钟然后断开连接。由于路由器的AP只能处理一定数量的用户,如果用户没有断开与路由器的连接,最终会阻止其他用户连接到系统。

所以,当他们完成系统时,我想把它们从路由器上踢掉。

为了描绘更清晰的画面,想象一下这是博物馆的导游。当他们完成巡演之后,如果我能断开它们将会很棒。否则他们可能只是把手机放在口袋里,坐在咖啡馆里用一个AP插槽一小时,而其他客人则没有。我怀疑大多数用户无论如何都会关闭博物馆的WiFi,因为旅行的WiFi没有互联网但是如果我能把它踢开,它仍然让我感到好奇。也许还会记录他们的MAC地址,这样他们就无法重新开启一两分钟,这样他们的手机就可能会通过互联网切换到咖啡馆的WiFi,而不仅仅是重新连接到博物馆的

除了低级编程,我自己的路由器AP从头开始有没有标准的方法来做到这一点?特定路由器的某些协议或特定品牌或固件是否可以提供编程方式?

当然,我可以轻松运行自己的DHCP服务器但是,据我所知,在DHCP上查杀它们的IP地址不会在路由器AP的较低层断开连接。

2 个答案:

答案 0 :(得分:0)

这个问题可以从几个角度解决:

  • 从AP方面。 如果您的路由器支持具有时间限制的访客网络,这可能是实现您所需要的最简单,最直接的方法 - 只需转到路由器设置并进行配置。

  • 从客户端。 根据您的操作系统,您有一组API来控制连接。您可以在应用程序中使用这些API,并在用户超出其时间限制时断开链接。

  • 使用代理。在互联网上搜索代理软件,时间限制设置可能包含在其功能中(想想连接到需要授权的公共热点的常见用例 - 后台有一个代理控制您可以使用的内容实际上,这非常类似于你自己的用例。)

答案 1 :(得分:-1)

Wifi路由器内部有DHCP服务器,用于为无线客户端提供IP地址。在路由器上设置DHCP服务器的租用时间可能是标准的。

如果您的用户平时互动5-10分钟,则默认租约时间设置20-30分钟就足够了。

如果您的用户互动最多1-2小时,那么设置最长租用时间3小时就足够了。

对于有连接的用户,租约时间自动添加到最长租约时间,长时间用户可能不会注意到他们的连接已断开连接。