Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Изменение полосы пропускания по времени.

    Scheduled Pinned Locked Moved Russian
    24 Posts 6 Posters 7.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • werterW
      werter
      last edited by

      @Mavric:

      Здравствуйте,
      Мой провайдер днём дает полосу 3 Mbit ночью 6Mbit внутрисетевые ресурсы 100Mbit. Настроил Шейпер,  всё работает (3Mbit). Вопрос: Как переключать шейпер ночью на 6 Mbit (или отключать совсем как вариант) и как обеспечить доступ к внутренним ресурсам минуя шейпер?      pfSense 2.0.1

      Попробую ответить.

      0. Шейпер висит на интерфейсе  , к-ый чаще всего явл-ся каким-то туннелем - pptp, pppoe, l2tp. Соответственно, будет шейпится только то , что бегает в нем. Поэтому никакого урезания трафика ко внутренним ресурасм быть не должно. Но , это для случая, когда доступ ко внутренним ресурсам пров-ра предоставляется напрямую. В противном случае - пункт 2.

      1. Начну с "…и как обеспечить доступ к внутренним ресурсам минуя шейпер?".
      После отработки визарда по шейперу во Floating будут созданы правила. Их следует отредактировать согласно вашим требованиям, т.е. что-то убрать и\или что-то добавить. В каждом из этих правил есть пункт Destination. Так вот указывать там нужно адреса внутренней сети вашего пров-ра и ,конечно же, поставить галочку на not, т.е. получится not destination .После этого сделать Diagnostics: Reset state. Т.о. трафик, идущий ко внутренним ресурсам не будет шейпиться. Если же диапазон внутренних ресурсов пров-ра включает несколько подсетей, то просто создайте alias из этих адресов. Т.е. получится not destination <алиас> там же в каждом правиле во floating rules. Да , и не забывайте делать Diagnostics: Reset state !

      2. Для отключения шейпера в период с 00ч 00мин до 06ч 59мин заходим в Firewall: Schedules , создаем расписание  с 07ч 00мин до 23ч 59мин и выбираем все дни недели . Далее в каждом правиле во floating rules указывая описанные в пункте 1 настройки и выбирая в Advanced features: Schedule имя созданного нами расписания , мы не только получим отсуствие шейпинга к ресурсам во внутренней сети, но и добьемся его отключения в необходимый нам период "правилом от обратного", т.е. указав рабочий диапазон времени для шейпера.

      3. Более сложный вариант, когда шейпер в определенный период времени не отключается, а применяется к более широкой полосе пропускания, мне видится так. Сперва проходим обычным визардом (для 6 мбит\с) и получаем привычные правила во floating rules, к-ые мы редактируем и применяем к ним , если необходимо, п. 1 и , создав предварительно новое расписание в Schedule ,  п. 2.  
      Далее идем  в Firewall: Traffic Shaper и создаем новые очереди (полную иерархию с дочерними очередями) с аналогичными параметрами, только с меньшей скоростью (3 мбит\с) . Затем во floating rules дублируем правила для вновь созданных очередей, т.е. правила те же,  но имена у очередей будут для канала в 3мбит\с и с раписанием для этого канала.
      Еще бы хорошо в cron засунуть скрипт (или команду), к-ый будет делать Reset state два раза в сутки - перед переходом ночью на 6 мбит\с и перед возвращением 3мбит\с  утром для корректной работы шейпера. Тут вам более опытные товарищи подскажут, я надеюсь.

      Пробуйте. Если выйдет - отпишитесь, пож-та.

      1 Reply Last reply Reply Quote 0
      • M
        Mavric
        last edited by

        0.  По поводу провайдера: тунеля нет, всё идёт в общей "трубе". В остальном я примерно так и предполагал.
        2. Про "Diagnostics: Reset state" поподробнее пожалуйста, особенно как это задание сделать в Cron, потому как в BSD я начинающий.
        3. Буду пробовать, по итогам отпишусь.

        pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
        HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

        1 Reply Last reply Reply Quote 0
        • werterW
          werter
          last edited by

          @Mavric:

          2. Про "Diagnostics: Reset state" поподробнее пожалуйста, особенно как это задание сделать в Cron, потому как в BSD я начинающий.

          1. Читаем - http://doc.pfsense.org/index.php/Reset_States
          2. В cron добавляем 2 задания со ссылкой на usr/local/www/diag_resetstate.php на разное время суток. Он уже является исполняемым судя по пермишеннам (0755). Но могут быть ньюансы, проверяйте.

          1 Reply Last reply Reply Quote 0
          • werterW
            werter
            last edited by

            @werter:

            @Mavric:

            2. Про "Diagnostics: Reset state" поподробнее пожалуйста, особенно как это задание сделать в Cron, потому как в BSD я начинающий.

            1. Читаем - http://doc.pfsense.org/index.php/Reset_States
            2. В cron добавляем 2 задания со ссылкой на usr/local/www/diag_resetstate.php на разное время суток. Он уже является исполняемым судя по пермишеннам (0755). Но могут быть ньюансы, проверяйте.

            Был неправ :) Не стоит использовать пункт 2 , т.к. по умолчанию "… by default schedules clear the states of existing connections when expiry time has come" (пункт System: Advanced: Miscellaneous:Schedules
            Schedule States отменяет это). Так что задача упрощается.

            1 Reply Last reply Reply Quote 0
            • M
              Mavric
              last edited by

              Хм..  Что то не получается дать доступ к внутренним ресурсам помимо шейпера. Видно как то хитрее нужно подойти, но как пока непонятно. Я не вижу правил в фаерволе ограничивающих P2P трафик, поэтому ни как привязать их ко времени не могу.
              По предыдущему посту я так понял не нужно ничего делать с "Reset state"? Господа профессионалы ждем ваших предложений.

              pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
              HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

              1 Reply Last reply Reply Quote 0
              • werterW
                werter
                last edited by

                Хм..  Что то не получается дать доступ к внутренним ресурсам помимо шейпера.

                Адреса внутренней сети ? Одна подсеть? Несколько - создаем алиас с ними.

                Я не вижу правил в фаерволе ограничивающих P2P трафик, поэтому ни как привязать их ко времени не могу.

                Сперва ПРАВИЛЬНО задаем параметры в визарде шейпера. И тогда весь неописанный трафик будет попадать в трубу с НАИМЕНЬШИМ приоритетом (в том числе и р2р) и не мешать остальному с более высоким приоритетом.

                По предыдущему посту я так понял не нужно ничего делать с "Reset state"?

                Учим язык ПОТЕНЦИАЛЬНОГО противника - и нужно и полезно. В *nix-ах без хотя бы начального знания языка делать нечего.

                Ув. Mavric
                Вам выше разложили все по полкам. Не понимаете - никто за вас лично разбираться не будет.

                Пример моего шейпера (очередей) и правил Floating rules :

                shaper.JPG
                shaper.JPG_thumb
                floating.JPG
                floating.JPG_thumb

                1 Reply Last reply Reply Quote 0
                • M
                  Mavric
                  last edited by

                  Адреса внутренней сети забиты в алиас "netip"

                  Про шейпер я писал, что всё работает, т.е. правила созданы визардом и подправлены. В очередях есть qP2P в правилах нет.

                  Был неправ  Не стоит использовать пункт 2 , т.к. по умолчанию "… by default schedules clear the states of existing connections when expiry time has come" (пункт System: Advanced: Miscellaneous:Schedules
                  Schedule States отменяет это). Так что задача упрощается.

                  Я не понял что вы мне хотели сказать этой фразой по английски, поэтому уточнил. Объясняя, нужно делать скидку на уровень знаний собеседника. Поэтому и задаётся вопрос на русской части форума, что перевод может быть неправильным и далее можно уйти совсем не туда.  Конечно мне бы хотелось "tutorial" чтоб сделать, заработало, потом начать менять под себя  для понимания как это работает. Если нужно могу приложить свои картинки с правилами и очередями. Помогите разобраться, отправлять RTFM самое простое и быстрое.

                  pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                  HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                  1 Reply Last reply Reply Quote 0
                  • werterW
                    werter
                    last edited by

                    Фраза - не моя, но она достаточно понятна для человека, занимающегося сетями. Вы ведь себя к таким причисляете? И да, путь к фразе я указал.

                    В очередях есть qP2P в правилах нет.

                    Возможно, во floating rules в вашем случае , весь не классифицированный трафик попадает в очередь по-дефолту (Default). При моей организации шейпинга (мне так удобнее) дефолтная очередь имеет больший приоритет , чем очередь р2р. На скринах выше это отлично видно , как видно и то , какие службы (по портам) попадают в эту и другие очереди.
                    Большую наглядность предоставить не могу. Разве только вместо вас сделать, что ,как понимаете, не приемлемо.

                    1 Reply Last reply Reply Quote 0
                    • M
                      Mavric
                      last edited by

                      По фразе: "По умолчанию расписание очищает состояние существующих соединений по истечении времени." Насколько я понял если сработало расписание  то сброс состояний происходит автоматически. Или я не прав?
                        Я не прошу сделать за меня, я прошу пояснить некоторые вопросы, в которых у меня нет полного понимания. Я не студент, которому нужно сделать курсовую. Сети - это моё хобби. Информации по pfSense на русском и с нормальным описанием крайне мало, в той книге которую я нашел этот вопрос освещён поверхностно. Даже на форуме нет "нормального" рецепта по установке Samba, Transmission и т.п. "Нормального", на мой взгляд, это шаг за шагом с пояснением почему так и на что обратить внимание. Может некоторые вопросы для профи и очевидны, но люди приходят на форум за помощью, советом, когда не хватает знаний и нет времени ночи просиживать за компом в экспериментах и чтении мануалов. Правильный "рецепт" должен писаться так, чтоб даже дурак смог его повторить с предсказуемым результатом. Понимание приходит позже.

                      Сорри за офтопик. Всё сказаное ИМХО.

                      pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                      HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                      1 Reply Last reply Reply Quote 0
                      • werterW
                        werter
                        last edited by

                        Во-первых, здесь никто никому и ни чего не должен. Мануалы пишутся по личному желанию и содержание их тоже сугубо на личное усмотрение пишущего. Если вы этого до сих пор не поняли - это ваша проблема.
                        Вы здесь первый, кто почти требует (!) все расписать и сделать за вас да еще и с подробными объяснениями. Такими "требованиями" вы просто отпугнете даже тех кто и готов был помочь.
                        Вам в первых постах мною было достаточно подробно описано как и что делать (даже со скриншотами). Если не понимаете как применить выше описанное к вашей ситуации - RTFM , RTFM и еще раз RTFM (с) .
                        Вам явно не хватает теории.
                        Даю последнюю ссылку. Человек даже на русский перевел, за что ему огромаднейшее спасибо - http://iboxjo.h1.ru/books.html (там где pfSENSE 2 Cookbook).
                        За сим помогать-подсказывать таким "страждущим" желание пропало. Удачи и всех благ.

                        1 Reply Last reply Reply Quote 0
                        • D
                          dvserg
                          last edited by

                          @Mavric:

                          По фразе: "По умолчанию расписание очищает состояние существующих соединений по истечении времени." Насколько я понял если сработало расписание  то сброс состояний происходит автоматически. Или я не прав?

                          Правила, имеющие настроенный параметр shedule при истечении времени их действия удаляются из списка действующих. Соединения, соответствующие таким правилам, сбрасываются.

                          SquidGuardDoc EN  RU Tutorial
                          Localization ru_PFSense

                          1 Reply Last reply Reply Quote 0
                          • M
                            Mavric
                            last edited by

                            @dvserg:

                            @Mavric:

                            По фразе: "По умолчанию расписание очищает состояние существующих соединений по истечении времени." Насколько я понял если сработало расписание  то сброс состояний происходит автоматически. Или я не прав?

                            Правила, имеющие настроенный параметр shedule при истечении времени их действия удаляются из списка действующих. Соединения, соответствующие таким правилам, сбрасываются.

                            БОЛЬШОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО!  Коротко и ёмко без лишнего воспитания ;)

                            pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                            HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                            1 Reply Last reply Reply Quote 0
                            • M
                              Mavric
                              last edited by

                              2 Werter за ссылку конечно спасибо, но такая книжка есть у меня на русском и уже прочитана. Как я и говорил там довольно поверхностно описано про шейпер, тем более нет ни одного примера, как реализовать изменение правил по времени. По остальному: если хотите помочь - спасибо, но договаривайте до конца или хотя бы отвечайте на вопросы. Не хотите - помогать ваше право, вы же не один на форуме. Но как бы там ни было вы мне помогли решить половину проблемы, а конкретнее: шейпер работает, внутри сетевой трафик использует всю полосу не мешая остальным.  :)  Позже, когда я решу остальные проблемы я выложу "Рецепт" таким, каким на мой взгляд он и должен быть.

                              pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                              HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                              1 Reply Last reply Reply Quote 0
                              • M
                                Mavric
                                last edited by

                                На данный момент актуален один вопрос: возможно ли менять скорость очереди по расписанию? Если да то как?  Вариант 3  из поста Werter не срабатывает, потому как каждому правилу в "Advansed" нужно указать очередь например "qP2P", но скорость очереди будет 6Mbit. Пытался Визардом создать 2 wan интерфейса с разными скоростями. Не даёт, говорит "У вас только один WAN". Может возможно как то вручную создать дубликат очереди "qInternet" с дочерними очередями, что бы потом сделать дубликаты правил и в них указать разные очереди и соответственно включать и выключать  их по расписанию?

                                pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                                HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                                1 Reply Last reply Reply Quote 0
                                • B
                                  Buch
                                  last edited by

                                  У меня работает так, разрыв соединений по планировщику не проверял.

                                  1.JPG
                                  1.JPG_thumb
                                  2.JPG
                                  2.JPG_thumb
                                  31.JPG
                                  31.JPG_thumb

                                  2.2.6-RELEASE  (amd64)  built on Mon Dec 21 14:50:08 CST 2015 FreeBSD 10.1-RELEASE-p25
                                  AMD Turion™ II Neo N40L Dual-Core Processor Current: 187 MHz, Max: 1497 MHz

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    Mavric
                                    last edited by

                                    Создал в ручную копию очереди qInternet c шириной полосы 6Mbit, со всеми дочерними очередями. В фаерволе создал копии правил в них изменил очереди на "ночные" и включил расписание. Всё получилось! В следующий пост напишу рецепт полностью с картинками.

                                    pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                                    HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      Mavric
                                      last edited by

                                      Итак как и обещал с самого начала.
                                        Задача: Обеспечить QoS, максимально используя полосу предоставляемую провайдером.

                                      Исходные данные:    Интерфейсы: WAN,LAN.   Интернет: день - 3Mbit, ночь - 6Mbit ,  ресурсы сети - 100Mbit.

                                      Решение:
                                       1. Создаем очереди при помощи Wizard. Firewall->Traffic Shaper->Wizards->Single Wan multi Lan. На первой странице количество LAN ->1, далее Sheduler выбираем HFSC (более прогрессивный IMHO) для LAN и WAN. Прописываем скорости на Upload и Download исходя из 95-97% от той скорости, которую показывает www.speedtest.com (для меня 2900Kbit), не нужно выставлять 100% скорости заявленной провайдером, иначе будут проблемы при работе QoS. Далее VoIP  Если мы пользуемся Skype, SIP и т. п. ставим галку Enabled, указываем скорость которую мы хотим гарантировать для VoIP трафика. Далее идёт страница на которой можно назначить приоритет определённым IP (или списку, внесённому в Alias), для меня не актуально. Далее страница P2P ставим галку Enabled, чтоб не засорять правилами firewall выбираем только нужные протоколы (для меня актуально Bittorent, DC++) и выставляем ширину канала Bandwidth  в 2%. Далее страница с правилами для игр. Для меня то же не актуально. На следующей странице можно выбрать приложения которым мы хотим немного повысить или понизить приоритет. Я для упрощения правил ничего тут не трогал, оставив по умолчанию(без галки на Enabled). Конец Wizard. Правила применяются.
                                       2. Заходим Firewall->Traffic Shaper->ByInterface Очередь qInternet переименовываем для наглядности в qInternet3 Заходим в дочерние очереди, переписываем значения в каждой, на этом этапе можно подправить настройки очередей, например выставить для qP2P параметр Upper m2 в 95-98% (при свободном канале P2P сможет занимать 95-98% пропускной способности). Выбираем LAN -> Add new queue (добавить новую очередь). Добавляем новую очередь "qInternet6" в ней всё выставляем аналогично "qInternet3" кроме Bandwidth(ширина канала) её выставляем исходя из ночного тарифа (5900 Kbit). Дочерние очереди делаем аналогично, причём если ширина полосы стоит в "%" то всё 1:1 с очередями для дневного тарифа. Если стоят абсолютные цифры скорости их нужно подкорректировать. Должно получиться что то похожее на это:

                                      01.jpg
                                      01.jpg_thumb

                                      pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                                      HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        Mavric
                                        last edited by

                                        3. Заходим Firewall-> Schedules создаём расписание (время действия правил) выбираем все дни недели, 0-00 до 8-59 и 9-00 до 23-59 называем из 6Mbit и 3Mbit соответственно.

                                        4. Заходим Firewall-> Aliases. Создаем алиас например "netip" в него вносим адреса, диапазоны внутренней сети.

                                        5. Заходим Firewall-> Rules-> Floating видим правила, созданные Wizard. Заходим в каждое и изменяем следующие значения:
                                         Destination ставим галку на not,  Type -> Single host or alias в боксе Address пишем наш алиас netip, это позволит не ограничивать внутрисетевой трафик. Далее в Advanced features выбираем Schedule нажав кнопку Advanced выбираем расписание, в моём случае это  3Mbit. Сохраняем правило. Так проделываем со всеми правилами.

                                        6. Далее копируем правила нажав + рядом с правилом и изменяем в нём расписание на 6Mbit и в Ackqueue/Queue выбираем очередь соответствующую 6Mbit,  например qP2P6. Сохраняем правило. Так проделываем со всеми правилами.

                                        При данных настройках с 09-00 до 00-00 используется очередь 3Mbit, с 00-00 до 09-00 используется очередь 6Mbit, внутрисетевой трафик не ограничивается скоростью интернет, но использует QoS и не мешает всему остальному. Правила, имеющие настроенный параметр shedule при истечении времени их действия удаляются из списка действующих. Соединения, соответствующие таким правилам, сбрасываются.
                                         При желании можно добавить очереди и развести по приоритетам другой трафик в зависимости от  нужд.

                                        P.S. Спасибо dvserg  и werter за помощь в решении данной проблемы.  ;)

                                        04.jpg
                                        04.jpg_thumb
                                        02.jpg
                                        02.jpg_thumb
                                        03.jpg
                                        03.jpg_thumb

                                        pfSense 2.0.1    Intel D201GLY2 Celeron 220 @1.2GHz  RAM - 1Gb DDR2, WAN - On board SiS964, LAN - D-Link DGE-528T,
                                        HDD 200Gb + 250Gb;  Samba 3.3.13, transmission-daemon 2.51

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          dvserg
                                          last edited by

                                          :o А мне-то по-што спасибо?

                                          SquidGuardDoc EN  RU Tutorial
                                          Localization ru_PFSense

                                          1 Reply Last reply Reply Quote 0
                                          • N
                                            nomeron
                                            last edited by

                                            Соединения, соответствующие таким правилам, сбрасываются. 
                                            

                                            Многих пользователей такое не устроит. Очень неприятно, когда закачки ночные рвутся.
                                            Ранее в теме werter про галочку указывал

                                            "… by default schedules clear the states of existing connections when expiry time has come" (пункт System: Advanced: Miscellaneous:Schedules
                                            Schedule States отменяет это)

                                            Не пробовали с ней ?
                                            Как будет ограничена скорость в таком случае ?
                                            Ведь будет получаться, что некоторое время будут существовать 2 очереди 3Mbit+6Mbit. Конечно, ограничение родительской очереди, не даст скорость больше 6, но интересно в реальных условиях насколько быстро днем все соединения перескочат в 3Mbit.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.