#  > Servidores >  > Sistemas Operacionais >  >  Squid\Cache com IP Bridge

## luizbe

Opa,

Gostaria que vocês pudessem esclarecer uma duvida minha, andei pesquisando sobre o freebsd e percebi que existem relatos de que ele é um sistema estavel para Squid/cache, até então..

gostaria de saber se há possibilidades de se configurar o freebsd parar ser um squid transparente (da seguinte forma)

IP WAN 200.xxx.xxx.x02 <<SQUID>> IP LAN 200.xxx.xxx.x03

e nos outros ips que vão estar após ele (que a interface LAN dele vai estar interligada em um Switch) vão pegar ips válidos.. tipo
200.xxx.xxx.x04 mas que vai passar pelo Cache do Freebsd. vai ser tipo um Squid com IP Bridge , mas capturando a navegação e colocando ela no Cache.


Há possibilidades de ser feito essa configuração?
Qual o Processador e Ram necessário parar se ter uns 20GB ~ 80gb de cache e melhorar a perfomace de um ISP com 8mbps?
Agradeço a quem puder me ajudar e tambem como devo procurar sobre o sistema.

ATT.

----------


## lucianogf

não sei se existe algum patch para freebds, no linux você precisa usar o patch tproxy ou configurar o squid para trabalhar paralelamente com o router e ser 100% transparente, caso contrário você não conseguirá fazer isso.

----------


## herlon2008

O patch tproxy , funcionou perfeito comigo somente na versão 2. 

Testei as versões 4 com os novos patch tanto da people como do balabit e , na partes iptables, blz , mas com squid , não funcionou legal. 

Outra forma de se fazer, sem ser atraves da bridge, seria utilizar wccp + patch tproxy. 

Funciona muito bem, o unico inconveniente é ter um roteador parrudo para aguentar o processamento.

O Frebsd, infelizmente não possui um patch como o tproxy.

----------


## herlon2008

Vai aqui um tutorial sobre o assunto passo a passo : Squid (WWW Proxy Server)

Quanto a sua solicitação referente a memoria e processador. 

Atualmente frente aos processadores que temos Core 2 , processador não sera o limitador e sim memoria RAM, uma boa relação seria 80 GB HD p/ cada 2 GB de RAM. 

Recomendo um HD de 160 GB com 4 GB de RAM. 

Outra coisa, muito importante, squid necessita ser bem configurado, se tiver que ficar removendo e recriando seu cache, não necesita dele, só vai lhe trazer incomodo.

----------


## luizbe

a Ideia é essa, fazer o Cache e não ter que mexer.. por isso eu pensei em usar um sistema melhor que o MK para cache , para não ter que ficar preocupando com MB Ram ou coisa do tipo..

Então o Freebsd não pode ser usado no meu caso,
qual seria a Distro + Recomendada para esse tipo de servidor?

Fedora? Debian? Slack?

quanto ao servidor , vou investir em um Xeon Quad core com uns 8GB de ram e HD Sata2 de 160gb e colocar 4 modulos de squid para usar o maximo do processador. (vi isso no forum)

agora fica a duvida da Distro para isso.

----------


## lucianogf

com relação a distro vai de você.

eu uso debian, tem quem use CentOS.

----------


## GrayFox

> Opa,
> 
> Gostaria que vocês pudessem esclarecer uma duvida minha, andei pesquisando sobre o freebsd e percebi que existem relatos de que ele é um sistema estavel para Squid/cache, até então..
> 
> gostaria de saber se há possibilidades de se configurar o freebsd parar ser um squid transparente (da seguinte forma)
> 
> IP WAN 200.xxx.xxx.x02 <<SQUID>> IP LAN 200.xxx.xxx.x03
> 
> e nos outros ips que vão estar após ele (que a interface LAN dele vai estar interligada em um Switch) vão pegar ips válidos.. tipo
> ...


Tem como fazer sim.

As 2 interfaces ficariam em bridge, a interface bridge ficaria com um ip da rede 200.xxx.xxx.xxx e o gateway das maquinas atras do bsd colocaria a rota default para o roteador da operadora.
O ipfirewall consegue tratar pacotes na camada 2.
Tente assim:

ifconfig bridge0 create
ifconfig bridge0 inet 200.xxx.xxx.xxx netmask 255.xxx.xxx.xxx addm iface1 addm iface2 up
sysctl net.inet.ip.forwarding=1
sysctl net.link.ether.ipfw=1
sysctl net.link.bridge.ipfw=1

Começe assim... depois, The FreeBSD Project

----------


## herlon2008

Passar como bridge pelo Freebsd, é possivel sim, sem problemas. 

Agora fazer um transparent proxy com o FreeBSD, não consegui achar informações, se tiver posta ai para nós. 

Quando digo transparente proxy, é o cliente receber como ponto de saida, seu proprio IP de origem quando consultar um site. 

Não é o caso pois teria que ter um IP publico, mas como exemplo, ele ir até o site meuip.com.br e obter o seu IP de conexão exemplo 10.0.0.20, não o IP do Gateway/Proxy.

Quanto a distro, a que melhor se adaptar.

----------


## GrayFox

De uma olhada entao aqui:

/usr/ports/www/transproxy

----------


## herlon2008

Havia procurado isto e não havia achado para o freebsd, inclusive fiz tentativas, funcionou muito bem o squid, mas não com transparencia. 

Obrigado, pela dica.

----------


## luizbe

Luciano, 
Eu poderia tar colocando no Freebsd um Squid, e colocar por exemplo
a Interface WAN (Externa) com 10 Ips fixos,
e fazer tipo a Lan..

Ip : 10.10.10.1 sair com o ip 200.222.222.2
ip: 10.10.11.1 sair com o ip 200.222.222.3 


assim por diante? 

pois assim eu poderia tar colocando vários servidores aqui dentro com mask /255.255.255.252 , e fazendo ele pegar um ip diferenciado..
e tambem pelo Firewall eu posso tá "redirecionando" o IP Externo para o Lan como ali encima correto?!

----------


## GrayFox

Isso voce define com NAT.
Ou entao pode usar o tcp_outgoing_address dentro do squid.

----------


## luizbe

Sim ,
mas vai dar certim mesmo só com 2 placa de rede?
Wan e Lan?
daeh só add ip virtual mesmo
e depois eu crio as nat com src. address e etc.. mas não vai ter problema de usar se ip's virtuais, correto?
Pq no mk eu faço mole mole, mas ainda to leigo em linux assim..

Tks.. a todos ae.

----------


## GrayFox

Sim, sem problema.

----------


## alexandrecorrea

se os clientes usarem ip valido.. voce pode configurar o squid com seu router.. para usar WCCP .. fica 100% transparente.. e com fail-over ...

----------


## luizbe

Alexandre, tem como você me passar mais informações sobre?
Tô comprando um servidor bom, só para Cache.. 
Já estou com o Debian instalado em algumas maquinas e já estou estudando tudo sobre, 

Onde consigo mais informações sobre WCCP ?
Me Dê mais detalhes,
agradeço..

----------


## alexandrecorrea

wiki.squid-cache.org

tem exemplos de configuracoes WCCP em varios cenarios !!

----------


## armc_2003

Segundo este exemplo: freshmeat.net: Tutorials - Configuring a Transparent Proxy/Webcache in a Bridge using Squid and ebtables. Eu implementei uma brigde com proxy transparente. Mas só consegui fazer com que ela funcionasse por 10 minutos e párou sem maiores explicações.
Alguem tem alguma idéia do que aconteceu?

----------


## GrayFox

> Segundo este exemplo: freshmeat.net: Tutorials - Configuring a Transparent Proxy/Webcache in a Bridge using Squid and ebtables. Eu implementei uma brigde com proxy transparente. Mas só consegui fazer com que ela funcionasse por 10 minutos e párou sem maiores explicações.
> Alguem tem alguma idéia do que aconteceu?


Seria melhor voce abrir um outro tópico em *Servicos Squid (LINUX)*, pois aqui é BSD  :Smile: 

Com FreeBSD funciona perfeito... E sabe de uma coisa? Nunca fui muito com a cara desse ebtables, seria melhor voce fazer bridge com o utilitário "brctl" e fazer o iptables trabalhar nessa interface...

----------


## armc_2003

> Seria melhor voce abrir um outro tópico em *Servicos Squid (LINUX)*, pois aqui é BSD 
> 
> Com FreeBSD funciona perfeito... E sabe de uma coisa? Nunca fui muito com a cara desse ebtables, seria melhor voce fazer bridge com o utilitário "brctl" e fazer o iptables trabalhar nessa interface...


 Obrigado pela dica, contudo o problema é trabalhar com iptables em uma brigde, isso é meio complicado.
Como você faz pra trabalhar um brigde-proxy no BSD?

----------


## GrayFox

O FreeBSD tem/teve uma bridge muito boa desde o kernel do FreeBSD 4.x mas nao sei porque os caras importaram a bridge do netbsd (mesma usada no linux creio eu).
Fazendo qualquer uma dessas 2 bridges o esquema funciona, mas prefiro a bridge antiga. 
Acreditoque vai ser inutilizada com o tempo, mas a serie 6.x vai estar funcionando.

----------

