![hostapd:建立新连接时执行命令](https://linux22.com/image/1491791/hostapd%EF%BC%9A%E5%BB%BA%E7%AB%8B%E6%96%B0%E8%BF%9E%E6%8E%A5%E6%97%B6%E6%89%A7%E8%A1%8C%E5%91%BD%E4%BB%A4.png)
我需要至少有一个 WiFi 网络连接存在时(来自客户端)启动任意守护进程。当此 AP 没有更多连接时停止任意守护进程。如何高效地做到这一点?现在我考虑轮询的结果hostapd_cli all_sta
,但这似乎很奇怪。我确信一定有一些可以挂钩的系统事件。
答案1
正如 @beemaster 所说,运行这个:
hostapd_cli -a '/onHostapdChange.sh'
使用脚本:onHostapdChange.sh
#!/bin/bash
if [[ $2 == "AP-STA-CONNECTED" ]]
then
echo "someone has connected with mac id $3 on $1"
fi
if [[ $2 == "AP-STA-DISCONNECTED" ]]
then
echo "someone has disconnected with mac id $3 on $1"
fi
答案2
目前我找到了以下解决方案:
hostapd_cli -a ‘some_script’
脚本接收网络接口名称和事件类型作为参数。这必须在hostapd
守护进程之后启动。还需要ctrl_interface
在 中进行设置hostapd.conf
。