+ Responder ao Tópico



  1. #1

    Padrão Proxy paralelo limitando velocidade!

    Pessoal tenho dois links de 2 megas dedicados ligados num mikrotik, rodando hotspot para autenticaçao e controle de banda de meus clientes, estou tentando implementar um proxy paralelo a ele estou utilizando ubuntu server, consegui instalar o squid e o mesmo já esta recebendo as requisições vindas da interface do mikrotik(15.15.0.1) porem assim que ativo o direcionamento no firewall nat a rede fica bastante lenta, faço controle de banda com 128k e não esta chagando nem a 40k quando tiro o redirecionamento volta a velocidade normal??

    minhas configurações:

    / ip firewall nat
    add chain=srcnat action=masquerade comment="MASQUEREDE HOTSPOT" disabled=no
    add chain=dstnat src-address=192.168.20.0/26 protocol=tcp dst-port=80 action=dst-nat to-addresses=15.15.0.2 to-ports=3128 \
    comment="Direcionar para Proxy" disabled=yes
    add chain=pre-hotspot in-interface=RADIO protocol=tcp dst-port=80 action=redirect to-ports=3128 comment="" disabled=yes
    add chain=pre-hotspot in-interface=CABO protocol=tcp dst-port=80 action=redirect to-ports=3128 comment="" disabled=yes
    add chain=dstnat protocol=tcp dst-port=443 content=!orkut action=accept comment="Conex es 443" disabled=no
    add chain=dstnat dst-address=207.46.0.0/16 protocol=tcp action=accept comment="Com essas regras estabiliza o MSN" \
    disabled=no
    add chain=dstnat dst-address=64.4.0.0/16 protocol=tcp action=accept comment="" disabled=no
    add chain=dstnat dst-address=65.54.0.0/16 protocol=tcp action=accept comment="" disabled=no

    no webproxy esta setado o parent proxy e parent port, utilizo o mikrotik 2.9, espero que alguem tenha uma solução..


    um abraço

  2. #2
    Avatar de shuttner
    Ingresso
    Aug 2008
    Localização
    Boa Vista - Roraima
    Posts
    257
    Posts de Blog
    1

    Padrão

    Citação Postado originalmente por marconipcd Ver Post
    Pessoal tenho dois links de 2 megas dedicados ligados num mikrotik, rodando hotspot para autenticaçao e controle de banda de meus clientes, estou tentando implementar um proxy paralelo a ele estou utilizando ubuntu server, consegui instalar o squid e o mesmo já esta recebendo as requisições vindas da interface do mikrotik(15.15.0.1) porem assim que ativo o direcionamento no firewall nat a rede fica bastante lenta, faço controle de banda com 128k e não esta chagando nem a 40k quando tiro o redirecionamento volta a velocidade normal??

    minhas configurações:

    / ip firewall nat
    add chain=srcnat action=masquerade comment="MASQUEREDE HOTSPOT" disabled=no
    add chain=dstnat src-address=192.168.20.0/26 protocol=tcp dst-port=80 action=dst-nat to-addresses=15.15.0.2 to-ports=3128 \
    comment="Direcionar para Proxy" disabled=yes
    add chain=pre-hotspot in-interface=RADIO protocol=tcp dst-port=80 action=redirect to-ports=3128 comment="" disabled=yes
    add chain=pre-hotspot in-interface=CABO protocol=tcp dst-port=80 action=redirect to-ports=3128 comment="" disabled=yes
    add chain=dstnat protocol=tcp dst-port=443 content=!orkut action=accept comment="Conex es 443" disabled=no
    add chain=dstnat dst-address=207.46.0.0/16 protocol=tcp action=accept comment="Com essas regras estabiliza o MSN" \
    disabled=no
    add chain=dstnat dst-address=64.4.0.0/16 protocol=tcp action=accept comment="" disabled=no
    add chain=dstnat dst-address=65.54.0.0/16 protocol=tcp action=accept comment="" disabled=no

    no webproxy esta setado o parent proxy e parent port, utilizo o mikrotik 2.9, espero que alguem tenha uma solução..


    um abraço
    Aqui vc esta direcioando todas as requisições de navegação
    Código :
    add chain=dstnat src-address=192.168.20.0/26 protocol=tcp dst-port=80 action=dst-nat to-addresses=15.15.0.2 to-ports=3128 \
    comment="Direcionar para Proxy" disabled=yes

    o certo seria
    Código :
    add chain=dstnat src-address=192.168.20.0/26 protocol=tcp dst-port=80 action=redirect to-ports=3128 comment="Direcionar para Proxy" disabled=yes


    Outra o que pude notar na versão 2.9.27 quando vc faz cache paralelo usando o Web-Proxy com cache full mesmo tendo colocado parent-proxy e parent-port vc continua mandando o cache pro proprio MK e os clientes continuavam o problema do MK não suportar com tranquilidade as conexões ao Web-Proxy.
    Então fiz em IP > Proxy
    enabled: yes
    port: 3030
    parent-proxy: 192.168.10.2:3128
    maximal-client-connecions: 1000
    maximal-server-connectons: 1000

    Deixei habilitado o cache full e as requisições agora estão se conectando somente ao proxy do Squid.

  3. #3

    Padrão

    amigo obrigado pela ajuda, fiz como voce me disse e meu squid agora esta retornando acesso proibido, sabes me dizer o que esta acontecendo,no squid.conf liberei para o 15.15.0.1 que é o ip no meu mikrotik

  4. #4
    Avatar de shuttner
    Ingresso
    Aug 2008
    Localização
    Boa Vista - Roraima
    Posts
    257
    Posts de Blog
    1

    Padrão

    Vc deve ter seguido esse manual
    Detalhando proxy paralelo com o linux

    Código :
    /ip address add address=15.15.0.1/30 interface=linux
     
    ifconfig eth0 15.15.0.2 netmask 255.255.255.0 up
    Como pode ver estão em sub-redes diferentes

    o squid era pra ser
    Código :
    ifconfig eth0 15.15.0.2 netmask 255.255.255.252 up

    Código :
    # modprobe iptable_nat
    # echo 1 > /proc/sys/net/ipv4/ip_forward
    # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    quando faz isso vc esta compartilhando a conexão pelo squid, ou seja,
    quando o cliente for direcionado pro proxy ele vai procurar no cache não tendo no cache
    ele vai acabar saindo pelo squid e não pelo MK, o que pode gerar um alto trafego na sua rede
    veja se não esta ocorrendo isso.
    Isso não resolvendo vo postar as configurações.

  5. #5

    Padrão

    compartilhei a interface do ubuntu e nada, assim que ele começa a receber as requisições a velocidade cai geral

    e agora??

  6. #6
    Avatar de shuttner
    Ingresso
    Aug 2008
    Localização
    Boa Vista - Roraima
    Posts
    257
    Posts de Blog
    1

    Padrão

    MK
    Redirecionamento do Proxy
    Código :
    ip firewall nat add chain=dstnat protocol=tcp dst-port=80 in-interface=redeclientes \
    action=redirect to-port=3030

    IP
    Código :
    ip address add address=10.10.10.1/30 interface=linux

    NAT SQUID
    Código :
    ip firewall nat add chain=srcnat src-address=10.10.10.0/30 action=masquerade

    Regra do Alexandre Correa
    MANGLE
    Código :
    ip firewall mangle 
    add chain=output protocol=tcp src-port=8080 content="X-Cache: HIT" action=mark-connection \
        new-connection-mark=conn_squid-up passthrough=yes comment="CACHE FULL" disabled=no 
    add chain=output connection-mark=conn_squid-up action=mark-packet new-packet-mark=pacotes_squid-up \
        passthrough=yes comment="" disabled=no 
    add chain=prerouting protocol=tcp dst-port=8080 action=mark-connection new-connection-mark=conn_squid-down \
        passthrough=yes comment="" disabled=no 
    add chain=prerouting connection-mark=conn_squid-down action=mark-packet new-packet-mark=pacotes_squid-down \
        passthrough=yes comment="" disabled=no

    Regra do Alexandre Correa
    QUEUE TREE
    Código :
    /queue tree
    add name="\[CACHE-FULL\] - Download" parent=global-in packet-mark=pacotes_squid-down limit-at=0 queue=default \
        priority=1 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s disabled=no 
    add name="\[CACHE-FULL\] - Upload" parent=global-out packet-mark=pacotes_squid-up limit-at=0 queue=default \
        priority=1 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s

    IP Proxy (não eh no WEB-PROXY)
    Código :
    enabled: yes
                          port: 3030
                   parent-proxy: 10.10.10.2:3128
      maximal-client-connecions: 1000
      maximal-server-connectons: 1000


    Squid3 Instalado no Debian

    Configurando a rede
    Código :
    ifconfig eth0 10.10.10.2 netmask 255.255.255.252 up

    Configurando o route
    Código :
    route del default
    route add default gw 192.168.10.1 dev eth0

    Instalar o Squid3
    Código :
    apt-get install squid3

    Quando o Squid3 instalar ele vai para essa pasta
    Código :
    /etc/squid3/squid.conf

    Squid.conf
    Código :
    http_port 3128
    visible_hostname Squid
    cache_mem 80 MB
    maximum_object_size_in_memory 80 KB
    maximum_object_size 20 MB
    minimum_object_size 0 KB
    cache_swap_low 80
    cache_swap_high 90
    cache_dir ufs /var/spool/squid3 2048 16 256
    cache_access_log /var/log/squid3/access.log
    refresh_pattern ^ftp: 15 20% 2280
    refresh_pattern ^gopher: 15 0% 2280
    refresh_pattern . 15 20% 2280
     
    acl manager proto cache_object
    acl localhost src 127.0.0.1/255.255.255.255
    acl SSL_ports port 443 563
    acl Safe_ports port 80 # http
    acl Safe_ports port 21 # ftp
    acl Safe_ports port 443 563 # https, snews
    acl Safe_ports port 70 # gopher
    acl Safe_ports port 210 # wais
    acl Safe_ports port 1025-65535 # unregistered ports
    acl Safe_ports port 280 # http-mgmt
    acl Safe_ports port 488 # gss-http
    acl Safe_ports port 591 # filemaker
    acl Safe_ports port 777 # multiling http
    acl Safe_ports port 901 # SWAT
    acl purge method PURGE
    acl CONNECT method CONNECT
    http_access allow manager localhost
    http_access deny manager
    http_access allow purge localhost
    http_access deny purge
    http_access deny !Safe_ports
    http_access deny CONNECT !SSL_ports
    acl redelocal src 10.10.10.0/24
    http_access allow localhost
    http_access allow redelocal
    http_access deny all

    Outra coisa tbm instalei o Sarg
    ele emiti os relatórios de acessos
    mas como o Proxy fica em uma rede separada dos cliente e os clientes
    acessam o proxy por meio do mk nos relatorios do Sarg so vai aparecer o ip do MK
    caso queria colocar o proxy na mesma rede fica a criterio de vcs mas há outras forma
    de se emitir relatorio de acessos dos clientes, só fiz isso para fazer um teste, pois vi
    que seria uma implementação mais rapida, mas não a correta que eh para ter o ip de cada cliente vendo que eles acessam.
    Última edição por shuttner; 21-03-2009 às 11:22.

  7. #7

    Padrão

    Agradeço mais uma vez, mais meu problema ainda continua, instalei o squid3, coloquei todas as regras que você postou quando dei um tail -f /var/log/squid3/access.log vi que ele estava recebendo as requisições e navegando mais com pouco tempo a velocidade cai pra 60 50 30k sendo de 128k notei também em system resource que o CPU load que normalmente fica em 15 ou 20 no maximo 30 dispara para 60 80 e chega a dara 100 direto, não sei se essa informação ajudará alguem a me ajudar nisto, aguardo..

  8. #8

    Padrão

    Ótima dica Shuttner!
    tive muita dor de cabeça com mk e esse web-proxy dele..rsrs
    usava direto no mk, era problema, fiz paralelo com squid em parent proxy era problema..
    ate msmo dst-nat direto da problema pois nao tem nada controlando as conexões para squid..
    Já essa solução foi o "caminho do paraiso" aki pra minha navegação kkkkk
    melhorou mto msmo..

    ainda usei aki no squid algumas regras q melhoram o acesso a memoria e ao disco..
    tá bala

    tbm sou grato pela sua ajuda kra
    brigaduu msmooo

  9. #9

    Padrão

    Pessoal, tava analisando.... e percebi que o problema da lentidão é só nas páginas que não passam pelo proy e que o squid sinaliza como TCP_MISS as páginas que passam pelo proxy abrem normal ou com velocidade bem maior,

    Analisei também meu esquema e ordem das coisas e gostaria de uma opinião de vocês

    meu esquema atual

    EMBRATEL ----------------HOTSPOT/MIKROTIK-------CLIENTES
    |
    |
    SQUID/UBUNTU

    a pergunta é se eu colocar o ubuntu/squid(cache) na frente do mikrotik recebendo o link e fazendo cache, iria coinseguir controlar todo o resto pelo mikrotik?

    esquema previsto...

    EMBRATEL ----------------SQUID/UBUNTU ---HOTSPOT/MIKROTIK
    |
    |
    CLIENTES

    espero a respota para solução do meu problema e crescimento do forum...

  10. #10
    André Andrade*MikrotikRio Avatar de interhome
    Ingresso
    Oct 2008
    Localização
    Brasil.
    Posts
    1.116
    Posts de Blog
    15

    Padrão

    Veja com iptraf o consumo do seu link na maquina que esta com squid. Podem estar estourando o seu link externamente uma vez que possui um Ip válido. Tem que criar regras de bloqueio ao squid e de quebra ao Dns.

  11. #11

    Padrão

    Citação Postado originalmente por interhome Ver Post
    Veja com iptraf o consumo do seu link na maquina que esta com squid. Podem estar estourando o seu link externamente uma vez que possui um Ip válido. Tem que criar regras de bloqueio ao squid e de quebra ao Dns.

    A Regra de firewall filter já criei bloqueando acesso externo, mesmo assim o problema continua..

  12. #12
    André Andrade*MikrotikRio Avatar de interhome
    Ingresso
    Oct 2008
    Localização
    Brasil.
    Posts
    1.116
    Posts de Blog
    15

    Padrão

    Citação Postado originalmente por marconipcd Ver Post
    A Regra de firewall filter já criei bloqueando acesso externo, mesmo assim o problema continua..
    Voce criou a regra no Mk, mas o seu proxy (squid) esta rodando em outra maquina usando IP válido. Criou regra de bloqueio nesta maquina ?

  13. #13

    Padrão

    amigo, mais ou menos 1 hora esta estavel sem problemas algum notei que quando começou horario de pico a partir de uns 20 minutos atraz começou o mesmo problema, tou pensando uma coisa aqui defini um ip valido para o squid tudo bem, porém utilizo dois links de 2 megas que chegam no meu swthi e um cabo do swthi para o linux-squid então definir como interface eth1 e eth1:1 e também definir dois gatways agora minha pergunta é será que todos os dois links estão sendo utilizados??

  14. #14
    André Andrade*MikrotikRio Avatar de interhome
    Ingresso
    Oct 2008
    Localização
    Brasil.
    Posts
    1.116
    Posts de Blog
    15

    Padrão

    Citação Postado originalmente por marconipcd Ver Post
    amigo, mais ou menos 1 hora esta estavel sem problemas algum notei que quando começou horario de pico a partir de uns 20 minutos atraz começou o mesmo problema, tou pensando uma coisa aqui defini um ip valido para o squid tudo bem, porém utilizo dois links de 2 megas que chegam no meu swthi e um cabo do swthi para o linux-squid então definir como interface eth1 e eth1:1 e também definir dois gatways agora minha pergunta é será que todos os dois links estão sendo utilizados??
    Use; route -n

    voce verá qual a rota que esta sendo a saida. Pode tbm ver atraves do iptraf o trafego nas suas ethernets, por ali suas perguntas serão respondidas.