shell script para IPROUTE2
Preciso que alguem faça um script para mim para um balanceamento de carga que possuo..
a ideia é a seguinte...
tenho 2 links de internet aqui.. balanceados por um LInux com IPROUTE2..
se um link cair.. um script shell que ficara monitorando a interface de internet dos 2 roteadores devera remover uma das rotas que caiu da rota de balanceamento...
e continuar a ficar chegando se o link voltar.. ele tem que readicionar essa rota novamente...
detalhes: esse script precisa detectar que o link caiu via ping.. se o link cair.. ele executa um comando para remover uma das rotas do balanceamento.. porem.. depois dele remover essa rota.. o script nao pode ficar re-executando esse script para tirar a rota.. ate que o link volte.. deu para entender?
pois a ideia é deixar esse script em LOOP rodando a cada um intervalo de tempo.. tipo a cada 2 minutos.. se o link cair.. ele remove uma das rotas do linux.. porem.. depois na proxima execucao do script.. ele nao pode executar novamente essa remocao da rota.. pois ela ja foi feita.. e dae vai ficar dando erro.. blz?
interessados.. favor enviar mensagens privativas aqui no forum mesmo..
OBs.: Claro que esse trabalho será remunerado por mim. :-)
shell script para IPROUTE2
Ola..
Possuo algo parecido com o quer fazer...., vou te passa o script e vc modifica conforme sua necessidade:
#!/bin/bash
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/sbin
MISSED=0
Count=0
## Dá um salto de 6 pacotes no IP
while [ $Count -lt 6 ]; do
if ! ping -c 1 201.XXX.XXX.XXX ; then
((MISSED++))
fi
((Count++))
done
echo "Terminou"
## Se falhou em mais de 4 pacotes do ping então limpa as configurações ##
if [ $MISSED -ge 5 ]; then
Tuas_regras_para_Limpar (aqui é contigo)
fi
OBS-> adicionei o script no cron de 3 em 3 minutos...
O resto é contigo...
t+
shell script para IPROUTE2
blz cara.. vou testar...
mais isso faz a checagem de que comentei ?
se ele remover a regra .. depois que ele detectou que o link nao responde mais.. no proximo RUN do script.. ele nao vai tentar remover a regra novamente ?
ou ele checa se ja foi executado ?
esse é o meu maior problema hoje...
shell script para IPROUTE2
Vai sim, mas isso não vai ser um problema.. simplesmente vai rodar o script ou regras (como vc definir) para remoção do link novamente...
Você tbem pode adapta-lo....
[];
shell script para IPROUTE2
vc sabe se existe como fazer essa checagem ?
de repente gravar um log a palavra "Link OFF" e fazer ele ler esse log por esas linha antes de executar o comando ? se estiver LINK OFF no arquivo de log.. ele nao faz nada.. caso contrario.. se o ping responder .. ele adiciona a rota novamente ... e loga no arquivo "Link ON" .. e depois como o ping ira responder.. ele vai checar se existe a palavra "LINK ON" dentro do logfile.. se tiver.. ele nao faz nada..
vc tem ideia de como faz isso no shell script ?