[FUG-BR] RES: RES: Alteração automatica de Rota Padrão
Leandro Keffer
keffer666 em gmail.com
Terça Novembro 23 09:18:47 BRST 2010
Bom dia pessoal, esse do script em python muito bom, e se for para
experimentar varios "sabores", segue um em shell, devendo ser modificado
para uso sem carp, e sim com as interfaces locais
#!/usr/local/bin/bash
# CARP
LINK1=8.8.8.8
LINK2=200.200.200.1
INT1="carp0"
INT2="carp1"
date="`date +%d-%m-%Y`"
SUCESSO=1
STATUS=`ping -c 1 -W 5 $LINK1 |grep loss |awk '{ print $7; }'`
if [ "$STATUS" = "100.0%" ]; then
SUCESSO=0
fi
if [ "$SUCESSO" = "0" ]; then
STATUS=`ping -c 1 -W 5 $LINK2 |grep loss |awk '{ print $7; }'`
if [ "$STATUS" = "100.0%" ]; then
SUCESSO=0
fi
fi
if [ "$STATUS" = "100.0%" ]; then
/sbin/ifconfig carp0 down
/sbin/ifconfig carp1 down
echo "`date` - LINK 1 Fora do ar" >>
/var/log/link/carp.txt
else
/sbin/ifconfig carp0 up
/sbin/ifconfig carp1 up
echo "`date` LINK 1 no ar" >> /var/log/link/carp.txt
fi
Att
Em 23 de novembro de 2010 08:49, Mario Augusto Mania <m3.bsd.mania em gmail.com
> escreveu:
> Ricardo.... o ifstated eh show.. mas acho q um daemonzinho fazendo os
> devidos "pings" e tomando a decisao seria melhor hein cara?
>
> m3:
>
> monitora_gatway.py
> -------------8<-------------
>
> #!/usr/bin/env python
>
> import re, os, time
>
> gw1 = '200.200.200.1'
> gw2 = '250.250.250.1'
>
> gw = gw1
> gw_novo = gw
>
> while True:
>
> ping1 = os.popen('ping -c 4 %s' % gw1).read()
> ping2 = os.popen('ping -c 4 %s' % gw2).read()
>
> expressao = '(?P<r>.)\ received\,'
> expressao = re.compile(expressao)
>
> rec_gw1 = expressao.search(ping1).group('r')
> rec_gw2 = expressao.search(ping2).group('r')
>
> if rec_gw1 != '0':
> gw_novo = gw2
> else:
> gw_novo = gw1
>
> if gw != gw_novo:
> os.popen('route delete default')
> os.popen('route add default %s' % gw_novo)
> gw_novo = gw
>
> time.sleep(30)
> -----------8<-------------------
> Coloca pra carregar /etc/rc.local com &
> Em 22 de novembro de 2010 20:23, Marcos Kurten Michels
> <kurten em matrix.com.br> escreveu:
> > Pessoal, alguém poderia postar um exemplo concreto dos arquivos de
> > configuração para este caso ?
> > Marcos
> >
> >
> > De: freebsd-bounces em fug.com.br [mailto:freebsd-bounces em fug.com.br] Em
> nome
> > de Carlos Eduardo G. Carvalho (Cartola)
> > Enviada em: segunda-feira, 22 de novembro de 2010 18:10
> > Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)
> > Assunto: Re: [FUG-BR] RES: Alteração automatica de Rota Padrão
> >
> > Ricardo, pela descrição do man o uso com carp é apenas um exemplo.
> Trata-se
> > de um daemon que executará um comando em resposta a uma mudança de status
> de
> > interfaces. Dentre os três exemplos mencionados há um que diz:
> > " or with
> > pf(4)<
> http://www.openbsd.org/cgi-bin/man.cgi?query=pf&sektion=4&arch=&apropo
> > s=0&manpath=OpenBSD+Current>to
> > test server or link availability and modify translation or routing
> > rules"
> > que é parecido com o que você quer. Pela descrição, porém, acho que deve
> > poder ser usado mesmo sem o pf, pois a descrição é bem genérica. Olhe
> também
> > o manual do arquivo de configuração:
> >
> > http://www.openbsd.org/cgi-bin/man.cgi?query=ifstated.conf&sektion=5
> >
> > Abs, Cartola.
> >
> > Em 22 de novembro de 2010 17:29, Ricardo - Listas <
> > ricardobvolpato em yahoo.com.br> escreveu:
> >
> >> Leandro,
> >> Pelo que vejo o ifstated utiliza o CARP e pelo que eu sei ele é
> utilizado
> >> quando existem dois firewall´s e cada um ligado em um link de internet.
> >> Quando o link do firewall primary cai o que esta de backup assume, ou
> > estou
> >> enganado?
> >> No meu caso tenho somente uma maquina e três placas de rede. Sis0 -> WAN
> >> (OI), rl0 -> WAN2 (Rádio) e rl1 -> LAN.
> >> Com o ifstated consigo implementar a situação proposta?
> >>
> >> Grato.
> >> Ricardo.
> >>
> >> -----Mensagem original-----
> >> De: freebsd-bounces em fug.com.br [mailto:freebsd-bounces em fug.com.br] Em
> nome
> >> de Leandro Keffer
> >> Enviada em: segunda-feira, 22 de novembro de 2010 16:40
> >> Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)
> >> Assunto: Re: [FUG-BR] Alteração automatica de Rota Padrão
> >>
> >> Voce pode optra por usar o Ifstated, ele serve justamente para esses
> fins,
> >> uma alternativa ao uso de scripts, segue o link abaixo (do openBSD mas
> >> existe ele no ports do FreeBSD tambem)
> >>
> >> http://www.openbsd.org/cgi-bin/man.cgi?query=ifstated&sektion=8
> >>
> >> Att
> >>
> >> Em 22 de novembro de 2010 16:27, Ricardo - Listas <
> >> ricardobvolpato em yahoo.com.br> escreveu:
> >>
> >> > Boa tarde lista, tenho hoje um link com a Oi via par
> >> > metálico e adquiri um link via rádio para redundância.
> >> >
> >> > Adquiri esse link via rádio pois o link da Oi de vez
> >> > enquanto está caindo e um tempo atrás ficou fora durante 3 dias.
> >> >
> >> > Tenho um Firewall com FreeBSD 6.4-STABLE + PF + IPFW,
> >> > possuo também um servidor de e-mail rodando pelo IP público da OI.
> >> >
> >> > Preciso que quando o link da Oi caia, a rota padrão do
> >> > FreeBSD seja alterada automaticamente para o link via rádio, eu havia
> >> > pensado em fazer isso através de um Shell script, porém me deparei com
> a
> >> > seguinte situação:
> >> >
> >> > Quando o link da OI down -> Altera a rota para o radio.
> >> > (Isso utilizando o ping para um determinado IP)
> >> >
> >> > Mas quando o link da OI ficar UP, como farei para
> alterar
> >> a
> >> > rota automaticamente para este link?
> >> >
> >> > Alguém possui alguma coisa pronta e de fácil
> >> implementação?
> >> >
> >> > Pensei talvez em configurar o Nagios em algum servidor
> >> > externo e fazer ele conectar pelo IP público da OI e alterar a rota,
> > será
> >> > que funcionaria?
> >> >
> >> > Alguém possui alguma dica?
> >> >
> >> >
> >> >
> >> > Grato.
> >> >
> >> > Ricardo
> >> >
> >> >
> >> >
> >> >
> >> >
> >> > -------------------------
> >> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> >> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >> >
> >> -------------------------
> >> Histórico: http://www.fug.com.br/historico/html/freebsd/
> >> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >>
> >> -------------------------
> >> Histórico: http://www.fug.com.br/historico/html/freebsd/
> >> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >>
> > -------------------------
> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> > ________________________________________
> > Nenhum vírus encontrado nessa mensagem.
> > Verificado por AVG - www.avgbrasil.com.br
> > Versão: 10.0.1153 / Banco de dados de vírus: 424/3272 - Data de
> Lançamento:
> > 11/22/10
> >
> > -------------------------
> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
>
>
>
> --
> Atenciosmente
>
> Mario Augusto Mania <m3BSD>
> -----------------------------------------------
> m3.bsd.mania em gmail.com
> Cel.: (43) 9938-9629
> Msn: mario em oquei.com
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
Mais detalhes sobre a lista de discussão freebsd