我需要至少有一个 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
。