+ Responder ao Tópico



  1. #1

    Padrão WCCP v2 Cisco 2801 + Squid 2.7 + CentOs 5.4 = Surra absurda!

    Boa tarde a todos, venho recorrer novamente aos amigos mais experientes sobre como solucionar a configuração do WCCPv2 em um Cisco 2801, segue os resultados que obtive, acredito que falta pouca coisa para funcionar:

    Código :
    MegaRouter>sh ip wccp
    Global WCCP information:
        Router information:
            Router Identifier:                   200.xxx.xxx.126
            Protocol Version:                    2.0
     
        Service Identifier: web-cache
            Number of Cache Engines:             1
            Number of routers:                   1
            Total Packets Redirected:            5731
            Process:                             2
            Fast:                                0
            CEF:                                 5729
            Redirect access-list:                -none-
            Total Packets Denied Redirect:       0
            Total Packets Unassigned:            4
            Group access-list:                   -none-
            Total Messages Denied to Group:      0
            Total Authentication failures:       0
            Total Bypassed Packets Received:     0

    Código :
    MegaRouter>sh ip wccp web-cache detail
    WCCP Cache-Engine information:
            Web Cache ID:          172.16.1.6
            Protocol Version:      2.0
            State:                 Usable
            Initial Hash Info:     00000000000000000000000000000000
                                   00000000000000000000000000000000
            Assigned Hash Info:    FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
                                   FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
            Hash Allotment:        256 (100.00%)
            Packets Redirected:    319
            Connect Time:          01:04:06
            Bypassed Packets
              Process:             0
              Fast:                0
              CEF:                 0

    Bom, pelo que entendo o 2801 está reconhecendo o cache, porém, não está havendo tráfego, os pacotes não estão sendo redirecionados, segue minha configuração no Cisco:

    Código :
    Current configuration : 1485 bytes
    !
    version 12.4
    service timestamps debug datetime msec
    service timestamps log datetime msec
    service password-encryption
    !
    hostname MegaRouter
    !
    boot-start-marker
    boot-end-marker
    !
    enable secret 5 $1$1wLv$dgIgekFXlOyGhnuFlxLBf1
    !
    no aaa new-model
    !
    resource policy
    !
    mmi polling-interval 60
    no mmi auto-configure
    no mmi pvc
    mmi snmp-timeout 180
    ip subnet-zero
    ip wccp web-cache
    ip cef
    !
    !
    no ip dhcp use vrf connected
    !
    !
    !
    !
    !
    !
    interface FastEthernet0/0
     ip address 189.xxx.xxx.97 255.255.255.240
     ip wccp web-cache redirect out
     duplex auto
     speed auto
    !
    interface FastEthernet0/1 
     ip address 172.16.1.5 255.255.255.252
     duplex auto
     speed auto
     --More--

    FastEthernet 0/1 é a interface ligada ao servidor squid por um cabo cat5 crossover.

    Iptables:

    Código :
     iptables -t nat -A PREROUTING -i wccp2 -p tcp -m tcp --dport 80 -j REDIRECT --to-port 3128

    Interfaces configuradas no servidor squid:

    Código :
    eth2      Link encap:Ethernet  Endereço de HW 00:1F:D0:FE:A2:C4
              inet end.: 172.16.1.6  Bcast:172.16.1.7  Masc:255.255.255.252
              endereço inet6: fe80::21f:d0ff:fefe:a2c4/64 Escopo:Link
              UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
              RX packets:1225 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1776 errors:0 dropped:0 overruns:0 carrier:0
              colisões:0 txqueuelen:1000
              RX bytes:153658 (150.0 KiB)  TX bytes:200334 (195.6 KiB)
              IRQ:233 Endereço de E/S:0x8000
     
    lo        Link encap:Loopback Local
              inet end.: 127.0.0.1  Masc:255.0.0.0
              endereço inet6: ::1/128 Escopo:Máquina
              UP LOOPBACKRUNNING  MTU:16436  Métrica:1
              RX packets:8 errors:0 dropped:0 overruns:0 frame:0
              TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
              colisões:0 txqueuelen:0
              RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)
     
    wccp2     Link encap:Não Especificado  Endereço de HW AC-10-01-06-8E-BF-F4-AF-00-00-00-00-00-00-00-00
              inet end.: 172.16.1.6  P-a-P:172.16.1.6  Masc:255.255.255.255
              UP POINTOPOINT RUNNING NOARP  MTU:1476  Métrica:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              colisões:0 txqueuelen:0
              RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

    Tenho algumas dúvidas:

    O servidor cache, aponta rota default? Estou apontando para 172.16.1.5 que é o Cisco, o servidor cache tem acesso a todas as faixas de ip no Cisco mais não sai para internet, isso está certo?

    A marcação ZPH para cache full será reconhecida no firewall?

    Grato a todos.
    Última edição por Josue Guedes; 06-03-2010 às 16:11.

  2. #2

    Padrão

    tcpdump na wccp2 e veja se tem trafego...

  3. #3

    Padrão

    Citação Postado originalmente por alexandrecorrea Ver Post
    tcpdump na wccp2 e veja se tem trafego...
    Bom dia Alexandre, no final de semana fiz mais testes, verifiquei se há trafego no tunnel, e não há, esse tunel gre que fiz na realidade não estava conectado, pois a interface eth2 estava com o mesmo ip, resolvi então criar o tunel no Cisco e setar ip´s diferentes da faixa de ip do tunnel, ai sim, estabeleceu rede tanto no tunel como nas interfaces do cisco e servidor squid. Contudo após isso o cisco não reconheceu mais o cache. Voltando ao modo anterior passou a ser reconhecido contudo não abre página.

    Fiz o seguinte no Cisco:

    interface Tunnel0

    ipaddres 172.16.1.5
    source destination 192.168.0.1 (interface setada no squid)

    etc.....

    Tenho a impressão que algo está errado no tunel.

    Grato pela ajuda.

  4. #4

    Padrão

    Não pude ver o restante de sua configuração cisco, em virtude da outra interface não apaecer a configuração.

    Já aconteceu comigo este problema, experimente adicionar a rota no Linux para o gateway dos clientes.

    No meu caso passou a funcionar, ao que me parece ele não conseguia encontrar retorno.

  5. #5

    Padrão

    nao precisa de criar o tunel0 nao.. o wccp comunica com o proxy via gre sem esse tunel

  6. #6

    Padrão

    Citação Postado originalmente por herlon2008 Ver Post
    Não pude ver o restante de sua configuração cisco, em virtude da outra interface não apaecer a configuração.

    Já aconteceu comigo este problema, experimente adicionar a rota no Linux para o gateway dos clientes.

    No meu caso passou a funcionar, ao que me parece ele não conseguia encontrar retorno.

    Bom dia Herlon,

    mudei algumas coisas aqui,

    ip wccp web-cache mudei para in, estava em out;

    como eu estava falando com Alexandre, o Tunel Gre (wccp2) estava só de enfeite, ou não sei se isso é assim mesmo.

    segue a configuração do Cisco:

    Código :
    Current configuration : 1484 bytes
    !
    version 12.4
    service timestamps debug datetime msec
    service timestamps log datetime msec
    service password-encryption
    !
    hostname MegaRouter
    !
    boot-start-marker
    boot-end-marker
    !
    enable secret 5 $1$1wLv$dgIgekFXlOyGhnuFlxLBf1
    !
    no aaa new-model
    !
    resource policy
    !
    mmi polling-interval 60
    no mmi auto-configure
    no mmi pvc
    mmi snmp-timeout 180
    ip subnet-zero
    ip wccp web-cache
    ip cef
    !
    !
    no ip dhcp use vrf connected
    !
    !
    !
    !
    !
    !
    interface FastEthernet0/0
     ip address 189.xxx.xxx.97 255.255.255.240
     ip wccp web-cache redirect in
     duplex auto
     speed auto
    !
    interface FastEthernet0/1
     ip address 172.16.1.5 255.255.255.252
     duplex auto
     speed auto
     !
    interface Serial0/1/0
     ip address 200.xxx.xxx.126 255.255.255.252
     encapsulation ppp
    !
    interface Serial0/1/1
     no ip address
     shutdown
     clockrate 2000000
    !
    interface Serial0/3/0
     no ip address
     shutdown
     clockrate 2000000
    !
    interface Serial0/3/1
     no ip address
     shutdown
     clockrate 2000000
    !
    router rip
     network 200.209.129.0
    !
    ip classless
    ip route 0.0.0.0 0.0.0.0 200.xxx.xxx.125
    ip route 189.xxx.xxx.0 255.255.255.192 198.xxx.xxx.98
    ip route 189.xxx.xxx.0 255.255.255.192 189.xxx.xxx.99
    ip route 189.xxx.xxx.64 255.255.255.192 198.xxx.xxx.98
    ip route 189.xxx.xxx.64 255.255.255.192 189.xxx.xxx.99
    ip route 200.xxx.xxx.0 255.255.255.0 200.xxx.xxx.125
    ip route 200.xxx.xxx.0 255.255.255.0 200.xxx.xxx.125
    !
    no ip http server
    !
    !
    !
    !
    control-plane
    !
    !
    line con 0
    line aux 0
    line vty 0 4
     password 7 060B0A264D4F0A1C16041D1306573233767165
     login
    !
    end
     
    MegaRouter#

    Tentarei apontar então a rota default no Squid para 189.xxx.xxx.98 que é o Gateway das faixas válidas nos cliente, ou aponto para o Gateway dos clientes mesmo que 200.xxx.xxx.1?

    Grato.

  7. #7

    Padrão

    Citação Postado originalmente por alexandrecorrea Ver Post
    nao precisa de criar o tunel0 nao.. o wccp comunica com o proxy via gre sem esse tunel
    Hum, beleza, é porque fazendo o Tunnel0 no Cisco piorou, então a interface que levanta o tunel gre, tem o mesmo ip do tunel mesmo?

  8. #8

    Padrão

    na epoca que estava mexendo na codificação do tproxy no lusca, o adrian (mantedor e desenvolvedor) me disse que o ideal que o proy fique em uma interface SEPARADA, para evitar confusão do router em qual pacote atuar...

    mesmo que seja uma VLAN. e realmente, fiz isso aqui e fica muito melhor de trabalhar.. menos confuso e sem problemas de pacotes entrarem e sairem por locais errados..


    como tenho algumas FE´s sobrando.. coloquei os proxyes em interfaces separadas.. ficando assim:

    FastEthernet 0/0/0 - clientes
    FastEthernet 1/0/0 - lan proxyes
    FastEthernet 2/0/0 - wan1
    FastEthernet 2/0/1 - wan2

    na lan dos proxyes.. eu do um exclude no wccp.. na interface dos clientes eu coloco redirect IN

    no linux.. configuro a interface normal.. note que, o trafego na WCCP2, sera somente de ENTRADA (do router para o servidor) .. a saida sera pela ethernet normal

  9. #9

    Padrão

    Acho que existe uma forma mais facil de resolver seu problema, atribua um IP valido /30, que ao meu ver ira funcionar.

    Pois não encontrei um NAT ou algo que faça com que o proxy tenha saida para o mundo externo.

  10. #10

    Padrão

    Citação Postado originalmente por alexandrecorrea Ver Post
    na epoca que estava mexendo na codificação do tproxy no lusca, o adrian (mantedor e desenvolvedor) me disse que o ideal que o proy fique em uma interface SEPARADA, para evitar confusão do router em qual pacote atuar...

    mesmo que seja uma VLAN. e realmente, fiz isso aqui e fica muito melhor de trabalhar.. menos confuso e sem problemas de pacotes entrarem e sairem por locais errados..


    como tenho algumas FE´s sobrando.. coloquei os proxyes em interfaces separadas.. ficando assim:

    FastEthernet 0/0/0 - clientes
    FastEthernet 1/0/0 - lan proxyes
    FastEthernet 2/0/0 - wan1
    FastEthernet 2/0/1 - wan2

    na lan dos proxyes.. eu do um exclude no wccp.. na interface dos clientes eu coloco redirect IN

    no linux.. configuro a interface normal.. note que, o trafego na WCCP2, sera somente de ENTRADA (do router para o servidor) .. a saida sera pela ethernet normal
    Meu Cisco aqui é o 2801 ele tem 2 fastEthernet, a situação é um pouco parecida com a sua, pois estou com o proxy em uma interface separada. Já entendi sobre o tunuel, vou fazer mais testes agora a tarde, pelo que vi tenho colocar no tunnel o gre remote, o ip que vai interceptar as requisições, vou testar isso aqui. O trafego no wccp2 aconteceu somente na entrada, mais achei que isso estava errado, rsrsr. Posto novos resultados.

  11. #11

    Padrão

    Citação Postado originalmente por herlon2008 Ver Post
    Acho que existe uma forma mais facil de resolver seu problema, atribua um IP valido /30, que ao meu ver ira funcionar.

    Pois não encontrei um NAT ou algo que faça com que o proxy tenha saida para o mundo externo.
    Exato, cheguei a fazer isso aqui e deu acesso a net mesmo, contudo como não vi isso em nehum tutorial dos "montes" que li na net, desconfiei que poderia causar problemas. Você tem ai funcionando com Ip´s válidos? Tentarei inicialmente sem ip´s validos. Obrigado

  12. #12

    Padrão

    Bom dia a todos.

    Venho informar que tive sucesso na configuração do WCCPv2. Conforme nosso amigo Herlon sugeriu com utilização de Ip válido entre o router e o Squid, o squid passou a ter acesso a net e funcionou o WCCP. Conforme o Alexandre disse o tráfego ocorre em apenas um lado do tunel gre. Mais acredito que a grande questão que pegou aqui foi o entendimento da criação do tunel gre. Segue minha configuração:

    No rc.local

    Código :
    /bin/echo 1 > /proc/sys/net/ipv4/ip_forward
    /bin/echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter
    /sbin/modprobe ip_gre
    ip tunnel add wccp2 mode gre remote 200.xxx.xxx.126 local 189.xxx.xxx.106 dev eth2
    ip addr add 189.xxx.xxx.106/32 dev wccp2
    ip link set wccp2 up
    /bin/echo 0 > /proc/sys/net/ipv4/conf/wccp2/rp_filter

    O ip remote foi o ip que aparece no Cisco, no router indentification. Outro detalhe também é na hora de definir o ip wccp web-cache redirect, se será out ou in. Isso dependerá de qual interface será aplicado, se for na interface que sai para net será out, se for interface que vai para os clientes/Servidor será in.

    Agora vamos para a segunda parte da luta, o Tproxy, pois no site meu ip aparece o Ip do proxy, mesmo usando o WCCP. O caminho realmente é o Tproxy ou temos outra opção?

    Grato a todos.

  13. #13

    Padrão

    Boa tarde a todos, informo que iniciei as tentativas com o Tproxy, estarei abrindo outro tópico, já que o WCCP foi resolvido. Obrigado a todos. Não estou conseguindo agradecer os posts!

  14. #14

    Padrão

    Se for fazer tproxy utilize um kernel recente pois já vem com os scripts bastando somente habilitar e recompilar, antigamente quando fiz tive que aplicar os patchs no kernel, habilitar as opções e recompilar.
    Tive varios problemas e tive que ir mexendo em alguns arquivos do iptables e movimentando arquivos de local ou criando links, haja visto que muitas vezes não o encontrava algumas bibliotecas que estavam lá mas em local diferente.

  15. #15

    Padrão

    Citação Postado originalmente por herlon2008 Ver Post
    Se for fazer tproxy utilize um kernel recente pois já vem com os scripts bastando somente habilitar e recompilar, antigamente quando fiz tive que aplicar os patchs no kernel, habilitar as opções e recompilar.
    Tive varios problemas e tive que ir mexendo em alguns arquivos do iptables e movimentando arquivos de local ou criando links, haja visto que muitas vezes não o encontrava algumas bibliotecas que estavam lá mas em local diferente.
    Foi exatamente o caminho que escolhi, estou tentando no Fedora 11 e a ultima versão do Lusca, a briga já começou:

    https://under-linux.org/f96/lusca-tp...96/#post467455

  16. #16

    Padrão Re: WCCP v2 Cisco 2801 + Squid 2.7 + CentOs 5.4 = Surra absurda!

    Amigos, tenho um problema com WCCP em cima de Squid com proxy transparente. Está funcionando beleza com trafego http (porta 80), só que acesso a bancos (https / ssl) não rola. É sabido que https não funciona com proxy transparent por proteção a ataque do Homem do Meio. Minha pergunta, como fazer funcionar WCCP em cima de proxy linux (transparente ou não), e que funcione para acesso a portas 80 / 443/ 563.