Squid com ZPH

September 19, 2009

ZPH (Zero Penalty Hit) é um recurso do squid que permite a marcação de pacotes originados de algo que está em cache. Ele é usado principalmente em sistemas onde há controle de banda. Quando você faz a limitação de tráfego no servidor, os objetos que estiverem em cache também serão limitados quando solicidatos. Com o ZPH você consegue saber o que não deve passar pelo controle de banda. No seu squid.conf coloque as seguintes linhas:

zph_mode tos
zph_local 0×02

Assim o Squid irá marcar os pacotes com a flag 0×02, agora no seu firewall (IPFW no meu caso) adicione uma regra permitindo o tráfego marcado antes das suas regras de controle de banda:

ipfw -q add 50 allow ip from any to any iptos mincost

default:
 set log Phase Chat LCP IPCP CCP tun command
 set device /dev/cuaU0
# set speed 236800
 set speed sync
 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT \
           OK-AT-OK ATE1Q0 OK \\dATDT\\T TIMEOUT 40 CONNECT"

claro:
 set authname claro
 set authkey claro
 set phone *99***1\#
 set login "TIMEOUT 10 \"\" \"\" \ CAUSE ERROR PLEASE NO CHANGE!
      gin:--gin: \\U word: \\P"
 set timeout 1
 set ifaddr 10.0.0.1/0 127.0.0.1/0 255.255.255.0 0.0.0.0
 #set ifaddr 10.0.0.1/0
# add default HISADDR
 enable dns
default:
 shell logger "LABEL down (up UPTIME): OCTETSIN received, OCTETSOUT sent"

claro:
 shell route delete default
claro:
 shell route delete default
 shell route add default -interface INTERFACE

Leave a Reply