The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Squid не режет скорость., !*! BRO36, 27-Апр-16, 15:23  [смотреть все]
Всем привет!
Имеется Ubuntu Server 14.04.1 x86_64. Локальная сеть имеет маску нестандартной длины 10.0.16.0/22. На нем стоит DansGuardian и Squid. Почему то Squid не режет трафик.
Причем если вместо "delay_access 1 allow allowed_hosts" написать "delay_access 1 allow all" порезка скорости срабатывает. Ума не приложу почему не работет, помогите пожалуйста разобраться.

Вот полный конфиг сквида.

acl SSL_ports port 443
acl Safe_ports port 80            # http
acl Safe_ports port 21            # ftp
acl Safe_ports port 443            # 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

acl allowed_hosts src 10.0.16.0/22

http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny to_localhost

http_access allow localhost manager
http_access deny manager
http_access allow SSL_ports

http_access allow localhost
http_access allow allowed_hosts
http_access deny all

delay_pools 1
delay_class 1 2
delay_access 1 allow allowed_hosts
delay_access 1 deny all
delay_parameters 1 500000/500000 -1/-1

http_port 3128
cache_mem 256 MB
cache_dir ufs /var/spool/squid3 300 16 256
maximum_object_size 4 MB
maximum_object_size_in_memory 512 KB
access_log daemon:/var/log/squid3/access.log squid
logfile_rotate 20
forwarded_for transparent
dns_v4_first on

  • Squid не режет скорость., !*! Дум Дум, 16:56 , 27-Апр-16 (1)
    Доброго дня.

    Т.е. ведёт себя так, как-будто клиент не попадает в delay_access? Заменить "allowed_hosts" на идентификатор попроще?
    http://wiki.squid-cache.org/SquidFaq/SquidAcl#I_set_up_my_ac...

  • Squid не режет скорость., !*! Andrey Mitrofanov, 20:09 , 27-Апр-16 (3)
    > delay_access 1 allow allowed_hosts
    > delay_access 1 deny all

    Заменить для начала эти две на:

    delay_access 1 allow all

    , коли уж там всё одно http_access только для них.

    > delay_parameters 1 500000/500000 -1/-1

    Потом уже тщательно проверять эти 500КБайт/c "на всех" и "не работает".

    У меня вот, например, -k reload просто _отключал_ все delay pool-ы и соотв.оганичения. Работал "как надо" только restart. Во времена 2.6 у них и в FAQ-е было "ну нишмагла, вам надо, вы и делайте". Это тоже _проверить_.

  • Squid не режет скорость., !*! ipmanyak, 08:03 , 28-Апр-16 (4)
    >[оверквотинг удален]
    > delay_parameters 1 500000/500000 -1/-1
    > http_port 3128
    > cache_mem 256 MB
    > cache_dir ufs /var/spool/squid3 300 16 256
    > maximum_object_size 4 MB
    > maximum_object_size_in_memory 512 KB
    > access_log daemon:/var/log/squid3/access.log squid
    > logfile_rotate 20
    > forwarded_for transparent
    > dns_v4_first on

    500000 байт * 8 = 4 000 000 бит
    у вас канал в инет какой?
    как именно вы хотите резать скорость для пользователей?
    500000/500000 -1/-1  # фактически каждому  юзеру вы ничего не ограничили, а ограничили канал на всех.
    Для понимания
    delay_parameters  1 -1/-1 2000/16000
    -1/-1 – весь канал отдать сквиду  - анлимитед, а индивдуально на каждого юзверя ведерки по 16кб, а струйка в него в 2кб !  (сначала быстро усосет 16кб, а потом будет лить со скоростью в 2кб/cек)  точнее - быстро будет усасывать объекты размером до 16кб , объекты больше 16кб будет сосать на скорости 2кб

    весь канал сквиду отдавать нельзя, ведь есть еще другие сервисы, FTP,почта и др, потому -1/-1  не советую юзать.

    допустим канал 64килобайт/сек, сквиду даем 40килобайт, спецюзерам даем ведра по 8КБ, разрешаем лить большие файлы на скорости 4КБ , хилым юзерам даем ведра по 4КБи пипку по в них по 1КБ для больших файлов.
    acl special_users src 192.168.1.2 192.168.1.3
    acl low_users src 192.168.1.4 192.168.1.5
    http_access allow special_users
    http_access allow low_users
    delay_pools 1
    delay_class 1 2
    delay_class 2 2
    delay_access 1 allow special_users
    delay_access 1 deny all
    delay_access 2 allow low_users
    delay_access 2 deny all
    delay_parameters 1 40000/40000 4000/8000
    delay_parameters 2 40000/40000 1000/4000

    • Squid не режет скорость., !*! BRO36, 08:44 , 28-Апр-16 (5)
      > 500000 байт * 8 = 4 000 000 бит
      > у вас канал в инет какой?
      > как именно вы хотите резать скорость для пользователей?
      > 500000/500000 -1/-1  # фактически каждому  юзеру вы ничего не ограничили,
      > а ограничили канал на всех.

      Канал 10 Мбит. То что этот конфиг режет общую скорость, а не для конкретного юзера я знаю. Я делал пулы и 2 и 3 класса, они так же не работают. Здесь я привел пример самого простого пула. Этот вариант конфига должен давать сёрфить по инету на скорости 500 кбайт в секунду, а фактически инет работает на 1,2Мбайта, то есть без ограничений. Как я писал если указать allow all то скорость режется. Я вот думаю может трабл в маске сети нестандартной длины.

      • Squid не режет скорость., !*! Дум Дум, 09:11 , 28-Апр-16 (6)
        Доброго дня.

        > Я вот думаю может трабл в маске сети нестандартной длины.

        ИМХО, ACL с CIDR работает нормально (да и http_access allow срабатывает же). В конце-концов никто не мешает поменять для проверки маску allowed_hosts на для С-сети...

      • Squid не режет скорость., !*! Andrey Mitrofanov, 10:14 , 28-Апр-16 (7)
        > 1,2Мбайта, то есть без ограничений. Как я писал если указать allow
        > all то скорость режется..

        Сокровенное знание про delay pool-ы заключается в том, что deny на все pool-ы даёт ("разрешает") _неограниченную_ скорость.

        Почему клиенты не попадают в acl -- следующий вопрос. Там выше была ссылка на FAQ про debug. Не знаю, как успешно оно будет логировать именно pool-ы, но "мусора" в логах обычно получается много и все клиенты перемешаны.  Я бы сделал отдельный сквид на другом порте с подробным дебагом и ровно 1 контролируемым клиентом. Для отладки конфигураций и "проникновения" в суть происходящего.

        • Squid не режет скорость., !*! BRO36, 11:00 , 28-Апр-16 (8)
          >> 1,2Мбайта, то есть без ограничений. Как я писал если указать allow
          >> all то скорость режется..
          > Сокровенное знание про delay pool-ы заключается в том, что deny на все
          > pool-ы даёт ("разрешает") _неограниченную_ скорость.
          > Почему клиенты не попадают в acl -- следующий вопрос. Там выше была
          > ссылка на FAQ про debug. Не знаю, как успешно оно будет
          > логировать именно pool-ы, но "мусора" в логах обычно получается много и
          > все клиенты перемешаны.  Я бы сделал отдельный сквид на другом
          > порте с подробным дебагом и ровно 1 контролируемым клиентом. Для отладки
          > конфигураций и "проникновения" в суть происходящего.

          Я понял в чем дело!
          Дело в DansGuardian! Правилами iptables web пакеты сначала перенаправляются на dansGuardian, а потом идут в squid. И поэтому squid видит все пакеты от адреса 127.0.0.1, а не от реальных адресов хостов, поэтому и правило allow all срабатывало. Я честно говоря думал dansGuardian сохраняет реальные адреса хостов. Может кто знает как правильно сконфигурить dansGuardian и squid, чтобы сквиду были видны реальные айпи, если написать "http_port 3128 transparent" то прокся отказывается принимать соединения.

          • Squid не режет скорость., !*! Andrey Mitrofanov, 12:50 , 28-Апр-16 (9)
            >если написать "http_port 3128 transparent"

            Пока Вы ещё здесь, повыясняйте, работают и deley-и _вообще_ с прозрачными костылями. Когда-то давно, уж плохо помню, это не сочеталось. Сейчас не в курсе, вдруг прогресс.

            > то прокся отказывается принимать соединения.

            • Squid не режет скорость., !*! BRO36, 19:06 , 28-Апр-16 (10)
              >>если написать "http_port 3128 transparent"
              > Пока Вы ещё здесь, повыясняйте, работают и deley-и _вообще_ с прозрачными костылями.
              > Когда-то давно, уж плохо помню, это не сочеталось. Сейчас не в
              > курсе, вдруг прогресс.
              >> то прокся отказывается принимать соединения.

              Squid и dansguardian довольно частое сочетание. Я не совсем понял это у меня проблема в таком сочетании с порезкой скорости или это так и должно быть?

              • Squid не режет скорость., !*! ipmanyak, 07:39 , 29-Апр-16 (11)
                >>>если написать "http_port 3128 transparent"
                >> Пока Вы ещё здесь, повыясняйте, работают и deley-и _вообще_ с прозрачными костылями.
                >> Когда-то давно, уж плохо помню, это не сочеталось. Сейчас не в
                >> курсе, вдруг прогресс.
                >>> то прокся отказывается принимать соединения.
                > Squid и dansguardian довольно частое сочетание. Я не совсем понял это у
                > меня проблема в таком сочетании с порезкой скорости или это так
                > и должно быть?

                как вариант , поменяй dansguardian на rejik, c ним всё работает.


                • Squid не режет скорость., !*! abllamer, 17:11 , 25-Июл-16 (12)
                  Вот здесь похоже пытаются решить эту проблему
                  http://interface31.ru/tech_it/2016/05/dansguardian-nastraiva...
                • Squid не режет скорость., !*! abllamer, 17:06 , 07-Авг-16 (13)
                  >>>>если написать "http_port 3128 transparent"
                  >>> Пока Вы ещё здесь, повыясняйте, работают и deley-и _вообще_ с прозрачными костылями.
                  >>> Когда-то давно, уж плохо помню, это не сочеталось. Сейчас не в
                  >>> курсе, вдруг прогресс.
                  >>>> то прокся отказывается принимать соединения.
                  >> Squid и dansguardian довольно частое сочетание. Я не совсем понял это у
                  >> меня проблема в таком сочетании с порезкой скорости или это так
                  >> и должно быть?
                  > как вариант , поменяй dansguardian на rejik, c ним всё работает.

                  Зачем же сравнивать волчий ... (rejik) с копчёной колбасой (dansguardian)?




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру