Squid com WCCP

Após surgir a necessidade de efetuar a configuração de Squid com wccp em um roteador 2600 da Cisco, resolvi contribuir com a configuração utilizada. Para um bom entendimento deste documento recomenda-se um mínimo de conhecimento de sistemas Unix, do processo de compilação de um programa e do funcionamento do protocolo WCCP.

[ Hits: 41.379 ]

Por: Fabricio Cruz em 05/09/2006


Configurando o NAT no iptables e o roteador



O iptables também deve estar configurado com uma regra de NAT, como já é instalado por padrão no Fedora e praticamente em todas as distribuições, não vou entrar em detalhes. Vamos a regra:

iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

Adicionando esta regra todos os pacotes enviados para porta 80 serão redirecionados para a porta 3128 do servidor onde o Squid está instalado e configurado.

Vale ressaltar que para o roteador redirecionar os pacotes tcp:80 para o servidor com Squid é necessário inserir algumas linhas na configuração do mesmo - Utilizei um 2600 da Cisco. :)

Segue exemplo:

access-list 20 permit 172.16.0.0 0.0.15.255 # Seleciona os pacotes para serem redirecionados
ip wccp version 1 # Versão do WCCP
ip wccp web-cache redirect-list 20 # Habilita o redirecionamento para a lista 20
int <interface_de_saída_para_a_internet>
ip wccp web-cache redirect out # Redireciona os pacotes saindo por esta interface
ip route-cache same-interface # Habilita o route-cache para pacotes da mesma interface

OBS:
  • WEB-CACHE é minha access list;
  • 172.16.0.0 0.0.15.255 é minha rede.

Bom, vou ficando por aqui... espero que seja útil!

Página anterior    

Páginas do artigo
   1. Squid com wccp
   2. Instalação do módulo wccp do kernel
   3. Instalação do Squid
   4. Configurando o NAT no iptables e o roteador
Outros artigos deste autor

Ansible, Puppet e Chef

Leitura recomendada

Sim, quebre o Debian!

Administrando Memória SWAP no GNU/Linux

Instalação do CRUX 3.0 em Virtualbox

Suporte multimídia e dicas de uso comum para o Ubuntu 11.04

Configurando um Super OpenBox!

  
Comentários
[1] Comentário enviado por roberva em 05/09/2006 - 11:58h

Muito bom artigo, estou estruturando uma rede utilizandp wccp porem em uma critica construtiva achei o artigo muito resumido...

[2] Comentário enviado por balani em 05/09/2006 - 22:27h

Muito bom o artigo, só faltou um exemplo pratico de utilização.vlw

[3] Comentário enviado por fabgcruz em 10/09/2006 - 13:56h

Bom ... uma vantagem de utilização do wccp (exemplo prático) é que você não tem que colocar as configurações de proxy no browser de cada estação de trabalho.

At+

[4] Comentário enviado por maxsuel_linux em 15/09/2006 - 09:21h

Muito bom essa forma!!! Muito bacana, mas essa configuração da certo em qualquer distribuição linux?

[5] Comentário enviado por fabgcruz em 21/09/2006 - 08:17h

Não sei qual distribuição você usa mas Fedora, Slackware e Debian ..rola ...nos outros deve funcionar sem problemas ...é por isso que amamos o LiNUX :)

O que pode mudar é a forma de instalar mas o resultado é o mesmo. Por exemplo no slackware não usaria rpm para instalar o squid ...

[6] Comentário enviado por rodrigofsantos em 11/10/2007 - 20:18h

cara estou usando o Debian 4 e estou tentando compilar este programa mas ta sempre dando o mesmo erro ja instalei o fonte do kernel na pasta /usr/src/linux ja fiz tudo mas sempre que executo o comando make install aparece o seguinte erro Makefile:25: *** Linux kernel source not configured - config.h not found. Pare. e dai não passa me ajuda ai pessoal

[7] Comentário enviado por fabgcruz em 16/10/2007 - 12:05h

Desculpe pela demora na resposta ....

Como ficou conseguiu resolver ? O que me parece é que as bibliotecas básicas nao estao instaladas ... como glibc por exemplo ...

Faz o seguinte : arrisca um apt-get install glibc ... como você usa o Debian a vida é mais fácil hehehehehe

Aguardo o seu retorno ..dessa vez respondo mais rápido ok? rsrs

Abraço

[8] Comentário enviado por cytron em 17/02/2008 - 16:43h

fabgcruz... me diz uma coisa!

Coloca redirecionamento no server onde fica o squid, e também coloca um redirecionamento no router... porque clocar nos dois?

Não bastaria colocar no router? já que o tráfego do server vai acabar passando por lá mesmo...?

Ex.: backbone <--> router <--> squid <--> switch <--> estações

Quando a requisição passa do switch para o squid, ele faz redirecionamento, então o squid passa para o router, que redireciona novamente para o squid, que redireciona novamente pra ele...?

Me explica aí porque agora fiquei confuso, ehehe, estou a dias estudando sobre protocolos de roteamento, dormindo pouco, já estou com o "buffer" cheio, kkkk, não estou assimilando as coisas! ehehehe.

[9] Comentário enviado por fabgcruz em 20/02/2008 - 11:34h

cytron

No meu caso tinha uma estrutura complexa, muitas subredes dmz pix router cisco etc etc etc

Na verdade o direcionamento é feito no iptables nesse caso, no router habilitei o wccp e defini a access-list (pq existiam várias no meu caso)... na verdade o conceito no router é de permissão ... entende?

Me manda o seu cenário que eu tento te ajudar ok?

Abraço!


Fabricio

[10] Comentário enviado por cytron em 23/02/2008 - 15:52h

Estou tentando otimizar a rede, atualmente está assim:

Vários links (vindo de roteadires) conectados a um switch que vai para o firewall, estou tentando fazer bonding mas tá barra! ehehe

do firewall vai para outro switch onde também vai radius, web, dns e proxy, do proxy vai para outro switch onde ficam os p2p para as células.

Links -> sw -> fw -> sw -> proxy -> sw -> clientes

apenas o fw está com IP válido, ele faz redirecionamento de portas para os outros servers, assim fica menos máquinas expostas, como pode ver na rede, fw e proxy fazem nat para que se possa navegar.

Acredito que haja uma maneira de otimzar esta rede.

Inclusive estou enfrentando alguns problemas com o protocolo ARP, se um servidor dhcp aparecer em algum lugar, e um cliente pedir IP, simplesmente passa pelos meus servidores. Ainda não domino o protocolo ARP.

No squid existem regras para isolar as vlans, no fw existem regras para permitir apenas o necessário. As demais máquinas estão com regras básicas para seguança dentro da rede.

Meu objetivo: Otimização pelo protocolo de roteamento e nat. Dominar o tráfego ARP na rede.

[11] Comentário enviado por obochecha em 30/12/2008 - 09:15h

Muito boa esse seu artigo, abriu minha menta para o uso do wccp.

Gostaria se possivel que você me ajudasse.

Eu estou utilizando o Slackware 12.1 kernel 2.6.24.5.
Tentei usar o ip_wccp 1.7 mas gerou um erro dizendo que estava faltando um arquivo conf.h se não me engano, estou agora tentando co o ip_wccp 1.6.2 só que ele dá o seguinte erro:

/root/ip_wccp-11.6.2/ip_wccp.c:66: 'struct sk_buff' has no member named 'nh'
acontence tbm em outras linhas; 69,82,83,87,95,96,98.

E pesquisei muito no google e dizem que precisa compilar o kernel.

e agora doutor?

[12] Comentário enviado por fabgcruz em 13/01/2009 - 23:43h


Olá !!

Desculpe a demora em responder .. é essa correria louca do dia a dia ...rsrsrs


Realmente o primeiro passo seria recompilar o kernel mesmo ....você sabe fazer isso?

Me mande a mensagem de erro certinha e eu te digo ..pois sofri para aprender a mexer nisso e devo conhecê-la muito bem rsrsrs

Abraco!!

Fabricio

[13] Comentário enviado por obochecha em 03/03/2009 - 10:24h

No momento Agradeço por ter entrado em contato. Acabei utilizando o Centos 5.0 cujo me atendeu muito bem.

Caso eu tente novamente essa aventura com slackware eu entro em contato Fabricio.
Mas seu tutorial Foi fundamental para minha implementação.

Obrigado por ter feito esse grandioso trabalho sobre wccp.

valew.

[14] Comentário enviado por ricardo.omar em 14/01/2010 - 17:40h

gostei do artigo ... mas estranhei voce não colocar nenhuma linha de configuração com relação ao wccp dentro do arquivo squid.conf. isso esta certo?

[15] Comentário enviado por fabgcruz em 18/11/2010 - 08:21h

Ricardo,

Desculpe a demora estive um pouco afastado do site devido trabalho .... no caso que simulei ..está certo sim ... as linhas adicionadas apenas no router redirecionando a porta 80 para fazer cache no squid

Abraço!

[16] Comentário enviado por GustavinhoO em 28/09/2011 - 08:56h

Bom dia ,

estou implantado o protocolo wccp porem esta dando o seguinte erro...


make -C /lib/modules/2.6.35-22-generic/build M=$PWD modules
make: *** /lib/modules/2.6.35-22-generic/build: No such file or directory. Stop.
make: *** [build2.6] Error 2

não consegui resolver

alguém pode me ajudar...

na verdade queria ate mesmo o wccp v2 mais não encontrei o download pra ele, se alguém souber me avise.

vlw

[17] Comentário enviado por removido em 12/09/2013 - 15:50h

Alguém conseguiu compilar o wccp?

eu recompilei meu squid 2.7.STABLE9 da seguinte forma

./configure --enable-wccp --enable-snmp
make all
make install

Até aqui tudo ocorreu bem.

Mas quando tento compilar o wccp, seguinte pacote ip_wccp-1.7.tar.gz

tar xvfz ip_wccp-1.7.tar.gz
cd ip_wccp-1.7
make install

Aparece o seguinte erro:

Makefile:25: *** Linux kernel source not configured - config.h not found. Stop.

Pesquisei na internet muito tiveram esse problema devido esse pacote ser antigo, lançado em 2007, foi preparado para kernels 2.4 que possuiam outra arquitetura de diretórios.
Estou tentando compilar no Debian 6.0 2.6.32-5-amd64 squeeze.

Por favor, se alguém resolveu, me ajuda ae

[18] Comentário enviado por premoli em 15/10/2013 - 08:29h

Até agora consegui através do tutorial encontrado aqui: http://nactac.com/2011/05/cisco-wccp2-with-squid-proxy-and-squidguard/
Muito bom, estou usando o squid3 configurado como no link acima para postar aqui, agora é testar com o cara da Cisco, futuro eu ...rsrsr


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts