Скрипт проверяет доступность узла исходя из ответов на пинги.
Скрипт был написан для проверки состояния подключения к интернету исходя из количества потерь и среднего времени ответа от пингуемого хоста. В последствии скрипт был переработан для массового использования в корпоративной сети.
Скрипт был написан для проверки состояния подключения к интернету исходя из количества потерь и среднего времени ответа от пингуемого хоста. В последствии скрипт был переработан для массового использования в корпоративной сети.
#nano -w /etc/mrtg/ping.sh
#!/bin/sh
VARI=`/bin/ping -c 50 -s 1492 $1 -q -i 0.2`
ERR=`echo $VARI | grep -i "errors"`
if [ -z "$ERR" ]; then
#echo "-z ERR ошибок небыло"
LOSS=`echo $VARI | awk '{print $18 }' | tr -d %`
else
#echo " -z ERR false ошибки были"
LOSS=`echo $VARI | awk '{print $20 }' | tr -d %`
fi
echo $LOSS
if [ $LOSS = 100 ]; then
echo 0
else
echo $VARI | awk -F/ '{print $5 }'
fi
echo `date +%s`
VARI=`/bin/ping -c 50 -s 1492 $1 -q -i 0.2`
ERR=`echo $VARI | grep -i "errors"`
if [ -z "$ERR" ]; then
#echo "-z ERR ошибок небыло"
LOSS=`echo $VARI | awk '{print $18 }' | tr -d %`
else
#echo " -z ERR false ошибки были"
LOSS=`echo $VARI | awk '{print $20 }' | tr -d %`
fi
echo $LOSS
if [ $LOSS = 100 ]; then
echo 0
else
echo $VARI | awk -F/ '{print $5 }'
fi
echo `date +%s`
#chmod a+x /etc/mrtg/ping.sh
Для использования скрипта запуск производится в виде скрипт_IP
#/etc/mrtg/ping.sh 127.0.0.1
0 # процент потерь
0.058 # среднее время отклика
1296468051 # штамп времени
Следует отметить, что в скрипте указан достаточно большой размер пакета, поэтому для проверки на некоторые интернет ресурсы следует уменьшить размер пакета.
#/etc/mrtg/ping.sh 127.0.0.1
0 # процент потерь
0.058 # среднее время отклика
1296468051 # штамп времени
Следует отметить, что в скрипте указан достаточно большой размер пакета, поэтому для проверки на некоторые интернет ресурсы следует уменьшить размер пакета.
Комментариев нет:
Отправить комментарий