我想知道我是否可以检测到连接到使用 dnsmasq 和 hostapd 创建的接入点的电台(客户端)的断开连接 wlan0 界面。
到目前为止,我找到的最佳解决方案是使用以下命令
iw dev wlan0 station dump
问题是,当我拔下所连接设备的电缆时,该命令仍会显示设备已连接,同时增加“非活动时间”值。
PS。连接的设备是ESP8266模块。
任何提示都表示赞赏。谢谢!
答案 0 :(得分:1)
您不能仅使用hostapd或iw工具,因为它认为设备将在一段时间后再次可以访问。
您需要(或至少,就像我的方式)检查是否仍然可以使用extern命令来访问工作站,例如ping。
就我而言,我使用ip neigh show dev wlan0 nud reachable nud delay
并将mac地址与iw dev wlan0 station dump
答案 1 :(得分:0)
您可以监控系统日志,例如在openwrt上报告:
Aug 26 21:41:19 192.168.0.245 hostapd: wlan0-1: STA aa:aa:aa:aa:aa:aa IEEE 802.11: deauthenticated due to REASON
原因之一(至少我发现了这些原因):
Aug 26 19:00:00 192.168.0.1 hostapd: wlan0: STA aa:aa:aa:aa:aa:aa IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Aug 26 19:00:00 192.168.0.1 hostapd: wlan0: STA aa:aa:aa:aa:aa:aa IEEE 802.11: deauthenticated due to local deauth request
Aug 26 19:00:00 192.168.0.1 hostapd: wlan0: STA aa:aa:aa:aa:aa:aa IEEE 802.11: deauthenticated due to inactivity
要使其正常工作,您必须监视工作站是否已成功连接,例如
Aug 26 19:00:00 192.168.0.1 hostapd: wlan0: STA aa:aa:aa:aa:aa:aa WPA: group key handshake completed (RSN)