6.13.2009

bash for networking (isp ha - internet)

Algunas veces, tuve que apoyarme en linux para automatizar algunas cosas en cisco, como conservar alta disponibilidad en conectividad hacia internet conservando tuneles VPN y servicios publicos (servidores), esto se hizo en coordinacion con American Registry for Internet Numbers (ARIN) para proveedores en USA. Bueno estos scripts en bash y expect me permiten gestionar redundancia con un segundo proveedor de internet disparados desde un linux dentro de la lan del headquarter.

Crontab cada minute : * * * * * su - robot -c "/home/robot/script"

#!/bin/sh
failover=$(cat /home/robot/value)
ping -c 3 65.113.250.177 > /dev/null
if [ $? -eq 0 ]; then
ds3=1
else
ds3=0
fi
hora=`(date +%m/%d/%Y-%H:%M:%S)`
if [ $ds3 -eq '0' ] && [ $failover -eq '1' ]; then
echo '0' > /home/robot/value
/home/robot/mail.ping.0
echo $hora "----- DS3 line is down" >> /home/robot/log
/home/robot/vpn.gainsville.tower
/home/robot/vpn.lima.tower
/home/robot/vpn.peoria.tower
/home/robot/vpn.kenosha.tower
fi
if [ $ds3 -eq '1' ] && [ $failover -eq '0' ]; then
echo '1' > /home/robot/value
/home/robot/mail.ping.1
echo $hora "----- DS3 line is UP" >> /home/robot/log
/home/robot/vpn.peoria.ds3
/home/robot/vpn.lima.ds3
/home/robot/vpn.gainsville.ds3
/home/robot/vpn.kenosha.ds3
fi

Para esto se tiene configurados un solo ASN y 2 routers con BGP

En otro post comentare los detalles de los scripts llamados ...y alli usare expect.
En otros posts podre mostrar que expect tiene diferemcias cuando se aplica a cisco devices y linux machines


No hay comentarios.:

Publicar un comentario