balanceamento de link(troca por requisição)

Iniciado por tiagoggsouza, 08 de Junho de 2011, 14:54

tópico anterior - próximo tópico

tiagoggsouza

Olá Senhores,

Estou com seguinte problema : Configurei um balanceamento de link para acessar um site especifico , o balanceamento está funcionando corretamente,porém vejo que esse balanceamento só funciona corretamente se a requisição para internet estiver indo para ip's distintos , ex : requisição para o google sai pela eth1 e quando faço outra para o uol sai pela eth2 ,se eu fizer outra para o google ele vai sair sempre pela eth1 ,queria que cada requisição feita mesmo para o google troca-se entre eth1,eth2.

acredito que isso aconteça porque o kernel mantém tabelas de roteamento estáticas,mais como posso resolver esse problema? pesquisei bastante na net mais não encontrei solução.

Configurações :

eth1=192.168.10.2/24 GATEWAY = 192.168.10.1

eth2=192.168.20.2/24 GATEWAY = 192.168.20.1

echo 10 link1 >> /etc/iproute2/rt_tables
echo 20 link2 >> /etc/iproute2/rt_tables

ip route add 192.168.10.0/24 dev eth1 src 192.168.10.2 table link1
ip route add dedault via 192.168.10.1 tabel link1

ip route add 192.168.20.0/24 dev eth2 src 192.168.20.2 table link2
ip route add dedault via 192.168.20.1 tabel link2


ip route from 192.168.10.0/24 dev eth1 src 192.168.10.2

ip route from 192.168.20.0/24 dev eth2 src 192.168.20.2


ip route add default via 192.168.10.1


ip rule add from 192.168.10.2 table link1
ip rule add from 192.168.20.2 table link2

ip route add from 192.168.20.0/24 dev eth2 table link1
ip route add from 127.0.0.0/8 dev lo table link1

ip route add from 192.168.10.0/24 dev eth1 table link2
ip route add from 127.0.0.0/8 dev lo table link2


ip route add default nexthop via 192.168.10.1 dev eth1 weight 1 nexthop via 192.168.20.1 dev eth2 weight 1


quem puder me ajudar ficarei muito grato.

zekkerj

Deixa eu te dar uma idéia: não faça isso, não é uma boa. Se você fizer, pode passar a ter problemas com sites como bancos ou outros que mantenham algum tipo de "sessão".

O que acontece quando você faz um round-robin total entre duas conexões é que duas requisições seguidas ao mesmo site vão chegar com endereços distintos, o que vai fazer com que sejam tratadas como requisições distintas. Se o site fizer o rastreamento da sessão pelo endereço de origem (e muitos fazem), a sessão vai ser declarada inválida e fechada, te obrigando a voltar ao início, pra provavelmente falhar novamente na próxima tentativa.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D