From: Flavio Junior
Subject: Re: [GTER] Failover de link ADSL
To: Grupo de Trabalho de Engenharia e Operacao de Redes
Message-ID:
<58aa8d780903191030v89842abo6c09c76d90fa1b78@mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1
As rotas ser?o removidas quando as interfaces forem baixadas pelo
script, antes de rodar o dhclient na placa que deve assumir o link...
Vamos a um caso extremamente simples, um script:
#!/bin/bash
#
# Links por eth
ADSL=eth1
EBT=eth2
# Descobrindo link atual
LinkAtual="$(awk '$1~/0.0.0.0/{print $NF}' < <(route -n))"
# Hosts de teste
HOST[0]="200.160.2.3" # registro.br
HOST[1]="$(awk '$1~/0.0.0.0/{print $2}' < <(route -n))"
LinkStatus="DOWN"
for host in ${HOST[@]}; do
ping -c2 -w2 -q $host >/dev/null 2>&1
if [ $? -eq 0 ]; then
exit 0
fi
done
if [ "$LinkStatus" == "DOWN" ]; then
ifdown $ADSL || ifconfig $ADSL down
ifdown $EBT || ifconfig $EBT down
if [ "$LinkAtual" == "$ADSL ]; then
ifup $EBT || dhclient $EBT || dhcpcd $EBT
else
ifup $ADSL || dhclient $ADSL || dhcpcd $ADSL
fi
fi
## FIM DO SCRIPT
Isso ta grosseiro e eu escrevi diretamente aqui no e-mail...
A ideia do funcionamento eu acho que ta correta, ou seja:
1. Executa testes no link atual
2. Se o link estiver fora, DESATIVA AS PLACAS DE REDE DE INTERNET e
reativa a do OUTRO link (dhclient)
2. Se o link estiver OK, ignora o restante do script
Veja que eu considerei o gateway como um host de teste, nem todos
cenarios s?o assim, muitas vezes a internet cai e o gateway ainda
responde ping, ou ent?o o gateway se torna um IP de LAN que o modem
forneceu via DHCP e assim responde ping..
Tu pode por 2, 3, 4, X hosts ali pra testar... Qto mais testes, mais
tempo o script executa..
O caso agora seria por isso no crontab:
*/5 * * * * /usr/local/bin/script_ninja_linkswitch.sh
--
Fl?vio do Carmo J?nior aka waKKu
2009/3/19 Alexandro Corr?a - SulSoft
> Sobre essa quest?o de rotas criadas pelo DHCLIENT, depois de adquirir o IP
> eu costumo rodar um script que remove todas as rotas e cria novamente
> conforme minhas necessidades.
> Tem funcionado bem at? o momento...
>
> Atenciosamente,
>
> ? ? ? ?Alexandro Corr?a
> Tecnologia da Informa??o
> alexandro@sulsoft.com.br
> Fone/Fax: +55 (51) 3333-1581
>
>
> "Esta mensagem pode conter informa??o confidencial e/ou privilegiada. Se
> voc? n?o for o destinat?rio ou a pessoa autorizada a receber esta mensagem
> n?o pode usar copiar ou divulgar as informa??es nela contidas ou tomar
> qualquer tipo de a??o baseada nessas informa??es. Se voc? recebeu esta
> mensagem por engano por favor avise imediatamente o remetente respondendo o
> e-mail e em seguida apague-o."
>
>
> bruno@openline.com.br escreveu:
>>
>> --- Leonardo Amaral
>>
>>>
>>> Mas quando der o DHClient na primeira interface ele n?o "come"
>>> a rota da primeira?
>>>
>>
>> na verdade fica com 2 rotas...
>>
>> o que voc? pode fazer ? alterar o script que "sobe" a rota
>> (o dhclient chama um script pra setar interface e rota)
>> e guardar o gateway num arquivo
>>
>> dai quando precisar mudar, verifica o arquivo e muda de
>> acordo
>>
>> pode no down do dhclient tamb?m remover o arquivo para
>> saber que este est? down
>>
>> []s, !3runo
>>
ADSLリンクの冗長化について。
ISPのエンジニアの議論というよりも、家庭内サーバ管理者の技術メーリングリストのような時もある。それもまた面白い。
0 件のコメント:
コメントを投稿