[FUG-BR] balanceamento de trafego de jail

Trober trober em trober.com
Domingo Abril 12 04:08:41 BRT 2009


Olá Fabricio!

Acredito que a mensagem
http://www.fug.com.br/historico/html/freebsd/2009-02/msg00451.html possa
contribuir para sua necessidade. A lógica é muito próxima com a proposta
do Wanderson, porém com IPFW.

Nesta mensagem descrevo um cenário onde está funcionando o que você deseja
implementar. O cliente tem dois links de internet, sendo uma fibra (Copel)
e outro um ADSL (BrT/Oi).

Com base nos critérios adotados pelo cliente, ele determina o que é
produtivo, improdutivo ou neutro.

Os destinos produtivos, como bancos, terminais remotos, correio
eletrônico, mensageiros instantâneos corporativos, sites militares e
governamentais saem pelo link dedicado.

Os improdutivos (sites de comunidades, "pr0n", *tube, streaming toscos,
mensageiros/webmail gratuitos, *share, blablabla) são bloqueados.

O restante que não se enquadra em produtivo, nem improdutivo, é "neutro",
e sai pelo ADSL.

Torço para que a solução seja aplicável ao seu caso.

Saudações,

Trober
-
-
-
-
-


> Um cliente lá da nossa empresa tem um firewall com pf. Ele pediu que
> balancessemos o link dele, que tudo que viesse pelo proxy jogassemo
> para o velox. Para não afogar o link principal dele. Porém não
> consegui fazer com que o squid saísse pelo velox, mesmo eu botando o
> route-to na saída ele obedecia somente a rota default na tabela de
> roteamento, me parece que o pf só consegue balancear com trafego de
> entrada. Nossa solução foi montar um servidor squid na rede interna, e
> usamos o route-to no pass in para rotear a saída.
> Se alguem tiver solução para isso também, eu agradecia.
>
> Obs: Uma coisa que eu pensei, foi marcar o os pacotes. Porém não tive
> tempo para implementar. Será que funcionaria?
>
>
> Att.
>
> 2009/4/11 Wanderson Tinti <wanderson em bsd.com.br>:
>> 2009/4/6 Anderson J. de Souza <anjoel.s em gmail.com>:
>>> Ola a todos.
>>>
>>>     Estou com um um probleminha meio simples mas chato pra mim
>>> resolver,...
>>> Um firewall com 4 placas de rede, dmz, intranet1 intranet2 e
>>> internet,..
>>> Alem das minhas redes tenho uma jail com um proxy squid com ip
>>> atribuido na dmz ,..
>>> Agora vem o problema,... para a internet tenho 2 links ligados na
>>> placa, e como o conteudo da intranet 1 e da intranet 2 passam pelo
>>> mesmo proxy ( jail ),. eles saem com o mesmo ip,.. contudo preciso
>>> identificar e separar o trafego destas duas redes.
>>> Inicialmente estou atribuindo tos pelo proxy para as requisições da
>>> intranet 1, contudo não consigo identificar isto para fazer o nat
>>> correto.
>>>
>>> Estas sao minhas regras de saida:
>>> pass out quick on net0 route-to (net0 <gw0>) proto tcp from <net0> to
>>> any modulate state label "OUT $srcaddr ($proto)"
>>> pass out quick on net0 route-to (net0 <gw1>) proto tcp from <net1> to
>>> any modulate state label "OUT $srcaddr ($proto)"
>>>
>>> Estas minhas regras de Nat
>>> nat on net0 from <int0> to any -> <eip0>
>>> nat on net0 from <int1> to any -> <eip1>
>>> ### ESTA E A REGRA QUE EU GOSTARIA DE USAR  ###
>>> ### nat on net0 from <dmz0> to any port 80 tos 0x4 -> <eip1> ###
>>> nat on net0 from <dmz0> to any port 80 -> net0 sticky-address
>>> nat on net0 from <dmz0> to any -> <eip0>
>>>
>>> Se o proxy tiver 2 ips tenho como selecionar pelo ip ,.. mas ai como
>>> eu faço pra colocar um alias na minha jail ?
>>>
>>>
>>> --
>>> ___________________
>>> Anderson J. de Souza
>>> - Networking and Security -
>>
>> Boa noite.
>> Se entendi bem, você tem 2 links internet e quer que cada intranet sai
>> por um link, certo? Pensei no seguinte cenario, com 2 placa de rede
>> internet:
>>
>> ext_if1="192.168.1.2" # xl0
>> ext_if2="192.168.2.2" # xl1
>> ext_gw1="192.168.1.1"
>> ext_gw2="192.168.2.1"
>> if_intranet1=" rede1 "
>> if_intranet2=" rede2 "
>>
>> pf.conf
>>
>> nat on $ext_if1 from $intranet1 to any -> $ext_if1
>> nat on $ext_if2 from $intranet2 to any -> $ext_if2
>>
>> pass in quick on $if_intranet1 route-to ($ext_if1 $ext_gw1) proto tcp
>> from
>> $intranet1 to any flags S/SA keep state
>>
>> pass in quick on $if_intranet2 route-to ($ext_if2 $ext_gw2) proto tcp
>> from
>> $intranet2 to any flags S/SA keep state
>>
>> pass out on $ext_if1 route-to ($ext_if1 $ext_gw1) from $ext_if1 to any
>> keep state
>> pass out on $ext_if2 route-to ($ext_if2 $ext_gw2) from $ext_if2 to any
>> keep state
>>
>>
>> squid.conf
>>
>> acl link1 src "intranet1"
>> acl link2 src "intranet2"
>>
>> tcp_outgoing_address 192.168.1.2 link1
>> tcp_outgoing_address 192.168.2.2 link2
>>
>>
>> É uma dica, infelismente não posso afirmar que vá funcionar, somente
>> testando mesmo.
>>
>> Boa noite a todos.
>>
>




Mais detalhes sobre a lista de discussão freebsd