On 4/30/10, Cleber Ianes <[email protected]> wrote:
...

>> - Proxy transparente geralmente é visto como solução milagrosa mas
>> raramente é bem feito ou é o ideal. Muita gente só coloca o "http_port
>> 127.0.0.1:3128 intercept" (ou equivalente para a sua respectiva versão
>> do squid), faz aquela regrinha sem vergonha no iptables (as vezes sem
>> nem saber pra que serve, powered by copy & paste (tm)) e são poucos os
>> que estudam métodos de intercepção mais efetivos como WCCP, TPROXY ou
>> uma "configuração transparente" por meio de polices do Windows,
>> variaveis de ambiente (http_proxy e etc.) ou WPAD.
>>
>
> Já ouvi essa história de "proxy transparente ser ruim" em algumas conversas,
> mas nunca me disseram o que tem de ruim. E hoje o proxy configurado no
> navegador é totalmente inviável em uma rede com 400 computadores de vários
> órgãos municipais espalhados por uma cidade de 40 mil habitantes, como de um
> cliente que implementei.

O que eu quiz dizer é que nem sempre é a melhor solução (ou seja, não é ruim).

A principal particularidade do proxy transparente é que muitas vezes
ele é mal entendido. Muita gente, por exemplo, tenta fazer
autenticação com proxy transparente, o que quebra totalmente o
conceito de transparente (sem interação com o usuário).

Outro detalhe importante é que, dependendo da forma que é feito, o
proxy transparente quebra especificações do protocolo HTTP,
principalmente no que diz aos headers como "origem".  Quando tu usa
wccp, tproxy ou accel esse tipo de problema é menos comum, mas quem
que tu conhece usa intercepção/proxy transparente assim?

A grande maioria pega a receita de bolo que diz para usar o
"intercept" (ou "transparent" para versões mais antigas) e usa achando
que é a melhor coisa do mundo porque não tem que configurar
navegadores de usuários.


>> - A maioria dos problemas se resolve no modo debug. Se não resolver, o
>> gdb ajuda. Se ainda assim não resolver, alguém vai saber ajudar, uma
>> vez que tu saiba como perguntar.
>>
>
> Eu queria, pelo menos poder estudar as opções possíveis, pra depois
> perguntar.
> Normalmente é assim que faço, leio os manuais, vejo as sintaxes das
> configurações e só então passo a perguntar. Mas no squid isso é impossível.

É, aqui o "problema" do squid é o mesmo de vários outros projetos
opensource: se tu quer entender como a coisa funciona, tu tem que te
envolver com o projeto. Nem todo mundo pode/quer fazer isso, se tu
quiser, um bom ponto de partida é a lista squid-users, talvez
squid-devel também (apesar de que nesta as coisas são mais filosóficas
e relacionadas ao código propriamente dito, mas tem muitos detalhes
sobre a implementação de várias coisas).


>> - O controle de banda dele é bem deficiente mesmo e ainda não temos
>> nenhuma solução à altura. O CBQ, HTB e os outros mecanismos do kernel
>> são baseados em IPs, o Squid oferece a possibilidade de fazer o
>> shaping por URLs, usuários ou qualquer outra coisa que seja controlada
>> por uma ACL. O mais próximo disso é usar l7filter com pattern
>> customizado pegando os headers HTTP pela URL e jogando para classes, o
>> que dá um trabalho imenso.
>>
>
> Nem pretendo usar isso no squid, além de não ser eficiente é extremamente
> trabalhoso.
Eficiente ele é, só que não é tão completo como poderia ser. :)

Não há hierarquia de classes nem compartilhamento de banda, os limites
são estáticos, o que é uma pena. Havia um patch que marcava os
pacotes, mas ele servia mais para provedores que queriam limitar a
banda do proxy para os clientes e não do proxy para a internet, que é
o que muita gente quer mas até hoje ninguém fez (e se fez escondeu
bem).


>> Alternativas eu não conheço. Não à altura do Squid. Eu já usei Apache,
>> Cherokee, Lighty e Nginx como accelerators, mas eles só fazem o cache
>> mesmo e não é isso que tu quer.
>>
> Vou continuar procurando alternativas.

No apt-cache do debian sid tem duas alternativas: polipo e tinyproxy.
Eu não conheço nenhum mas duvido que escalem tão bem quanto o squid ou
que tenham tantos recursos.

-- 
GUS-BR - Grupo de Usuários de Slackware Brasil
http://www.slackwarebrasil.org/
http://groups.google.com/group/slack-users-br

Antes de perguntar:
http://www.istf.com.br/perguntas/

Para sair da lista envie um e-mail para:
[email protected]

Responder a