( las tildes fueron omitidas por el autor)

En el trabajo estamos monitoreando con “thetereal”  una interfaz de un equipo que posee mas 20mbps de trafico.

habia tenido la experiencia de usar tethereal en la consola para hacer debugs pequeños con esta herramiente me di cuenta que podria mantener monitoreada la interfaz de red deseada todo el tiempo redirigiendo la salida con “>“hacia un archivo de texto para posterior analisis.

El dilema es que el tethereal mostraba constantemente errores de Sef Fault, lo que hacia entonces  que el proceso se detuviera misteriosamente y era necesario una supervicion constante de dicho proceso.

Asi que aca dejo un Quick and Dirty Script que les puede servir para un caso similar en el que se desee mantener un proceso corriendo y matando el mismo de cada X segundos, para volverlo a levnatar.

#! /bin/bash  -x

## Lo matamos si ya existe
killall -9 tethereal
rm /tmp/tethereal.lock #Borro el archivo temp, que guarda el estado
export Y=1
export X=1
while [ $X -eq 1 ]
do
ps -ef | grep tethereal | grep -v grep | wc | awk ‘{print $1}’  > /tmp/tethereal.lock

# Envio 1 si el proceso esta activo o X si no lo esta
export LOCK=`cat /tmp/tethereal.lock`

if [ $LOCK == 1 ]; then
sleep 1
let Y=Y+1
else
if [ $LOCK -gt 1 ]; then
killall -9  tethereal
export Y=1
fi
nohup tethereal -VVVV  -i eth1  -t ad -R \
“tcp.port==123 and ip.addr==192.168.1.1″ >> /root/snif/snif.log &
echo “1″ > /tmp/tethereal.lock
export Y=1
fi
if [ $Y = 335 ]; then
killall -9 tethereal
echo “0″ > /tmp/tethereal.lock
export Y=1
fi
done

Trackback

no comment untill now

Add your comment now