Switching de Conexiones (BASH)

Pequeño script que modifica el /etc/network/interfaces configurando la interfaz de manera dinámica y/o estática, mas que nada es una idea de como se puede aplicar a varias interfaces en caso de ser necesario, por ejemplo en caso de estar virtualizando maquinas con muchas interfaces o topologias con varias VM, etc…

En este caso particular, es para un cliente que posee 2 rangos de red en un mismo dominio broadcast, uno con DHCP y otro estatico, la topologia se muestra en la imagen.

#!/bin/bash
LAN="eth0";
GW="192.168.50.1";
NETMASK="255.255.255.0";
ADDRESS="192.168.50.2";
valor=0;
echo "#################################";
echo "######## Switching ISP ##########";
echo "#################################";
echo "";
echo "Seleccione a travez de que ISP desea conectarse a internet:"
echo "1- Fibertel";
echo "2- VPN";
echo "3- Salir";
read valor;
# Valido valor ingresado
while [ $valor -gt 3 -o $valor -lt 1 ];
do
echo "Valor Incorrecto, por favor elija una de las 3 opciones:";
read valor;
done
case $valor in
1)cd /etc/network
echo "#Configuracion Automatica echa con Script SWITCH-ISP" > interfaces;
echo "" >> interfaces;
echo "auto "$LAN >> interfaces;
echo "iface "$LAN" inet static" >> interfaces;
echo "address "$ADDRESS >> interfaces;
echo "netmask "$NETMASK >> interfaces;
echo "gateway "$GW >> interfaces;
echo "Reiniciando Configuracion....";
/etc/init.d/networking restart
cd /
ping $ADDRESS
echo "Configuracion exitosa!";
;;
2)cd /etc/network
echo "#Configuracion Automatica echa con Script SWITCH-ISP" > interfaces;
echo "auto "$LAN >> interfaces;
echo "iface "$LAN" inet dhcp" >> interfaces;
/etc/init.d/networking restart
cd /
ifconfig $LAN
echo "Configuracion exitosa!";
;;
3)echo "Saliendo....";;
*)echo "Opcion incorrecta, vuelva a ingresar";;
esac</div>
<div>