fala galera, como estão as coisas??
pessoal, já li bastante sobre balanceamento de links, mas acho q não entendi muito do q eu li...
bom.. vamos lá...
supomos q tenho em meu servidor 3 placas de rede:
eth0 - 10.0.0.1/24
eth1 - 192.168.0.1/24
eth2 - 192.168.1.1/24
e que eu tenha também dois links ADSL e q os mesmos estejam ligados em suas respectivas placas no servidor.
link1 - 192.168.0.254/24 - 600 kbps
link2 - 192.168.1.254/24 - 1024 kbps
a idéia é colocar os dois links pra funcionar juntos, para isso temos 3 alternativas:
1 - balanceamento total, as requisições feitas ao servidor serão dividas igualmente pelos links;
2 - balenceamento por peso, as requisições serão divididas de forma q o link 1024 responda por 60% delas;
3 - balanceamento por serviço, deixando um dos links como gateway padrão, algumas portas são marcadas para usar o link sobressalente.
Para usar o modo 3 não seria complicado, exmplo:
teríamos como gateway padrão o adsl 600
# então seria marcar os pacotes desejados:
# Criando nova tabelaiptables -t mangle -A PREROUTING -s 10.0.0.0/24 -d 0/0 -p tcp --dport 80 -j MARK --set-mark 1
depois especificar a rota para onde eles devem passar:echo "20 adsl2" >> /etc/iprout2/rt_tables
# O mascaramentoip rule add fwmark 1 table 20 prio 20
ip route add default via 192.168.1.1 dev eth2 table 20
ip route flush cache
isso é o q eu li em vários documentos, não sei se está correto, se não estiver alguém por favor me corrija...iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE
--------------------------------------------------------------------------------------------
Agora para as situações 1 e 2 q vem as dúvidas grandes:
1 - Como devem estar as configurações dos links ADSL?? devem estar configurados normalmente, inclusive o gateway padrão?
2 - como definir corretamente o peso para cada link?
3 - como fazer? pois li um monte de coisa e não consegui fazer....
Vamos lá... seguindo o http://lartc.org/howto/ , a sessão 4.2 onde fala sobre multiplos links, as configurações seriam desta forma:
Depois viria o padrão do mascaramento do iptables.IF1=eth1
IF2=eth2
IP1=192.168.0.1
IP2=192.168.1.1
P1=192.168.0.254
P2=192.168.1.254
P1_NET=192.168.0.0
P2_NET=192.168.1.0
echo "199 T1" >> /etc/iproute2/rt_tables
echo "200 T2" >> /etc/iproute2/rt_tables
ip route add $P1_NET dev $IF1 src $IP1 table T1
ip route add default via $P1 table T1
ip route add $P2_NET dev $IF2 src $IP2 table T2
ip route add default via $P2 table T2
ip route add $P1_NET dev $IF1 src $IP1
ip route add $P2_NET dev $IF2 src $IP2
ip route add default via $P1
ip rule add from $IP1 table T1
ip rule add from $IP2 table T2
ip route add default scope global nexthop via $P1 dev $IF1 weight 1 \
nexthop via $P2 dev $IF2 weight 1
Mas voltando a pergunta, como deve estar a configuração das interfaces de rede dos links adsl antes da aplicação destas regras?
Como fazer para o balanceamento funcionar com peso?
Estas configurações deverão ser executadas todas as vezes que iniciar o micro? todas as vezes que rodar o script de firewall? ou somente uma vez?
Tentei fazer exatamente como citado acima, mas não obtive sucesso.
Onde estou errando??
valeu