Monitorar Rede com script


Primeiramente gostaria de salientar que não sou o autor principal do conteúdo deste artigo. A minha intenção é de mostrar o que outros autores tem realizado (referenciando links para o conteúdo original) neste blog até como um guia pessoal para uso próprio e ainda compartilhar minhas anotações e pequenas modificações que realizo no conteúdo, desejando que possa ajudar mais alguém em algum lugar.
First and foremost, I take no credit for any of this post’s content. I am really just taking what others have done (which I have links to bellow) and am putting it on my blog for a personal reference and hopefully the small changes that I made to their guides will help someone somewhere.


Tem vários scripts por ai:

Estou analisando a utilização deste:
#!/bin/bash
# no ping request
COUNT=4
for hosts in $(cat ~/hosts.txt); do
for myHost in $hosts
do
count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ $count -eq 0 ]; then
echo "Rb: $myHost apresenta-se offline em $(date)" >> ~/ping.log
fi
done
done

e este:

#!/bin/bash
data=`date`
if ping -c2 172.17.3.119 2>&1 >/dev/null; then
echo "MICRO 1 OK - $data" >> /var/log/messages; else
echo "MICRO 1 FORA - $data" >> /var/log/messages; fi
if ping -c2 172.17.0.1 2>&1 >/dev/null; then
echo "MICRO 2 OK - $data" >> /var/log/messages; else
echo "MICRO 2 FORA - $data" >> /var/log/messages; fi


e este:
_arquivo="/tmp/teste.de.ping" # arquivo tmp
_dns="208.167.222.222" # DNS da conexao para teste
_tempo="1" # tempo do ping
_timestamp="$(date +%d-%m-%Y_%H:%M)"
# pinga um dns para conferir se esta online
ping -c $_tempo $_dns|sed -n '/[123456789] received/p' > $_arquivo
if [ ! -s $_arquivo ]
then
echo $_timestamp Fora do ar >> /tmp/checagem.log
fi

e acabei fazendo este:
TODO

Para colocar no crontab faça o seguinte:

Escolha o editor do crontab com o comando:
sudo update-alternatives --config editor

E inclua a rotina:
sudo crontab -e

TODO


O URL específico do gadget não foi encontrado



Comments