net/mwan3: mwan3track skip track ips if realibility is accomplished

If enough tracking ip are pinged skip the reset. They are not needed
anymore to mark the interface as up.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
This commit is contained in:
Florian Eckert 2017-08-25 11:42:32 +02:00
parent cabb835ed4
commit ec5542ab2b

View file

@ -92,20 +92,24 @@ main() {
sleep_time=$interval
for track_ip in $track_ips; do
case "$track_method" in
ping)
ping -I $DEVICE -c $count -W $timeout -s $size -q $track_ip &> /dev/null ;;
arping)
arping -I $DEVICE -c $count -w $timeout -q $track_ip &> /dev/null ;;
httping)
httping -y $SRC_IP -c $count -t $timeout -q $track_ip &> /dev/null ;;
esac
if [ $? -eq 0 ]; then
let host_up_count++
echo "up" > /var/run/mwan3track/$1/TRACK_${track_ip}
if [ $host_up_count -lt $reliability ]; then
case "$track_method" in
ping)
ping -I $DEVICE -c $count -W $timeout -s $size -q $track_ip &> /dev/null ;;
arping)
arping -I $DEVICE -c $count -w $timeout -q $track_ip &> /dev/null ;;
httping)
httping -y $SRC_IP -c $count -t $timeout -q $track_ip &> /dev/null ;;
esac
if [ $? -eq 0 ]; then
let host_up_count++
echo "up" > /var/run/mwan3track/$1/TRACK_${track_ip}
else
let lost++
echo "down" > /var/run/mwan3track/$1/TRACK_${track_ip}
fi
else
let lost++
echo "down" > /var/run/mwan3track/$1/TRACK_${track_ip}
echo "skipped" > /var/run/mwan3track/$1/TRACK_${track_ip}
fi
done