[РЕШЕНО]ВАЖНО ВСЕМ!!! MTU WAN, LAN. Не работает правельн&
-
Тесты лучше проводить на виртуалке :)
dvserg написал про мост, может дело в этом.
P.S. Если какие то параметры в rc приводят к конфликту, то pfsense восстанавливает рабочий конфиг из архива.
-
Тесты лучше проводить на виртуалке :)
dvserg написал про мост, может дело в этом.
P.S. Если какие то параметры в rc приводят к конфликту, то pfsense восстанавливает рабочий конфиг из архива.
Дак как же заставить работать карты с MTU=1460 ПРИ СТАРТЕ СИСТЕМЫ, может скрипт какой добавить в автозагрузку типа
start.sh
…
ifconfig -m re0 metric 0 mtu 1460 -
Syslog что пишет при сохранении Wan ?
Беспроводные интерфейсы есть? или оба ethernet ? -
Syslog что пишет при сохранении Wan ?
Беспроводные интерфейсы есть? или оба ethernet ?Оба ethernet, Syslog при сохранении Wan
php: : An error occurred while trying to obtain the MTU setting for re0. Using 1500. -
-
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 .
-
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 НЕ КУДА НЕ ГОДИТЬСЯ. МОЖЕТ СКРИПТОМ ЗАСТАВИТЬ РАБОТАТЬ?
-
Вот это выполни
echo get_interface_mtu($config['interfaces'][$config['interfaces']['lan']['bridge']]['if']);
–-
Все понял откуда ноги.
Создается бридж с нулевым MTU. А потом для него ставится 1500 с предупреждением. Для всех интерфейсов в бридже MTU должно быть одинаковое. Пoэтому, чтобы не равнять между собой MTU с каждого интерфейса ставится стандартное 1500.
То есть это скорее не баг а фича. Остается посмотреть что с MTU у BSD систем вообще.
Для интереса можешь поменять дефолтное значение для бриджа /etc/inc/interfaces.inc строка 143. -
-
Вот это выполни
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. Если есть способ, то поделитесь пожалуйста.
-
Я вот из темы упустил, если руками команды набивал, pfsense применял новое значение mtu?
-
if(intval($mtu) == 0) { log_error("An error occurred while trying to obtain the MTU setting. Using 1500."); $mtu = "1500]"; }
-
Я вот из темы упустил, если руками команды набивал, pfsense применял новое значение mtu?
да, руками когда набивал значения применялись
-
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";Тем не менее огромное спасибо. Попробую поиграю с параметром, результат отпишу.
-
-
Там порядок выполнения может быть разный.
Могу сказать точно, что sh скрипты из /usr/local/pkg/pf выполняются позже всех - после формирования правил файрвола. Попробуйте оттуда, НО ставить на бридже МТУ нужно одинаковым для всех бридженных интерфейсов. Так везде делают где я встречал. -
Ура, заработало, 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";
-
-
Вот откопал в сорцах, что на лане ставится такой же МТУ как на том интерфейса с которым он делает бридж. Принудительно 1500 ставиться вроде только на Wireless или при нулевом значении (незаполненном) в конфиге (bridge).
Поправка, когда bridge имеет место быть, выбирается минимальный MTU из всех интерфейсов, учавствующих в bridge.
-
Вот откопал в сорцах, что на лане ставится такой же МТУ как на том интерфейса с которым он делает бридж. Принудительно 1500 ставиться вроде только на Wireless или при нулевом значении (незаполненном) в конфиге (bridge).
Поправка, когда bridge имеет место быть, выбирается минимальный MTU из всех интерфейсов, учавствующих в bridge.
Это в теории. Я по коду WebGUI смотрю. Возможно в 2.0 иной подход.