Load balance com IP fixo + IP dinâmico - Debian [RESOLVIDO]

1. Load balance com IP fixo + IP dinâmico - Debian [RESOLVIDO]

Jadilson
jmuramatsu

(usa Ubuntu)

Enviado em 10/10/2011 - 08:27h

Olá PessoALL

Estou com um certo problema pra fazer o load balance com 2 links, um Virtua (IP dinâmico) e um Speedy (IP fixo) no Debian Squeeze.

Vi nas dicas/foruns que tem várias confs, só que pra IPs fixos, preciso de uma conf pra IP fixo + IP dinâmico, será que alguém pode me ajudar?

Peguei uma conf pra adicionar no /etc/rc.local e fiz algumas alterações, vejam se vai dar certo:

OBS: já criei as tabelas virtua (1) e speedy (2) no /etc/iproute2/rt_tables.

###INICIO DA CONF rc.local
#pega os IPs dinamicos do Virtua (IPV) e Speedy (IPS)
IPV=`ifconfig eth0 | grep addr: | awk '{ print $2 }' | cut -d: -f 2`
IPS=`ifconfig eth1 | grep addr: | awk '{ print $2 }' | cut -d: -f 2`

#IPs dos Gateway do Virtua (IPGV) e Speedy (IPGS)
IPGV=201.6.150.1
IPGS=189.47.144.1

ip route flush table virtua #Limpa as rotas no cache da tabela virtua
ip route flush table speedy #Limpa as rotas no cache da tabela speedy

ip route add $IPGV dev eth1 src $IPV table virtua
ip route add default via $IPGV table virtua

ip route add $IPGS dev eth2 src $IPS table speedy
ip route add default via $IPGS table speedy

ip rule add from $IPV table virtua
ip rule add from $IPS table speedy

#Esta regra abaixo é responsável pelo balanceamento, vamos dividir a saída com peso 4:1, o virtua é 4x mais rápida que o link da speedy
ip route add default scope global nexthop via $IPGV dev eth0 weight 4 nexthop via $IPGS dev eth1 weight 1

ip route flush cache #Limpa as rotas no cache
###FIM DA CONF rc.local


Eu estou pegando o IP do Speedy como dinâmico mesmo, pra já deixar pronto caso eu venha a mudar de link e pegar outro Virtua dinâmico e o Gateway acho que não muda nunca, certo?

Será que com a linha `ifconfig eth0 | grep addr: | awk '{ print $2 }' | cut -d: -f 2` vai funcionar pra capturar o IP dinamicamente, em vez de digitá-lo?

Valeu


  


2. MELHOR RESPOSTA

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 10/10/2011 - 12:17h

Não conheço muito sobre o assunto, mas hoje saiu um artigo no dicas-l que pode ajudar:

http://www.dicas-l.com.br/arquivo/balanceamento_de_links_com_ip_dinamico.php#.TpML4YZn6Rs

Abraços

3. Re: Load balance com IP fixo + IP dinâmico - Debian [RESOLVIDO]

4. Re: Load balance com IP fixo + IP dinâmico - Debian [RESOLVIDO]

Jadilson
jmuramatsu

(usa Ubuntu)

Enviado em 11/10/2011 - 08:58h

Obrigado pelas dicas, vou adaptar na minha conf e depois posto os resultados.

Valeu


5. helps no script

Jadilson
jmuramatsu

(usa Ubuntu)

Enviado em 17/10/2011 - 10:37h

Alguém saberia me dizer se está certo esse IF:

if [ "$GWNEW" == "0" ]; then
if [ "$GW2" != "" ]; then
/sbin/ip route add default nexthop via $GW2 dev $DEV2 weight $PESO2
else

/sbin/ip route add default via $GW2
fi
else
if [ "$GW2" != "" ]; then
/sbin/ip route add default nexthop via $GWNEW dev $DEVNEW weight $PESONEW nexthop via $GW2 dev $DEV2 weight $PESO2
else
if [ "$GW2" != "" ]; then
/sbin/ip route add default nexthop via $GWNEW dev $DEVNEW weight $PESONEW nexthop via $GW2 dev $DEV2 weight $PESO2
else
/sbin/ip route add default via $GWNEW

fi
fi

fi
return 1;
}

Eu alterei de 3 conexões pra 2 mas deve ter alguma coisa errada porque não está funcionando.

Valeu


6. resolvido

Jadilson
jmuramatsu

(usa Ubuntu)

Enviado em 18/10/2011 - 13:13h

Com a dica do link do rai3mb eu consegui resolver, se quiserem ver a resolução é só abrir o link que o Altemir respondeu como proceder pra alterar de 3 links pra 2.

Obrigado pela ajuda pessoal.

[]'s


7. Re: Load balance com IP fixo + IP dinâmico - Debian [RESOLVIDO]

Jadilson
jmuramatsu

(usa Ubuntu)

Enviado em 09/12/2011 - 16:24h

Outra coisa, depois do load balance feito adicione no script do firewall as linhas:

#iptables -t mangle -A PREROUTING -i $ETH_LAN -p tcp --dport 443 -j MARK --set-mark 6
#iptables -t mangle -A OUTPUT -p tcp --dport 443 -j MARK --set-mark 6
#ip rule add fwmark 6 table speedy
#ip route flush cache

Antes da linha do redirecionamento do Squid (80 pra 3128), assim os sites que utilizam HTTPS vão pelo link do speedy, senão ele faz o load balance dentro do site com HTTPS, e ai dá erro de conexão.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts