Em vez de catar o arquivo a cada vez, use:
tail -f t-01.csv | grep '30:F1:DA:7B:F3:2C' | cut -d ',' -f5'
e o resto do script é o mesmo.
Eu estou querendo monitorar um endereço MAC para atividade na minha rede usando airodump-ng
Atualmente estou:
Primeiro, execute isso:
airodump-ng mon0 --write t
que grava no arquivo t-01.csv
a csv com o formato:
Station MAC, First time seen, Last time seen, Power, # packets, BSSID, Probed ESSIDs
então eu tenho um script bash que faz isso:
while [ true ]
do
t='cat t-01.csv | grep '30:F1:DA:7B:F3:2C' | cut -d ',' -f5'
if [[ "$t" != "$lt" ]]
then
lt="$t"
echo "activity"
fi
done
O que é basicamente observar o endereço MAC para uma mudança no # packets
e quando ele muda significa que houve alguma atividade. Mas o airodump-ng
parece ter um imenso atraso ao gravar em um arquivo (cerca de 1-2 segundos). Existe uma maneira alternativa de fazer isso, que é mais rápido?
Eu posso escrever um script como:
#!/bin/bash
tcpdump -i mon0 ether host "30:F1:DA:7B:F3:2C" | while read b; do
echo "Activity!"
done
Em vez de catar o arquivo a cada vez, use:
tail -f t-01.csv | grep '30:F1:DA:7B:F3:2C' | cut -d ',' -f5'
e o resto do script é o mesmo.