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

    [РЕШЕНО]ВАЖНО ВСЕМ!!! MTU WAN, LAN. Не работает правельн&

    Scheduled Pinned Locked Moved Russian
    45 Posts 4 Posters 23.8k 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.
    • D
      dvserg
      last edited by

      @l2grom:

      @dvserg:

      Вот это выполни
      echo get_interface_mtu($config['interfaces'][$config['interfaces']['lan']['bridge']]['if']);

      echo get_interface_mtu($config['interfaces'][$config['interfaces']['lan']['bridge']]['if']);

      1500

      это все что выдал

      Ответ выше.

      SquidGuardDoc EN  RU Tutorial
      Localization ru_PFSense

      1 Reply Last reply Reply Quote 0
      • L
        l2grom
        last edited by

        @dvserg:

        Вот это выполни
        echo get_interface_mtu($config['interfaces'][$config['interfaces']['lan']['bridge']]['if']);
        –-
        Все понял откуда ноги.
        Создается бридж с нулевым MTU. А потом для него ставится 1500 с предупреждением. Для всех интерфейсов в бридже MTU должно быть одинаковое. Пoэтому, чтобы не равнять между собой MTU с каждого интерфейса ставится стандартное 1500.
        То есть это скорее не баг а фича. Остается посмотреть что с MTU у BSD систем вообще.
        Для интереса можешь поменять дефолтное значение для бриджа /etc/inc/interfaces.inc строка 143.

        Да, действительно, но я тут вижу лишь переменные, которые уже являются константами, как их изминить
             /* bridged? */
        строка   143 >      if ($lancfg['bridge']) {
                       setup_bridge();
               }

        /* media */
               if ($lancfg['media'] || $lancfg['mediaopt']) {
                       $cmd = "/sbin/ifconfig " . escapeshellarg($lancfg['if']);
                       if ($lancfg['media'])
                               $cmd .= " media " . escapeshellarg($lancfg['media']);
                       if ($lancfg['mediaopt'])
                               $cmd .= " mediaopt " . escapeshellarg($lancfg['mediaopt']);
                       mwexec($cmd);
               }

        И где здесь поставить MTU=1462 ?

        Но если возможно, то как не вмешиваясь в этот код заставить работать карточки на МТУ=1462. Если есть способ, то поделитесь пожалуйста.

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

          Я вот из темы упустил, если руками команды набивал, pfsense применял новое значение mtu?

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

            		if(intval($mtu) == 0) {
            			log_error("An error occurred while trying to obtain the MTU setting.  Using 1500.");
            			$mtu = "1500]";
            		}
            
            

            SquidGuardDoc EN  RU Tutorial
            Localization ru_PFSense

            1 Reply Last reply Reply Quote 0
            • L
              l2grom
              last edited by

              @DasTieRR:

              Я вот из темы упустил, если руками команды набивал, pfsense применял новое значение mtu?

              да, руками когда набивал значения применялись

              1 Reply Last reply Reply Quote 0
              • L
                l2grom
                last edited by

                @dvserg:

                		if(intval($mtu) == 0) {
                			log_error("An error occurred while trying to obtain the MTU setting.  Using 1500.");
                			$mtu = "1500]";
                		}
                
                

                yes ) но это не 143 строка.

                1671 >              if (intval($mtu) == 0) {
                                                log_error("An error occurred while trying to obtain the MTU setting for $bridgeif.  Using 1500.");
                                                $mtu = "1500";

                Тем не менее огромное спасибо. Попробую поиграю с параметром, результат отпишу.

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

                  @l2grom:

                  @DasTieRR:

                  Я вот из темы упустил, если руками команды набивал, pfsense применял новое значение mtu?

                  да, руками когда набивал значения приминались

                  Вопрос dvserg, если руками параметры применялись, то почему бы их не внести в rc? (вопрос для саморазвития, может я что-то не знаю)

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

                    Там порядок выполнения может быть разный.
                    Могу сказать точно, что sh скрипты из /usr/local/pkg/pf выполняются позже всех - после формирования правил файрвола. Попробуйте оттуда, НО ставить на бридже МТУ нужно одинаковым для всех бридженных интерфейсов. Так везде делают где я встречал.

                    SquidGuardDoc EN  RU Tutorial
                    Localization ru_PFSense

                    1 Reply Last reply Reply Quote 0
                    • L
                      l2grom
                      last edited by

                      Ура, заработало, MTU под контролем, поборол лаги, жаль конечно что через …заднию дверь, для всех скажу, с этим надо что-то делать, каректировка MTU это самое главное в любой подобной железке. Всем огромное спасибо, тема закрыта,
                      решение >
                      ee /etc/inc/interfaces.inc
                      1671 >

                      
                      if (intval($mtu) == 0) {
                                                      log_error("An error occurred while trying to obtain the MTU setting for $bridgeif.  Using 1500.");
                                                      #$mtu = "1500";
                                                     $mtu = "1462";
                      
                      
                      1 Reply Last reply Reply Quote 0
                      • D
                        DasTieRR
                        last edited by

                        @l2grom:

                        @dvserg:

                        Syslog что пишет при сохранении Wan ?
                        Беспроводные интерфейсы есть? или оба ethernet ?

                        Оба ethernet, Syslog при сохранении Wan
                        php: : An error occurred while trying to obtain the MTU setting for re0. Using 1500.

                        Поставь пометку "решено"

                        1 Reply Last reply Reply Quote 0
                        • E
                          Eugene
                          last edited by

                          @dvserg:

                          Вот откопал в сорцах, что на лане ставится такой же МТУ как на том интерфейса с которым он делает бридж. Принудительно 1500 ставиться вроде только на Wireless или при нулевом значении (незаполненном) в конфиге (bridge).

                          Поправка, когда bridge имеет место быть, выбирается минимальный MTU из всех интерфейсов, учавствующих в bridge.

                          http://ru.doc.pfsense.org

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

                            @Eugene:

                            @dvserg:

                            Вот откопал в сорцах, что на лане ставится такой же МТУ как на том интерфейса с которым он делает бридж. Принудительно 1500 ставиться вроде только на Wireless или при нулевом значении (незаполненном) в конфиге (bridge).

                            Поправка, когда bridge имеет место быть, выбирается минимальный MTU из всех интерфейсов, учавствующих в bridge.

                            Это в теории. Я по коду WebGUI смотрю. Возможно в 2.0 иной подход.

                            SquidGuardDoc EN  RU Tutorial
                            Localization ru_PFSense

                            1 Reply Last reply Reply Quote 0
                            • E
                              Eugene
                              last edited by

                              Настройка MTU через WEB-интерфейс работает для WAN, без паники. Внимательно смотрим на рисунок и читаем - это MSS для TCP, никакокго отношения к MTU на интерфейсе не имеет. Эта настройка для pf, не для интерфейса. Возможно впрочем, не очень удачное название для параметра.
                              Если не секрет, для общего развития поделись, зачем ты правил MTU на LAN.

                              mtu.JPG
                              mtu.JPG_thumb

                              http://ru.doc.pfsense.org

                              1 Reply Last reply Reply Quote 0
                              • E
                                Eugene
                                last edited by

                                @dvserg:

                                @Eugene:

                                @dvserg:

                                Вот откопал в сорцах, что на лане ставится такой же МТУ как на том интерфейса с которым он делает бридж. Принудительно 1500 ставиться вроде только на Wireless или при нулевом значении (незаполненном) в конфиге (bridge).

                                Поправка, когда bridge имеет место быть, выбирается минимальный MTU из всех интерфейсов, учавствующих в bridge.

                                Это в теории. Я по коду WebGUI смотрю. Возможно в 2.0 иной подход.

                                Почему в теории, это из исходников 1.2.3-RC1 (под рукой оказались)

                                http://ru.doc.pfsense.org

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

                                  Кинь мне в приват кусок кода где это.

                                  SquidGuardDoc EN  RU Tutorial
                                  Localization ru_PFSense

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

                                    Ыыы у меня исходник не такой на работе. Нужно обновить версию.

                                    SquidGuardDoc EN  RU Tutorial
                                    Localization ru_PFSense

                                    1 Reply Last reply Reply Quote 0
                                    • E
                                      Eugene
                                      last edited by

                                      Смори функцию function setup_bridge() в interfaces.inc
                                      Эта фишка стара, как мир (я думаю).

                                      http://ru.doc.pfsense.org

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

                                        @Eugene:

                                        Смори функцию function setup_bridge() в interfaces.inc
                                        Эта фишка стара, как мир (я думаю).

                                        Завтра сравню.

                                        SquidGuardDoc EN  RU Tutorial
                                        Localization ru_PFSense

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          l2grom
                                          last edited by

                                          @Eugene:

                                          Настройка MTU через WEB-интерфейс работает для WAN, без паники. Внимательно смотрим на рисунок и читаем - это MSS для TCP, никакокго отношения к MTU на интерфейсе не имеет. Эта настройка для pf, не для интерфейса. Возможно впрочем, не очень удачное название для параметра.
                                          Если не секрет, для общего развития поделись, зачем ты правил MTU на LAN.

                                          MTU на LAN, все очень просто, чтоб обеспечить проход пактов до pfsense без его реконструкции, когда в сети 300 машин, это ощютимо на слабом сервачке, думаю будет ощютимо на любом сервере, также неоходимо было чтоб режим бридж был включеным ибо есть еще потсети, которые должны ходить насквозь со стороны wan в lan. Ну и последнее, из-за чего все началось, страшные лаги, устал биться с ними, захожу в шел и просто обомлел, как же так, оба моих интерфейса пашут на mtu=1500  хотя в wan я указал 1462. Всля локальная сеть работает на mtu=1462 . ;)

                                          1 Reply Last reply Reply Quote 0
                                          • E
                                            Eugene
                                            last edited by

                                            @l2grom:

                                            @Eugene:

                                            Настройка MTU через WEB-интерфейс работает для WAN, без паники. Внимательно смотрим на рисунок и читаем - это MSS для TCP, никакокго отношения к MTU на интерфейсе не имеет. Эта настройка для pf, не для интерфейса. Возможно впрочем, не очень удачное название для параметра.
                                            Если не секрет, для общего развития поделись, зачем ты правил MTU на LAN.

                                            MTU на LAN, все очень просто, чтоб обеспечить проход пактов до pfsense без его реконструкции, когда в сети 300 машин, это ощютимо на слабом сервачке, думаю будет ощютимо на любом сервере, также неоходимо было чтоб режим бридж был включеным ибо есть еще потсети, которые должны ходить насквозь со стороны wan в lan. Ну и последнее, из-за чего все началось, страшные лаги, устал биться с ними, захожу в шел и просто обомлел, как же так, оба моих интерфейса пашут на mtu=1500  хотя в wan я указал 1462. Всля локальная сеть работает на mtu=1462 . ;)

                                            Что-то у тебя неправильно с терминами/понятиями. Зачем лану работать с мту 1462? не Ethernet что ли? И "страшные лаги" исчезли, как только  "починил" mtu?

                                            http://ru.doc.pfsense.org

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