Di00_G33k
(usa FreeBSD)
Enviado em 13/07/2008 - 04:36h
Veja se isso quebra seu galho.
#!/bin/bash
PING="/bin/ping -qfc5"
${PING} mx.terra.com.br 1>/dev/null 2>/dev/null
# Se Falhar, retorna flag de erro.
if [ $? -gt 0 ]; then
ip route delete default
ip route add default via 200.200.200.220 dev eth0
ip route add 200.200.200.235 via 200.200.200.220 dev eth0
# Cria log informando a placa que a rota foi criada
date "+%d/%m/%Y %H:%M:%S ==> OK...Rota criada na interface eth0" >> /var/log/rota.log
${PING} mx.terra.com.br 1>/dev/null 2>/dev/null
if [ $? -gt 0 ]; then
ip route delete default
ip route add default via 200.200.200.220 dev eth1
ip route add 200.200.200.236 via 200.200.200.220 dev eth1
# Novamente cria log informando a placa que a rota foi criada
date "+%d/%m/%Y %H:%M:%S ==> OK...Rota criada na interface eth1" >> /var/log/rota.log
fi
else
date "+%d/%m/%Y %H:%M:%S ==> OK...Rota nao criada para interfaces eth0 e eth1" >> /var/log/rota.log
fi
Observações:
1) Veja se seu interpretador de comando é o bash, caso contrário troque-o em /bin/*
2) Troque os comandos correspondentes a criações de regras de rota de acordo com
o seu sistema. A que coloquei no script é somente um exemplo para sua referência.
3) Não sei como pretende trabalhar com esse script, mas se for o caso coloque-o
no cron pra ficar trabalhando de tempos em tempos, ou troque os if's do código
por while.
Boa sorte mano!