如何阻止/断开连接到开放式WiFi热点的客户端(Android)?

5
我能够在Android 2.2中以编程方式创建一个开放式的WiFi热点,并使用ARP文件读取已连接客户端的IP和MAC地址:代码在这里。现在,我想找到一种限制WiFi热点使用的方法。我想使用一个开放式网络而不设置任何密钥。可以阻止某些客户端(也许是MAC过滤)或断开已连接但未经授权的客户端。这个想法是通过WiFi连接向热点发送消息。有些客户端应该被允许访问热点,而其他客户端则不行。我该如何开发类似的东西?我将感激您的帮助和建议。
2个回答

0

使用MAC过滤可能是一种选择,但客户端始终可以更改其MAC地址,并且使用此方法只能在客户端连接时阻止。如果您想要断开客户端的连接,则需要使用deauth数据包。

在Android中有一个名为wifikill的应用程序可用于发送deauth数据包。

http://forum.xda-developers.com/showthread.php?t=1282900

在这个应用程序中,您可以选择要断开连接的客户端,安卓设备将执行deauth攻击。
你可以尝试开发一些东西,但是这个应用对我来说非常成功。
但是,如果您使用开放网络,即使您断开连接客户端,控制访问也会非常棘手,因为他们总是可以更改自己的MAC地址并尝试像合法用户一样看起来。在开放网络中,您永远无法100%控制客户端。

0

您可以使用现有的Android SoftApConfiguration.Builder#setBlockedClientList链接)通过MAC地址来实现。

更多信息请参见官方文档此处

实现允许和阻止列表

典型的运营商要求是提供用户控制可以关联到软AP的设备。 有几种机制可以实现这一点:

...

提供允许和阻止列表的动态控制:

Soft AP的默认配置允许所有设备关联到软AP,除了将其MAC地址添加到SoftApConfiguration.Builder#setBlockedClientList中的设备。...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接