Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
squid.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
1.45 Mб
Скачать

4.9 Как мне настроить в Squid перенаправление всех запросов на другой прокси ?

Замечание: Представленная здесь информация верна для версии 2.2.

Прежде всего у вас должен быть указан родительский кеш. Во-вторых вам необходимо указать Squid-у не соединятся напрямую с запрашиваемым сервером. Это можно сделать при помощи таких 3-х строк конфигурации:

cache_peer parentcache.foo.com parent 3128 0 no-query default

acl all src 0.0.0.0/0.0.0.0

never_direct allow all

Заметьте, что при такой конфигурации, если родительский кеш "упал" или не отвечает, то каждый запрос будет возвращать сообщение о ошибке.

Если вам хочется соединятся напрямую, когда все ваши родительские кеши недоступны, вы должны использовать другой подход:

cache_peer parentcache.foo.com parent 3128 0 no-query

prefer_direct off

В таком случае Squid при отсутствии позитивных ICP, HTCP, других ответов соединится напрямую с запрашиваемым сервером, взамен того, чтобы использовать родительский кеш. Директиваprefer_direct off указывает Squid-у сначала попробовать использовать родительский кеш.

4.10 У меня есть процессы dnsserver, которые не используются, нужно ли мне уменьшить их кол-во в squid.Conf?

Процессы dnsserver используются squid потому-что вызов библиотечной функции gethostbyname(3), которая используется для преобразования имен web-сайтов и их интернет-адреса, блокируется до возращения значения (т.е. процесс вызвавший ее вынужден жать ответа). Т.к. есть всего один процесс squid, то каждый, использующий его вынужден бы был ожидать каждый раз вызова функции. Вот почему dnsserver - это отдельный процесс, этот процесс может быть блокирован не вызывая блокировки в squid.

Очень важно иметь достаточное кол-во процессов dnsserver, чтобы справиться с обработкой возможных запросов, в противном случае squid будет иногда останавливаться. Правило таково - вы должны убедится, что у вас указано не менее макс. необходимого вашей системе кол-ва процессов dnsserver, плюс еще два, чтобы обезопасить себя. Другими словами, если вы выдели не более 3-х используемых процесса dnsserver, то укажите как минимум пять. Помните, что dnsserver достаточно мал и будет закинут в своп, если не используется.

4.11 Среднее время обработки запроса моим dnsserver достаточно велико, как мне его уменьшить ?

Прежде всего убедитесь, достаточно ли у вас запущенных процессов dnsserver, используя данные dns кеш-менеджера. В идеале вы должны увидеть большое кол-во запросов на первом dnsserver, второй должен быть загружен меньше, чем первый и т.д. Последний dnsserver должен обрабатывать всего несколько запросов. Если тенденции к уменьшению не наблюдается, то вам необходимо увеличить число dns_children в файле конфигурации. Если на последнем dnsserver запросов нет, то вы имеете достаточное их кол-во.

Другой фактор, влияющий на время обработки dnsserver - близость расположения вашего DNS-резолвера. Обычно мы не рекомендуем запускать Squid и named на одной и той же машине. Взамен этого попытайтесь использовать DNS-резолвер (named) с другого хоста, но из вашей же ЛВС. Если ваш DNS-трафик должен пройти через один или более маршрутизаторов, то это внесет вынужденные задержки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]