有没有办法向连接到特定Wi-Fi网络的设备发送通知?
比如说,我有一个名为“我的Wi-Fi”的网络,它不安全,任何人都可以连接。这是一个公共网络。
可能有N个用户连接到“我的Wi-Fi”。这些用户可以进行任何类型的交易,例如在线支付。
现在,如果我想关闭或关掉“我的Wi-Fi”路由器或接入点,这些交易可能会失败。
因此,在关闭之前,我想向连接到“My Wi-Fi”网络的所有用户发送文本通知。(用户设备上没有任何类型的应用程序来推送通知。)
这可行吗?
有没有办法向连接到特定Wi-Fi网络的设备发送通知?
比如说,我有一个名为“我的Wi-Fi”的网络,它不安全,任何人都可以连接。这是一个公共网络。
可能有N个用户连接到“我的Wi-Fi”。这些用户可以进行任何类型的交易,例如在线支付。
现在,如果我想关闭或关掉“我的Wi-Fi”路由器或接入点,这些交易可能会失败。
因此,在关闭之前,我想向连接到“My Wi-Fi”网络的所有用户发送文本通知。(用户设备上没有任何类型的应用程序来推送通知。)
这可行吗?
目前没有标准的方法可以向连接到Wi-Fi网络的所有设备发送(推送)消息。如果有这样的方法,那么很容易找到规范并指出如何完成它。不幸的是,证明不存在某件事情是困难的。
正如您清楚地意识到的那样,如果他们的设备上开着一个由您控制的适当页面或应用程序,则可以这样做。您可以开发一个框架,要求用户登录并保持页面打开状态,或者在运行中的应用程序,以便连接到您的Wi-Fi。
鉴于您控制路由器,您物理上可以编写代码拦截通过路由器传输的数据包,并在发送到各个连接的设备的页面的HTTP中插入此类警告。这假定他们正在使用HTTP查看普通页面。当然,您也可以在其他协议中插入警告。根据您所在的司法管辖区,这可能是非法的,或存在其他法律问题。我认为这样做是一个糟糕的想法™。
我的建议是,你可以拦截HTTP请求并回复自定义的HTTP响应,其中包含一个横幅,提示路由器即将关闭。这样一来,任何正在进行的支付交易都会失败。希望能对你有所帮助。
这个问题没有统一的答案。这取决于您是否可以访问连接列表。如果您可以访问AP,则简化了事情。如果没有,您可以尝试向所有254个IP地址发送消息:192.168.1.[1-254]。
对于使用WinXP或更早版本连接的用户,您可以使用net send
发送消息
对于使用WinVista或更新版本连接的用户,您可以使用msg
发送消息
对于使用Linux连接的用户,您可以尝试:smbclient -M hostname message goes here
对于使用MAC连接的用户,我还没有看到过。