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.
    • M
      Mavric
      last edited by

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

      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
      • T
        Tamriel
        last edited by

        Интересно !
        Ждём ответа.
        Спасибо.

        AMD Athlon™ XP 1700+
        384MB Ram
        NanoBSD Boot Slice pfsense0 / da0s1
        Platform nanobsd (512mb)
        Version 2.0-RELEASE (i386)
        built on Wed Sep 14 09:08:10 EDT 2011

        1 Reply Last reply Reply Quote 0
        • 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
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.