Страница 1 из 1

Squid 3.0 рубит скорость UPLOADа

Добавлено: 2009-12-04 12:02:41
Tomb
Добрый день!
ОС :FreeBSD 7.1-RELEASE-p5 on i386
Сеть с двумя интерфейсами:

em0 - внешний
rl0 - 10.10.0.0/24

Столкнулся вчера с проблемой при настройке прозрачного прокси. Squid 3.0 Цель: при малой скорости инета держать кеш... заодно отрезать социальные сети... вообщем чистый http.
В начале обрадовался когда всё работает, кеш наполняеться, логи пишуться, уже привязал lightsquid.... :smile: и столкнулся с проблемой:
Если работать без сквида то скорость Download и Upload соответствуют тарифу провайдера.... а при включении сквида Download не меняется, а вот Upload очень близок к 0.
Если точно сказать то 0,07 Мбит.

вот часть фаера там где сквид:

Код: Выделить всё

/etc/ipfw.rules
#!/bin/sh
FwCMD="/sbin/ipfw"      # собственно где лежит бинарник ipfw
LanOut="em0"            # внешний интерфейс
LanIn="rl0"             # внутренний интерфейс
IpOut="xxx.xxx.xxx.xxx"    # внешний IP адрес машины
${FwCMD} -f flush
${FwCMD} add check-state

${FwCMD} add allow ip from any to any via lo0

${FwCMD} add deny ip from any to 127.0.0.0/8
${FwCMD} add deny ip from 127.0.0.0/8 to any

${FwCMD} -f table 0 flush
${FwCMD} add deny ip from "table(0)" to me

#${FwCMD} add deny ip from any to 10.0.0.0/8 in via ${LanOut}
${FwCMD} add deny ip from any to 172.16.0.0/12 in via ${LanOut}
${FwCMD} add deny ip from any to 192.168.0.0/16 in via ${LanOut}
${FwCMD} add deny ip from any to 0.0.0.0/8 in via ${LanOut}
# рубим автоконфигуреную частную сеть
${FwCMD} add deny ip from any to 169.254.0.0/16 in via ${LanOut}
# рубаем мультикастовые рассылки
${FwCMD} add deny ip from any to 240.0.0.0/4 in via ${LanOut}
# рубим фрагментированные icmp
${FwCMD} add deny icmp from any to any frag
# рубим широковещательные icmp на внешнем интерфейсе
${FwCMD} add deny log icmp from any to 255.255.255.255 in via ${LanOut}
${FwCMD} add deny log icmp from any to 255.255.255.255 out via ${LanOut}

# squid
${FwCMD} add 49 fwd 127.0.0.1,3128 tcp from 10.10.0.0/24 to any 80 via ${LanOut}

# пропускаем траффик через трансляцию сетевых адресов (NAT)
${FwCMD} add 50 divert natd ip4 from any to any via ${LanOut}
продолжение такое же как в образце
за образец был взят http://www.lissyara.su/articles/freebsd/tuning/ipfw/ Спасибо Вам за это :good:

Теперь сам конфиг Squid:

Код: Выделить всё

# NETWORK OPTIONS
http_port 127.0.0.1:3128 transparent
visible_hostname xxxxxxxxxxx
cache_mgr xxxxxxxxxxxx
cache_effective_user squid
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 128 MB
cache_swap_low 90
cache_swap_high 95
maximum_object_size 8192 KB
minimum_object_size 0 KB
maximum_object_size_in_memory 256 KB
ipcache_size 2048
ipcache_low 90
ipcache_high 95
fqdncache_size 4096
cache_replacement_policy lru
memory_replacement_policy lru
cache_dir ufs /usr/local/squid/cache 5000 16 256
logformat squid  %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt
access_log /usr/local/squid/logs/access.log squid
cache_log /usr/local/squid/logs/cache.log
cache_store_log /usr/local/squid/logs/store.log

refresh_pattern -i      \.gif$                  10080   90%     43200
refresh_pattern -i      \.(jpg|jpeg|png|bmp)$ 10080   90%     43200
refresh_pattern -i      \.swf$                  10080   90%     43200
refresh_pattern         .                        1440   50%     22160

acl lan src 10.10.0.0/24

http_access allow lan
http_access deny all

coredump_dir /usr/local/etc/squid/cache
Простой... но и при этом куда-то делась скорость по upload!!!!

Re: Squid 3.0 рубит скорость UPLOADа

Добавлено: 2009-12-04 15:19:59
Tomb
Спасибо всем...
Разобрался сам... чуть в фаере провтыкал:

вместо
${FwCMD} add 50 divert natd ip4 from any to any via ${LanOut}

надо было следовать образцу:

${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}


Может когда-то у кого-то будет такая же засада...

Re: Squid 3.0 рубит скорость UPLOADа

Добавлено: 2010-04-12 20:57:58
fox
Добрый день!
У меня похожая ситуация, squid в режиме трансперент, при upload файлов низкая скорость...
А вначале вообще не передовал а падала скорость, успев пару байт передать, я изменил правела в ipfw, было:

Код: Выделить всё

ipfw 2000  fwd 127.0.0.1,3128 tcp from 192.168.32.0/24 to any dst-port 80 via ale0
ipfw 3000 divert 8668 ip from 192.168.0.0/24 to any out via ale0
ipfw 3500  divert 8668 ip from any to 192.168.250.250 in via ale0
А стало:

Код: Выделить всё

ipfw 2000  fwd 127.0.0.1,3128 tcp from 192.168.32.0/24 to any dst-port 80 via ale0
ipfw 3000 divert 8668 ip from 192.168.0.0/16 to any out via ale0
ipfw 3500  divert 8668 ip from any to 192.168.250.250 in via ale0
адрес наружного интерфейса ale0:
ip: 192.168.250.250
mask: 255.255.255.0
gw: 192.168.250.1
Как его научить нормально upload файлов делать?
За ранние спасибо!