1 Linux com 2 Gateways

1. 1 Linux com 2 Gateways

Igor Valsichi
igorov

(usa Debian)

Enviado em 04/05/2012 - 10:22h

Pessoal, gostaria de saber se alguem ja fez a seguinte configuracao:


1 Linux com 3 placas de rede
1 Conexao Speedy (PPPoE) (GATEWAY 1) eth1
1 Conexao Virtua (DHCP) (GATEWAY 2) eth2
1 Conexao Local eth0

Gostaria de compartilhar a internet com a rede porem da seguinte forma:

TODOS acessam a internet pela eth1 e SE CASO o speedy cair transfere automaticamente pro VIRTUA eth2

Alguma forma de ficar por exemplo pingando o gateway do speedy e no caso de demorar o retorno o q significa que provavelmente caiu a conexao... ele roda um script pra inverter o gateway.

Alguem ja fez isso?

Lembrando que nao quero fazer LOAD BALANCE..

OBrigado,

Igor


  


2. Re: 1 Linux com 2 Gateways

Perfil removido
removido

(usa Nenhuma)

Enviado em 04/05/2012 - 10:30h

Tu quer fazer um Failover né.

Dá uma olhada:
http://www.vivaolinux.com.br/artigo/Failover-de-Internet


3. Re: 1 Linux com 2 Gateways

Nicolas Wildner
nwildner

(usa Red Hat)

Enviado em 04/05/2012 - 10:49h

E para "incrementar" essa matéria do Failover, no script que faz o PING, tu pode com o parametro -i passar a interface.

Eu faria diferente. Deixaria as duas tabelas de roteamento já criadas(Tabela speedy e tabela virtua), limpa qualquer resquício de rota padrão das tabelas default e main e remove o gateway do teu arquivo de configuração de redes(que pode ser o /etc/network/interfaces ou o /etc/sysconfig/network...).

Cria duas rules(link2 e link1), e apenas muda elas de "peso", assim que um link ficar indisponível.


4. Re: 1 Linux com 2 Gateways

Perfil removido
removido

(usa Nenhuma)

Enviado em 04/05/2012 - 10:55h

Risthel escreveu:

E para "incrementar" essa matéria do Failover, no script que faz o PING, tu pode com o parametro -i passar a interface.

Eu faria diferente. Deixaria as duas tabelas de roteamento já criadas(Tabela speedy e tabela virtua), limpa qualquer resquício de rota padrão das tabelas default e main e remove o gateway do teu arquivo de configuração de redes(que pode ser o /etc/network/interfaces ou o /etc/sysconfig/network...).

Cria duas rules(link2 e link1), e apenas muda elas de "peso", assim que um link ficar indisponível.


Muito bom!

Não entendo o pq de não usar LOAD BALANCE. Se tem link sobrando não seria melhor usar? Eu faria LOAD BALANCE com Failover.


5. Re: 1 Linux com 2 Gateways

Igor Valsichi
igorov

(usa Debian)

Enviado em 04/05/2012 - 10:56h

O Script pra PING foi excelente vai funcionar perfeito.


Talvez seja muito um ping -c 60 e o sleep de 60

Talvez um -c 5 e um sleep de 30 seja suficiente

Depois entao basta gerar os scripts para mudar o default route, pq os 2 links ja estarao conectados.

Ta correto?

o eth2 VIRTUA é normal...
o eth1 SPEEDY na realidade vira ppp0

Nao fiz ainda pq vou ter q fazer num sabado pra nao tirar o povo do ar aqui na empresa...

Voces acham que apenas virando o default route ja da certo?

Obrigado pela atencao de voces,

Igor


6. Re: 1 Linux com 2 Gateways

Igor Valsichi
igorov

(usa Debian)

Enviado em 04/05/2012 - 10:58h

amarildosertorio escreveu:

Risthel escreveu:

E para "incrementar" essa matéria do Failover, no script que faz o PING, tu pode com o parametro -i passar a interface.

Eu faria diferente. Deixaria as duas tabelas de roteamento já criadas(Tabela speedy e tabela virtua), limpa qualquer resquício de rota padrão das tabelas default e main e remove o gateway do teu arquivo de configuração de redes(que pode ser o /etc/network/interfaces ou o /etc/sysconfig/network...).

Cria duas rules(link2 e link1), e apenas muda elas de "peso", assim que um link ficar indisponível.


Muito bom!

Não entendo o pq de não usar LOAD BALANCE. Se tem link sobrando não seria melhor usar? Eu faria LOAD BALANCE com Failover.




o LOAD BALANCE pode dar pau com conexoes de BANCO e o financeiro da empresa fica o dia inteiro mexendo com banco.

Pelo menos eu li que da muito pau no LB com sites de bancos, pq vc inicia a conexao pelo GW1 e de repente ele te muda pro GW2 por causa de uma outra requisicao


7. Re: 1 Linux com 2 Gateways

Perfil removido
removido

(usa Nenhuma)

Enviado em 04/05/2012 - 11:15h

igorov escreveu:

amarildosertorio escreveu:

Risthel escreveu:

E para "incrementar" essa matéria do Failover, no script que faz o PING, tu pode com o parametro -i passar a interface.

Eu faria diferente. Deixaria as duas tabelas de roteamento já criadas(Tabela speedy e tabela virtua), limpa qualquer resquício de rota padrão das tabelas default e main e remove o gateway do teu arquivo de configuração de redes(que pode ser o /etc/network/interfaces ou o /etc/sysconfig/network...).

Cria duas rules(link2 e link1), e apenas muda elas de "peso", assim que um link ficar indisponível.


Muito bom!

Não entendo o pq de não usar LOAD BALANCE. Se tem link sobrando não seria melhor usar? Eu faria LOAD BALANCE com Failover.




o LOAD BALANCE pode dar pau com conexoes de BANCO e o financeiro da empresa fica o dia inteiro mexendo com banco.

Pelo menos eu li que da muito pau no LB com sites de bancos, pq vc inicia a conexao pelo GW1 e de repente ele te muda pro GW2 por causa de uma outra requisicao



uhnnn.... Acho que o balanceamento é por cliente e não por requisição. Mas não tenho certeza. Mas der repente tu pode usar técnicas de round-robin.

Dá uma olhada:

http://www.juliobattisti.com.br/artigos/windows/tcpip_p30.asp

Esse artigo é de Windows, mas da para você ter uma noção do que é o round-robin.


8. Re: 1 Linux com 2 Gateways

Perfil removido
removido

(usa Nenhuma)

Enviado em 04/05/2012 - 12:33h

No final do tópico posta ai qual foi a melhor solução e o por que de escolher a mesma, blz.

Mas pegando uma carona na dica do colega acima acho que o link abaixo vai ajudar:

http://www.vivaolinux.com.br/artigo/Balanceamento-de-carga-e-alta-disponibilidade-com-Bonding-Driver...

http://eduardobecker.blogspot.com.br/2011/12/configurando-ifenslave-no-ubuntu-server.html


9. Re: 1 Linux com 2 Gateways

Perfil removido
removido

(usa Nenhuma)

Enviado em 04/05/2012 - 12:40h

esse link abaixo mostra uma forma também, porém seria necessário testar coisa que não fiz:

http://pcquest.ciol.com/content/linux/103091901.asp

testa e posta o resultado.


10. Re: 1 Linux com 2 Gateways

Igor Valsichi
igorov

(usa Debian)

Enviado em 04/05/2012 - 13:11h

eabreu escreveu:

No final do tópico posta ai qual foi a melhor solução e o por que de escolher a mesma, blz.

Mas pegando uma carona na dica do colega acima acho que o link abaixo vai ajudar:

http://www.vivaolinux.com.br/artigo/Balanceamento-de-carga-e-alta-disponibilidade-com-Bonding-Driver...

http://eduardobecker.blogspot.com.br/2011/12/configurando-ifenslave-no-ubuntu-server.html




Inicialmente o que pude testar por cima sem realmente por em pratica pois nao posso tirar o server do ar no momento é a solucao do AMARILDOSERTORIO que me indicou o POST do JOSE.FREITAS.RJ http://www.vivaolinux.com.br/artigo/Failover-de-Internet

Gostei muito do script do ping que eh por onde quero começar

OBviamente no dia que pegar pra implementar, vou testar as demais indicacoes para ver como se comportam.

Mas realmente no overall fiquei bem impressionado com a atencao de todos.

Obrigado pela ajuda de todos.
ASsim que por em pratica venho postar o result.



11. DUVIDA

Igor Valsichi
igorov

(usa Debian)

Enviado em 05/05/2012 - 20:23h

Pessoal,

Por exemplo,

VIRTUA = IP DINAMICO
SPEEDY = IP FIXO (PPPoE)

Reparei o seguinte, se o VIRTUA cai, pelo script do ping basta eu rodar:

# route del default
# route add default dev ppp0


isso ja serve pra mudar do VIRTUA para o SPEEDY, testei nas estacoes e entrando no site www.meuip.com.br ele mudou perfeitamente tanto via NAT quando pelo SQUID

Se imaginar o cenario seguinte onde muda do SPEEDY pro VIRTUA nao da certo fazer:

# route del default
# route add default dev eth2 (onde eth2 = é a placa do VIRTUA)


Digo, como eu faço pra "adivinhar" qual o IP do gateway, levando em consideracao que o VIRTUA é IP dinamico, ou seja, pode mudar e ai o "SCRIPT" tem que saber qual o novo gateway

Voces tem alguma dica pra isso?

Obg



12. POSSIBILIDADE

Igor Valsichi
igorov

(usa Debian)

Enviado em 05/05/2012 - 20:54h

Voce acham que assim funciona?

Quando o VIRTUA cair.

# ifdown eth2
# pon dsl-provider

# iptables -t nat -D POSTROUTING 1
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE



Quando o SPEEDY cair.

# poff -a
# ifup eth2

# iptables -t nat -D POSTROUTING 1
# iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE



Agora so semana que vem pra tentar de novo......








01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts