Soluzione 1:
Per vedere i client wifi associati, anche se non hanno un client DHCP o non hanno ip, devi chiedere all'AP i dispositivi wifi associati:
# Universal (Tested with OpenWRT 14.07 and 15.05.X)
iwinfo wlan0/wl0/ath0 assoclist
# Proprietary Broadcom (wl)
wl -i wl0 assoclist
# Proprietary Atheros (madwifi)
wlanconfig ath0 list sta
# MAC80211
iw dev wlan0 station dump
In questo modo vedrai anche la velocità di connessione. Per me questo è simile a questo:
# iwinfo wlan0 assoclist
12:34:56:78:9A:BC -26 dBm / -95 dBm (SNR 69) 1930 ms ago
RX: 24.0 MBit/s, MCS 0, 20MHz 3359 Pkts.
TX: 130.0 MBit/s, MCS 14, 20MHz, short GI 1209 Pkts.
Soluzione 2:
È possibile utilizzare arp-table o DHCP-lease. Non è una soluzione perfetta, forse è sufficiente?
Elenca arp-table
arp
Elenca i lease DHCP
cat /tmp/dhcp.leases
... e combinato
for ip in $(arp | grep -v IP | awk '{print $1}'); do
grep $ip /tmp/dhcp.leases;
done
Soluzione 3:
Invece di cat /tmp/dhcp.leases|wc -l
e arp -a
, la mia soluzione è
opkg update
opkg install arp-scan
arp-scan --interface=br-lan --localnet | grep responded | awk '{print $12}'
Restituirà il numero di dispositivi connessi a OpenWRT tramite la porta LAN. Quasi in tempo reale.