Mudar Rota [RESOLVIDO]

1. Mudar Rota [RESOLVIDO]

Jakson Wilker
jaksonwkr

(usa CentOS)

Enviado em 06/10/2013 - 18:59h

ai galera to precisando de uma ajuda nesse script
a ideia é basicamente ficar testando a interface principal se o link cair ele troca a rota para a secundária, e continua testando a interface principal pra ver se o link volta, se voltar ele retorna a rota padrão.
queria umas dicas para melhorar o script, tipo utilizar outra ferramenta para testar a conexão em vez do ping e se tem como descobrir meu gateway em vez de definir no "braço"

#!/bin/bash


#INTERFACES
DEV_PADRAO="eth0"
DEV_ATUAL=$DEV_PADRAO
DEV_NOVO="wlan0"

RT_PADRAO=192.168.0.1
RT_NOVA=192.168.0.1

mudaRota () {
echo -n " Excluindo rota antiga..."
/sbin/route del default &>/dev/null && ok || fail
echo -n " Inserindo nova rota..."
/sbin/route add default gw $1 dev $2 &>/dev/null && ok; return 0 || fail; return 1
}

testaConecxao () {
if ping -c2 -s 10 -I $1 8.8.8.8 &>/dev/null; then
return 0
else if ping -c2 -s10 -I $1 uol.com.br &>/dev/null; then
return 0
fi
fi
return 1
}

ok (){
echo -en "\{TEXTO}33[60G [ \{TEXTO}33[32m OK \{TEXTO}33[0m ]"
echo
}

fail (){
echo -en "\{TEXTO}33[60G [ \{TEXTO}33[30m FALHA \{TEXTO}33[0m ]"
echo
}


while true; do
if [ $DEV_ATUAL = "eth0" ]; then
echo -n "Testando $DEV_ATUAL..."
if ! testaConecxao $DEV_ATUAL; then
fail
echo "+++++++++++++++++++++++++++++++++++++++"
echo " Link Principal Caiu!"
mudaRota $RT_NOVA $DEV_NOVO && DEV_ATUAL=$DEV_NOVO
echo "+++++++++++++++++++++++++++++++++++++++"
continue
fi
ok
else
echo "Testando LINK Principal: $DEV_PADRAO..."
if testaConecxao $DEV_PADRAO; then
ok
echo
echo "+++++++++++++++++++++++++++++++++++++++"
mudaRota $RT_PADRAO $DEV_PADRAO && DEV_ATUAL=$DEV_PADRAO
echo "+++++++++++++++++++++++++++++++++++++++"
echo
else
echo -n "Testando $DEV_ATUAL..."
if ! testaConecxao $DEV_ATUAL; then
echo "OS 2 LINKS ESTÃO FORA!!!"
/sbin/ifconfig $DV_PADRAO down
/sbin/ifconfig $DV_NOVA down
sleep 60
/sbin/ifconfig $DV_NOVA up
/sbin/ifconfig $DV_PADRAO up
continue
fi
ok
continue
fi

fi
done


  


2. MELHOR RESPOSTA

Roberto Costa
asparion

(usa Ubuntu)

Enviado em 06/10/2013 - 19:25h

Boa noite.
eu uso um script que nao falha
http://www.vivaolinux.com.br/script/Redundancia-de-dois-links-de-internet

da uma olhada.
abraçoss

3. Re: Mudar Rota [RESOLVIDO]

Jakson Wilker
jaksonwkr

(usa CentOS)

Enviado em 06/10/2013 - 19:49h

vlw!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts