Squid работает, а потом начинает тормозить и перестает работать. Помогите пожалуйста! Что поправить в конфиге? Или конфиг подозрений не вызывает? На прокси сделан редирект через iptables.squid.conf________________
acl all src 0.0.0.0/0.0.0.0
acl root_host src 192.168.x.x
acl localhost src 127.0.0.1/255.255.255.255
acl my_local src 192.168.x.0/x
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 9443 9080 563 15100 11001 11002
acl Safe_ports port 80# http
acl Safe_ports port 21# ftp
acl Safe_ports port 443 9443 9080 563 11001 11002 # https
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 CONNECT method CONNECTacl bad_sites url_regex -i "/usr/local/squid/etc/bw.regex"
http_access allow root_host
http_access deny bad_sites
http_access allow my_local
http_access deny all
icp_access allow allhttp_port 3128 transparent
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERYmaximum_object_size_in_memory 48 MB
cache_dir ufs /usr/local/squid//var/cache 40960 16 256
maximum_object_size 192 MB
access_log /usr/local/squid//var/logs/access.log squid
refresh_pattern ^ftp:144020080
refresh_pattern ^gopher:1440040
refresh_pattern .020C20
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
cache_effective_user squid
dns_nameservers 192.168.x.X
reload_into_ims oncoredump_dir /usr/local/squid//var/cache
forwarded_for off
header_access Via deny all
>Squid работает, а потом начинает тормозить и перестает работать. Помогите пожалуйста!
>Что поправить в конфиге? Или конфиг подозрений не вызывает? На прокси
>сделан редирект через iptables.Когда тормозит - память свободная есть? Система "свопитя"? Место в разделе с "/usr/local/squid//var/cache" есть свободное? Может, какие ошибки в логе пишет?...
>maximum_object_size_in_memory 48 MB
Не много?
>cache_dir ufs /usr/local/squid//var/cache 40960 16 256
>maximum_object_size 192 MBНе много? Не мало?.......
А ещё можно добавить -
cache_mem 60 MB
- а то по умолчнию (в моём .../examples/default.squid - 2.6.STABLE20) -
#Default:
# cache_mem 8 MB
- точно для "_size_in_memory 48 MB" маловато.
>[оверквотинг удален]
>>maximum_object_size 192 MB
>
>Не много? Не мало?.......
>
>А ещё можно добавить -
>cache_mem 60 MB
>- а то по умолчнию (в моём .../examples/default.squid - 2.6.STABLE20) -
>#Default:
># cache_mem 8 MB
>- точно для "_size_in_memory 48 MB" маловато.Я поправил эти значения. По-моему логичнее вышло:
maximum_object_size_in_memory 512 KB
cache_dir ufs /usr/local/squid//var/cache 40960 16 256
maximum_object_size 8092 KBМеста на разделе под кеш - до фига и больше(занят на 7%). Система не свопится. Памяти свободной много (177 мб).
В cache.log начиная с момента торможения:
_______
2008/10/06 16:19:26| httpReadReply: Excess data from "GET http://count1.altastat.com/?001.gif&r=http://yandex.ru/yands...
Ќ008/10/06 16:22:11| parseHttpRequest: Unsupported method 'K?™џҐУ68ЈTбЪUWГd#іџЌI‰#±КK?ШЭ)їEя№NTpТдъчЬоDВ~–\i'џ
'
2008/10/06 16:22:11| clientReadRequest: FD 41 (192.168.2.x:4996) Invalid Request
ІInк·|zфББ4Wз—t+o±7| parseHttpRequest: Unsupported method 'FЊЋ;±b
'
2008/10/06 16:23:37| clientReadRequest: FD 21 (192.168.2.x:1170) Invalid Request
2008/10/06 16:25:04| parseHttpRequest: Unsupported method 'ЇІ±И¶ЅРл4КЌї…-j'їїЃ©f
'
2008/10/06 16:25:04| clientReadRequest: FD 22 (192.168.2.x:1254) Invalid Request
4ЁЯѕйёQRX/ 16:25:04| parseHttpRequest: Unsupported method 'o#_†#сcІCЃГ¦зКТУ
в&…кЃьРкюKWф±s-ФRэ‘п]'
2008/10/06 16:25:04| clientReadRequest: FD 25 (192.168.2.x:1255) Invalid Request
2008/10/06 16:33:02| parseHttpRequest: Unsupported method 'Є«о;“4xI
'
2008/10/06 16:33:02| clientReadRequest: FD 33 (192.168.2.x:3780) Invalid Request
2008/10/06 16:39:17| parseHttpRequest: Unsupported method '›№І„дS…<ўҐЎу)u^мЈљє}ћЪ@ЦТ©»T &Ь
'
2008/10/06 16:39:17| clientReadRequest: FD 35 (192.168.2.x:8000) Invalid Request
2008/10/06 16:49:32| parseHttpRequest: Unsupported method '^·е&\и—bЌгЈs“уА42рЦІ"Н¬е
'
2008/10/06 16:49:32| clientReadRequest: FD 20 (192.168.2.x:8053) Invalid Request
______________В access.log много записей TCP_MISS 200. Пол дня все работало нормально. Потом некоторые сайты перестали загнружаться
>[оверквотинг удален]
>>
>>А ещё можно добавить -
>>cache_mem 60 MB
>>- а то по умолчнию (в моём .../examples/default.squid - 2.6.STABLE20) -
>>#Default:
>># cache_mem 8 MB
>>- точно для "_size_in_memory 48 MB" маловато.
>
>Я поправил эти значения. По-моему логичнее вышло:
>cache_mem увеличили? при 40 гигах, 8 МВ маловато
>maximum_object_size_in_memory 512 KB
>cache_dir ufs /usr/local/squid//var/cache 40960 16 256два слеша подрят это и в конфиге так?
>maximum_object_size 8092 KBэто под BSD? попробуйте на разделе с cache_dir отключить soft update
>[оверквотинг удален]
>2008/10/06 16:39:17| parseHttpRequest: Unsupported method '›№І„дS…<ўҐЎу)u^мЈљє}ћЪ@ЦТ©»T &Ь
>'
>2008/10/06 16:39:17| clientReadRequest: FD 35 (192.168.2.x:8000) Invalid Request
>2008/10/06 16:49:32| parseHttpRequest: Unsupported method '^·е&\и—bЌгЈs“уА42рЦІ"Н¬е
>'
>2008/10/06 16:49:32| clientReadRequest: FD 20 (192.168.2.x:8053) Invalid Request
>______________
>
>В access.log много записей TCP_MISS 200. Пол дня все работало нормально. Потом
>некоторые сайты перестали загнружаться
>>>А ещё можно добавить -
>>>cache_mem 60 MB
>>># cache_mem 8 MB
>>Я поправил эти значения. По-моему логичнее вышло:
>cache_mem увеличили? при 40 гигах, 8 МВ маловато
>это под BSD? попробуйте на разделе с cache_dir отключить soft updateЕсли cache_mem-таки не написал, то вероятность FreeBSD резко возрастает. %-/
---
>> # Система не свопится. Памяти свободной много (177 мб).cache_mem 150 MB
>>>>А ещё можно добавить -
>>>>cache_mem 60 MB
>>>># cache_mem 8 MB
>>>Я поправил эти значения. По-моему логичнее вышло:
>>cache_mem увеличили? при 40 гигах, 8 МВ маловато
>>это под BSD? попробуйте на разделе с cache_dir отключить soft update
>
>Если cache_mem-таки не написал, то вероятность FreeBSD резко возрастает. %-/судя по началу топика там не BSD, ну что ж - ошибся. cache_mem-таки тут не причем, а вот пути к файлам интересные, ставилось похоже из исходников
>
>---
>>> # Система не свопится. Памяти свободной много (177 мб).
>
>cache_mem 150 MB
>судя по началу топика там не BSD, ну что ж - ошибся.
>cache_mem-таки тут не причем,не-не-не, я там не про сквид, а про :-> пользователя - http://www.opennet.me/openforum/vsluhforumID9/7334.html#11
>>судя по началу топика там не BSD, ну что ж - ошибся.
>>cache_mem-таки тут не причем,
>
>не-не-не, я там не про сквид, а про :-> пользователя - http://www.opennet.me/openforum/vsluhforumID9/7334.html#11Я поправил значение cache_mem - теперь не прокси падает.
Еще такой вопрос - нужно ли перенаправлять udp трафик на squid?
iptables -t nat -A PREROUTING -s 192.168.x.0/24 -d ! 192.168.x.x -p tcp -m multiport --dport 80,81,82,83,88,8000,8001,8002,8080,8081 -j REDIRECT --to-port 3128
#iptables -t nat -A PREROUTING -s 192.168.x.0/24 -d ! 192.168.x.x -p udp -m multiport --dport 80,81,82,83,88,8000,8001,8002,8080,8081 -j REDIRECT --to-port 3128Большое Спасибо за ответы!
>Я поправил значение cache_mem - теперь не прокси падает.не прокси, а %) что?
Кстати, перезапускал свой сквид, получилось ~150Мб памяти без сквида (если я ничего не пропустил :-D ) с "cache_mem 60 MB" в конфигурации. Если у тебя 170Мб было свободно при запущенном сквиде (с cache_mem "по дефолту" - 8Мб), то =150 в памяти поместится, видимо. Если при незапущенном сквиде, то скорее (как у меня) cache_mem надо давать 50-70Мб. То есть задача ~такая: весь сквид поместился в памяти и не (~не сильно/не заметно) "вываливается" в своп (в предположении, что другие сервисы "получили, что хотели" и сквид - одна из основных задач машины).
>
>Еще такой вопрос - нужно ли перенаправлять udp трафик на squid?Не-а. Site("google.ru").SearchFor(""squid udp site:opennet.ru""))
Сквид - _http_ прокси. http - сам по себе "tcp протокол". Никакого udp... Для клиентов.
http://www.opennet.me/openforum/vsluhforumID12/5399.html
http://www.opennet.me/openforum/vsluhforumID12/2284.html
http://www.opennet.me/openforum/vsluhforumID12/5710.html#2 Ж-))>Большое Спасибо за ответы!
:-D Пожалуйста.
Полная фигня... Опять начинает тормозить. Сайты yandex и google не работают. На опеннет пока заходит.. Не свопится. Свободно памяти осталось 50 мег. В логи не ругается. Помогите плиз (((acl all src 0.0.0.0/0.0.0.0
acl root_host src 192.168.2.128
acl localhost src 127.0.0.1/255.255.255.255
acl my src 192.168.2.0/24
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 9443 9080 563 15100 11001 11002
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 9443 9080 563 11001 11002 # https
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 CONNECT method CONNECT#Add or remove sites by REGEX in this file //Eugen
acl bad_sites url_regex -i "/usr/local/squid/etc/bw.regex"#http_access allow _sams_4739576e6d6ff
#http_access allow _sams_478369a714687
#http_access allow _sams_478b6e3215192
#http_access deny !Safe_ports
#http_access deny CONNECT !SSL_ports#allow all to root/deny bad dst/allow my src/deny all
http_access allow root_host
http_access deny bad_sites
http_access allow my
http_access deny all
icp_access allow all
my subnet
http_port 3128 transparenthierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
cache allow all
cache_mem 120 MB
maximum_object_size_in_memory 2048 KB
minimum_object_size 1 KB
ftp_user squid@company.ru
request_header_max_size 40 KB
ipcache_size 8192
quick_abort_min 0 KB
quick_abort_max 0 KB
negative_ttl 1 minutes
read_timeout 5 minutes
request_timeout 60 seconds
shutdown_lifetime 3 seconds
request_header_max_size 40 KB
refresh_pattern . 1 20% 4320
maximum_object_size 8092 KB
access_log /usr/local/squid/var/logs/access.log squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
cache_effective_user squid
dns_nameservers 192.168.1.1reload_into_ims on
#refresh_pattern \.bz2$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.exe$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.gif$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.gz$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.ico$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.jpg$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.mid$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.mp3$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.pdf$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.swf$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.tar$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.tgz$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.zip$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache#refresh_pattern http://ad\. &n... 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://ads\. &... 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://adv\. &... 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://click\.  ... 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://count\.  ... 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://counter\. &nb... 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://engine\. &nbs... 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://img\.readme\.ru &nbs... 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern http://userpic\.livejournal\.com 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.ru/bf-analyze 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern \.ru/bf-si 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern /advs/ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern /banners/ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
#refresh_pattern /cgi-bin/iframe/ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache#refresh_pattern ^ftp: &n... 1440 20% 10080
#refresh_pattern ^gopher: 1440 0% 1440
#refresh_pattern . 0 80% 14400
#coredump_dir /usr/local/squid//var/cache
coredump_dir /usr/local/squid/var/cacheforwarded_for off
header_access Via deny allvisible_hostname squid
>[оверквотинг удален]
>Сквид - _http_ прокси. http - сам по себе "tcp протокол". Никакого
>udp... Для клиентов.
>
>http://www.opennet.me/openforum/vsluhforumID12/5399.html
>http://www.opennet.me/openforum/vsluhforumID12/2284.html
>http://www.opennet.me/openforum/vsluhforumID12/5710.html#2 Ж-))
>
>>Большое Спасибо за ответы!
>
>:-D Пожалуйста.
Интересно то, что если сквид перезапустить, то он снова работает нормально../rc.squid :
#!/bin/sh
# Start/stop/restart/reload the Squid Internet Object Cache (squid)
# To make Squid start automatically at boot, make this
# file executable: chmod 755 /etc/rc.d/rc.Squid
#
# Written for Slackware Linux by Erik Jan Tromp
# Modified by David Somero <xgizzmo@slackbuilds.org>SQUIDCFG=/usr/local/squid/etc/squid.conf
SQUIDCMD=/usr/local/squid/sbin/squidif [ ! -r $SQUIDCFG ]; then
echo "Please set the correct path to $SQUIDCFG"
exit 1
fiif [ ! -x $SQUIDCMD ]; then
echo "$SQUIDCMD not found"
exit 1
fisquid_start() {
# Create cache directory hierarchy if needed
ALL_DIRS=$(awk '/^cache_dir/ {print $3}' $SQUIDCFG)
[ -z "$ALL_DIRS" ] && ALL_DIRS=/var/cache/squidfor CACHE_DIR in $ALL_DIRS ; do
if [ ! -d $CACHE_DIR/00 ] ; then
echo "Creating swap directories: $SQUIDCMD -z"
$SQUIDCMD -z 2> /dev/null
break
fi
doneecho "Starting Squid: $SQUIDCMD -DF"
$SQUIDCMD -DF
}squid_stop() {
COUNTDOWN=$(awk '/^shutdown_lifetime/ {print $2}' $SQUIDCFG)
[ -z "$COUNTDOWN" ] && COUNTDOWN=30echo -n "Shutting down Squid in $COUNTDOWN seconds: "
$SQUIDCMD -k shutdown 2> /dev/null
while $SQUIDCMD -k check 2> /dev/null ; do
sleep 1
echo -n .
COUNTDOWN=$[ $COUNTDOWN - 1 ]
if [ $COUNTDOWN -le 0 ] ; then
$SQUIDCMD -k interrupt 2> /dev/null
sleep 1
break
fi
done
echo
}squid_restart() {
squid_stop
sleep 1
squid_start
}squid_reload() {
$SQUIDCMD -k reconfigure 2> /dev/null
}case "$1" in
'start')
squid_start
;;
'stop')
squid_stop
;;
'restart')
squid_restart
;;
'reload')
squid_reload
;;
*)
echo "usage: $0 start|stop|restart|reload"
esac
>[оверквотинг удален]
>
>
>dns_nameservers 192.168.x.X
>
>
>reload_into_ims on
>
>coredump_dir /usr/local/squid//var/cache
>forwarded_for off
>header_access Via deny allТакая-же фигня происходит... немогу понять в чем проблема... ping везде ходит а инет тормозит. :( Причем инет на проксе никуда не девается, все работает, а вот после нее дохнет. Начинает снова работать только после перезапуска SQUID
>[оверквотинг удален]
>>reload_into_ims on
>>
>>coredump_dir /usr/local/squid//var/cache
>>forwarded_for off
>>header_access Via deny all
>
>Такая-же фигня происходит... немогу понять в чем проблема... ping везде ходит а
>инет тормозит. :( Причем инет на проксе никуда не девается,
>все работает, а вот после нее дохнет. Начинает снова работать только
>после перезапуска SQUIDЯ тут попробовал в скрипт /etc/rc.d/rc.squid добавить строку
squid_start() {
# Create cache directory hierarchy if needed
ALL_DIRS=$(awk '/^cache_dir/ {print $3}' $SQUIDCFG)
[ -z "$ALL_DIRS" ] && ALL_DIRS=/var/cache/squidfor CACHE_DIR in $ALL_DIRS ; do
if [ ! -d $CACHE_DIR/00 ] ; then
echo "Creating swap directories: $SQUIDCMD -z"
ulimit -u unlimited <-----------------------------------------------------
$SQUIDCMD -z 2> /dev/null
break
fi
doneecho "Starting Squid: $SQUIDCMD -DF"
$SQUIDCMD -DF
}Пока сквид не падает. (5 дней уже как).
Вывод - были ограничения со стороны системы.