Dúvida sobre funcionamento do Squid3 em modo transparent

Iniciado por g4p, 24 de Janeiro de 2014, 17:32

tópico anterior - próximo tópico

g4p

Pessoal, estou com uma dúvida. Como é o funcionamento do squid em modo transparent?

Sim, eu sei que não precisa ir nas estações configurá-las uma por uma. Massa! Mas gostaria de saber como funciona por trás de tudo isso.

Eu configurando o proxy(squid) num servidor, como faço pra ele receber as requisições das máquinas? Já que as requisições quem recebe é o gateway, no qual é o o modem/roteador.

Os tutoriais ensinam usar uma regra para o que chegar na porta 80.. ser redirecionado para 3128. Mas, como assim? As máquinas estão enviando requisição de um GET na porta 80 para o modem/roteador, não para o servidor que tem o serviço rodando.


g4p

Eu tenho que configurar o modem para o que chegar de pedido DHCP das estações, ele mandar ir buscar no meu servidor?

Se sim, qual o nome dessa opção?

Arthur Bernardes

Você quer usar proxy transparente com um roteador convencional (digo de casa mesmo)?

Tenho 99,9% de certeza que não é possível (posso estar errado), é necessário o roteador redirecionar esse tráfego e acho que não é qualquer roteador que faz isso! Posso estar errado!

g4p

Era isso que eu queria saber. O roteador redireciona o tráfego para o IP do servidor.

É isso que acontece?

Arthur Bernardes


zekkerj

Citação de: g4p online 24 de Janeiro de 2014, 17:32
Pessoal, estou com uma dúvida. Como é o funcionamento do squid em modo transparent?

Sim, eu sei que não precisa ir nas estações configurá-las uma por uma. Massa! Mas gostaria de saber como funciona por trás de tudo isso.

Eu configurando o proxy(squid) num servidor, como faço pra ele receber as requisições das máquinas? Já que as requisições quem recebe é o gateway, no qual é o o modem/roteador.

Não, as requisiçóes passam pelo gateway. Ele não as recebe, ele as repassa. Entender isso é essencial pra entender o funcionamento do proxy transparente.

CitarOs tutoriais ensinam usar uma regra para o que chegar na porta 80.. ser redirecionado para 3128. Mas, como assim? As máquinas estão enviando requisição de um GET na porta 80 para o modem/roteador, não para o servidor que tem o serviço rodando.

Então, elas não enviam nada para o modem/roteador. Elas enviam pro destino, seja lá ele qual for, google, facebook, x-videos.com...

Onde o gateway entra na história?

As estações não sabem como chegar ao destino. Tecnicamente, elas "não têm rota para o destino". Então, como chegar lá? Elas têm uma configuração chamada "default gateway". As estações então, quando querem fazer um pacote chegar a um destino, encaminham esse pacote ao default gateway, e ele se encarrega de encaminhar esse pacote ao destino. Na volta, os pacotes são recebidos pelo gateway, que o encaminha de volta para a estação.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

zekkerj

Precisei sair pra aula... continuando.

Como funciona um servidor proxy transparente? Na forma genérica, o gateway é configurado para que todas as requisições de acesso HTTP que passem por ele sejam redirecionadas para o servidor proxy, ao invés de serem encaminhadas para o destino.

O servidor proxy, por sua vez, antes de encaminhar para o destino, verifica se a estação que fez a requisição está autorizada a fazer isso. Depois ele se vale do fato de estar lidando com requisições de várias máquinas (possivelmente aos mesmos dados) para criar um cache das requisições, e com isso tornar o acesso mais racional.

Com o resultado, o servidor proxy devolve a requisição para o gateway (não para a estação!!!), e o gateway a devolve à estação. Pq o proxy não pode devolver diretamente à estação? Pq a estação não pediu nada ao proxy, e assim se receber a resposta dele, vai reagir mais ou menos assim: "te conheço? Não te pedi nada, não te mete nisso".

Então no caso mais geral, o que temos é um gateway que aceita uma programação de redirecionamento de porta, e um servidor proxy que fica numa rede que não pode acessar diretamente as estações (obrigando o retorno do tráfego a passar de novo pelo gateway).

No caso mais comum, no entanto, você coloca gateway e proxy no mesmo servidor, o que facilita todo o controle.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

g4p

Ótimo! Minha cabeça entendia o funcionamento parecido, porém de outra forma. Muito boa a explicação. Muito boa mesmo.

Obrigado e continue sendo essa pessoa que você é, sempre fazendo questão de ajudar o próximo na comunidade brasileira do Ubuntu.

Valeu, zekkerj.