60 lines
1.3 KiB
Bash
Executable file
60 lines
1.3 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
source scan-netdev
|
|
source test-variables
|
|
MY_DATE=`date +%Y-%m-%d_%H-%M-%S`
|
|
|
|
if [[ -n $1 ]] ; then
|
|
MTU=`echo $1 | sed 's/[^0-9]//g'`
|
|
if [[ "$MTU" != "" ]] ; then
|
|
MTU_P=" -s $MTU"
|
|
LABEL=".$MTU"
|
|
fi
|
|
fi
|
|
|
|
date >> $OUTPUT_DIR/ping.error.log
|
|
echo "stat-ping: start" >> $OUTPUT_DIR/ping.error.log
|
|
|
|
SERIAL=1
|
|
while [[ 1 ]] ; do
|
|
stat-bonding out | grep bond
|
|
for VLAN in {10..4000} ; do
|
|
if [[ -f /etc/netdev/vlan.$VLAN.csv ]] ; then
|
|
VLAN_CONF=`sed 's/#.*$//' /etc/netdev/vlan.$VLAN.csv \
|
|
| grep $SERVER_SERIAL `
|
|
else
|
|
continue
|
|
fi
|
|
if [[ -z $VLAN_CONF ]] ; then
|
|
continue
|
|
fi
|
|
IP_LIST=`sed 's/#.*$//' /etc/netdev/vlan.$VLAN.csv \
|
|
| cut -d ',' -f 3 \
|
|
| grep '^[0-9]' | sort`
|
|
FAILED=
|
|
OK_LST=
|
|
for IP in $IP_LIST; do
|
|
RCVD=`ping -c100 -W1 $MTU_P -f $IP \
|
|
| grep 'received'`
|
|
if grep 'errors' <<< $RCVD > /dev/null
|
|
then
|
|
FAILED="$FAILED $IP"
|
|
else
|
|
OK_LST="$OK_LST $IP"
|
|
fi
|
|
done
|
|
if [[ -n $FAILED ]] ; then
|
|
echo "$SERIAL vLAN $RED$VLAN$OFF failed: $FAILED "
|
|
date >> $OUTPUT_DIR/ping.error.log
|
|
echo "$SERIAL vLAN $VLAN failed: $FAILED " \
|
|
>> $OUTPUT_DIR/ping.error.log
|
|
if [[ -n $OK_LST ]] ; then
|
|
echo "$SERIAL vLAN $GRN$VLAN$OFF Ok: $OK_LST"
|
|
fi
|
|
else
|
|
echo "$SERIAL vLAN $GRN$VLAN$OFF: Ok all"
|
|
fi
|
|
done
|
|
echo
|
|
sleep 1
|
|
done
|