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.
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:
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!
[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.
[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
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?
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.
[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
[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.
[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.