как получить список подключенных клиентов wifi в OpenWrt 10.03?
как получить список подключенных клиентов wifi в OpenWrt 10.03?
Ответы:
Вы можете использовать arp-таблицу или DHCP-аренду. Не идеальное решение, может быть, этого достаточно?
Список арп-таблиц
arp
Список DHCP-аренды
cat /tmp/dhcp.leases
... и вместе
for ip in $(arp | grep -v IP | awk '{print $1}'); do
grep $ip /tmp/dhcp.leases;
done
Чтобы увидеть связанные клиенты Wi-Fi, даже если они не имеют клиента DHCP или не имеют IP-адреса, необходимо запросить у точки доступа соответствующие устройства Wi-Fi:
# 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
Таким образом, вы также увидите скорость соединения. Для меня это выглядит так:
# 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.
Как насчет nmap?
opkg install nmap
Затем выполните скрытое сканирование вашей подсети (вероятно, 192.168.1.0/24).
nmap -sS 192.168.1.0/24
В этом списке будут перечислены службы, работающие на клиентах. Он также может отключить сигналы тревоги, если на клиенте установлено программное обеспечение для обнаружения сканирования портов (например, snort), поэтому будьте осторожны.
Чтобы получить их напрямую hostapd
(демон, управляющий точкой доступа):
$ ubus call hostapd.wlan0 get_clients
{
"freq": 2462,
"clients": {
"<mac addr 1>": {
"auth": true,
"assoc": true,
"authorized": true,
"preauth": false,
"wds": false,
"wmm": true,
"ht": true,
"vht": false,
"wps": false,
"mfp": false,
"rrm": [
0,
0,
0,
0,
0
],
"aid": 1
}
}
}
(или заменить wlan0
на интересующий вас интерфейс)