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

      Прежде всегда надо-бы версию PFSense выложить.

      SquidGuardDoc EN  RU Tutorial
      Localization ru_PFSense

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

        в rc.conf напиши команду, и pfsense будет стартовать с нужными сетевыми параметрами.

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

          @DasTieRR:

          в rc.conf напиши команду, и pfsense будет стартовать с нужными сетевыми параметрами.

          Спасибо за ответ, так и поступим, кстати эта проблема тянется с ветки 1.2.2 и почему та осталась незамеченной.
          Пожалуйста если не обременит, то ответ на русском языке, с толкованием.
          С уважением к Вам и должным от Вас пониманием.

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

            Не спешим с командами.
            Что в логах пишет, после сохранения параметров Wan ?
            Бридж есть? есть

            SquidGuardDoc EN  RU Tutorial
            Localization ru_PFSense

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

              @l2grom:

              @DasTieRR:

              в rc.conf напиши команду, и pfsense будет стартовать с нужными сетевыми параметрами.

              Спасибо за ответ, так и поступим, кстати эта проблема тянется с ветки 1.2.2 и почему та осталась незамеченной.
              Пожалуйста если не обременит, то ответ на русском языке, с толкованием.
              С уважением к Вам и должным от Вас пониманием.

              Тема про rc.conf (и сохранение различных режимов карточки) здесь http://forum.pfsense.org/index.php/topic,21044.0.html
              Вкратце, то в веб интерфейсе, нужно выбрать диагностика - редактирование файла и указать полный путь к файлу, т е. /etc/rc там будет то, что уже стартует, вконец нужно добавить параметры сетевой карты. и они будут применяться после перезагрузки.

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

                @dvserg:

                Не спешим с командами.
                Что в логах пишет, после сохранения параметров Wan ?
                Бридж есть? есть

                Да, Бридж есть.

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

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

                  SquidGuardDoc EN  RU Tutorial
                  Localization ru_PFSense

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

                    К сожалению это не так, если-бы, то счастье было-бы море, залез в rc.conf через WEB-морду, установил нужное значения MTU делаю рестарт, значения по дефолту висят. Загружаю теперь /etc/config.xml

                    <interfaces><lan><if>re0</if>
                    <ipaddr>192.168.2.9</ipaddr>
                    <subnet>24</subnet>
                    <media><mediaopt><bandwidth>100</bandwidth>
                    <bandwidthtype>Mb</bandwidthtype>
                    <bridge>wan</bridge>

                    <interfaces><lan><if>re0</if>
                    <ipaddr>192.168.2.9</ipaddr>
                    <subnet>24</subnet>
                                           <mtu>1460</mtu> -добавил строку
                    <media><mediaopt><bandwidth>100</bandwidth>
                    <bandwidthtype>Mb</bandwidthtype>
                    <bridge>wan</bridge>

                    правлю, ребучусь, система не стартанула )), востоновил конфиги.  Так как же заставить работать обе карточки на MTU=1460

                    <wan><if>sk0</if>
                    <mtu>1460</mtu>
                    <media><mediaopt><bandwidth>100</bandwidth>

                    Вот что записано, но карта работает с MTU=1500

                    sk0: flags=8943 <up,broadcast,running,promisc,simplex,multicast>metric 0 mtu 1500
                            options=b <rxcsum,txcsum,vlan_mtu>capabilities=b <rxcsum,txcsum,vlan_mtu>Т.Е.  параметр <mtu>1460</mtu> просто не считывается с конфига</rxcsum,txcsum,vlan_mtu></rxcsum,txcsum,vlan_mtu></up,broadcast,running,promisc,simplex,multicast></mediaopt></media></wan></mediaopt></media></lan></interfaces></mediaopt></media></lan></interfaces>

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

                      Тесты лучше проводить на виртуалке :)

                      dvserg написал про мост, может дело в этом.

                      P.S. Если какие то параметры в rc приводят к конфликту, то pfsense восстанавливает рабочий конфиг из архива.

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

                        @DasTieRR:

                        Тесты лучше проводить на виртуалке :)

                        dvserg написал про мост, может дело в этом.

                        P.S. Если какие то параметры в rc приводят к конфликту, то pfsense восстанавливает рабочий конфиг из архива.

                        Дак как же заставить работать карты с MTU=1460 ПРИ СТАРТЕ СИСТЕМЫ, может скрипт какой добавить в автозагрузку типа
                        start.sh
                        …
                        ifconfig -m re0 metric 0 mtu 1460

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

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

                          SquidGuardDoc EN  RU Tutorial
                          Localization ru_PFSense

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

                            @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
                            • D
                              dvserg
                              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.

                              Ну вот и причина..

                              SquidGuardDoc EN  RU Tutorial
                              Localization ru_PFSense

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

                                echo get_interface_mtu($config['interfaces'][$lancfg['bridge']]['if']);
                                1500
                                1500
                                16384
                                1536
                                33204
                                1500

                                Прошу прощения, то что тут написано я и так знаю, СИСТЕМА МЕНЯ ТОЛЬКО ПРИДУПРЕДИЛА, ЧТО ПРОИЗОШЛА ОШИБКА, А ЧТО ЗА ОШИБКА.
                                An error occurred while trying to obtain the MTU,

                                что за ошибка, и как заставить карту работать в обход этого XML .

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

                                  @l2grom:

                                  echo get_interface_mtu($config['interfaces'][$lancfg['bridge']]['if']);
                                  1500
                                  1500
                                  16384
                                  1536
                                  33204
                                  1500

                                  Прошу прощения, то что тут написано я и так знаю, СИСТЕМА МЕНЯ ТОЛЬКО ПРИДУПРЕДИЛА, ЧТО ПРОИЗОШЛА ОШИБКА, А ЧТО ЗА ОШИБКА.
                                  An error occurred while trying to obtain the MTU,

                                  что за ошибка, и как заставить карту работать в обход этого XML .

                                  НУ ЧТО-ЖЕ ДЕЛАТЬ ТА, ВЕСЬ ЭТОТ МОНСТР БЕЗ УПРАВЛЕНИЯ MTU НЕ КУДА НЕ ГОДИТЬСЯ. МОЖЕТ СКРИПТОМ ЗАСТАВИТЬ РАБОТАТЬ?

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

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

                                    SquidGuardDoc EN  RU Tutorial
                                    Localization ru_PFSense

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