[FUG-BR] Cacheboy esta sendo renomeado
Luiz Otavio O Souza
luiz em visualconnect.com.br
Quinta Janeiro 29 12:17:54 BRST 2009
> Olá Luiz,
>
> Aproveito seu e-mail pra falar sobre os pathes do tproxy no freebsd.
> Instalei e ele funcionou.
> Mas surgiram algumas limitações bastante complicadas.
> 1 - Ele não faz cache de ip que não esteja com a rede conectada na
> placa
> local.
> 2 - Ele não suporta mais de uma interface de rede fazendo saida pra
> cliente (temos 4).
> 3 - Ele não suportou os skipto de sites como a caixa (famigerado
> conectividade social)
>
>
> Não tive tempo de testá-lo melhor. Vi que ele estava repassando o ip,
> mas não vazia cache de ips reais de clientes que estão atrás de outros
> dispositivos de roteamento (como mikrotik)
> Sei que está e versão beta mas essas coisas que citei acima são
> extremamente necessárias pra serem usadas em provedores.
> Parabéns pelo trabalho
>
Ademir,
Existe sim uma parte do patch que não foi publicada e que é a responsável
pelo funcionamento de sistemas mais complexos (sistemas com uma só placa de
rede e também no modo bridge). Esse patch não foi publicado porque
atualmente ele não funciona :) Será preciso reescrever essa parte para o
código atual.
Tirando essa parte bem especifica, eu acredito que os problemas que você viu
por ai são possíveis de serem contornados mesmo na situação atual. Você
provavelmente esta usando os meus exemplos de regras que contém alguma
limitações, mas na verdade o ipfw permite algumas variações que acredito que
possam resolver os problemas que você citou.
Para seus testes talvez essas regras deixem as coisas mais claras:
ipfw add fwd 127.0.0.1,3128 tcp from 200.200.200.0/24 to any 80 in via
${iif} # default rule to transparent proxy
ipfw add fwd 127.0.0.1 tcp from any 80 to 200.200.200.0/24 in via ${oif} #
catch the packets that come back using the clients IPs
Não é necessário utilizar o IP da rede de clientes como no meu exemplo do
site. Isso ajuda ? Eu imagino que isso resolva os problema 1 e 2.
O problema 3 também é possível de ser resolvido adicionando essas regras
ANTES das regras de fwd:
ipfw add skipto XXX tcp from 200.200.200.0/24 to ${caixa} 80 in via {$iif}
ipfw add skipto XXX tcp from ${caixa} 80 to 200.200.200.0/24 in via ${oif}
Embora a solução atual seja digna do RF (meu parceiro de gambiarras), ela é
bem funcional, basta você exercitar seu conhecimento de ipfw que é parte
essencial dessa solução.
Qualquer duvida entre em contato.
Abraço,
Luiz
Mais detalhes sobre a lista de discussão freebsd