On 24.09.2019 11:26, Eugene Grosbein wrote: Просьба отвечать в рассылку, а то я и сам не обратил внимания и свой ответ не продублировал сюда.
> On 24.09.2019 06:50, Yaroslav Shvets wrote: >> Hello Eugene. >> >> On Mon, 23 Sep 2019, 08:51, you wrote: >> >>> 23.09.2019 8:46, Yaroslav Shvets пишет: >>> >>>> Сервер, к сожалению, рабочий, и экспериментировать часто не получается. >>>> Но обязательно попробую, как будет возможность. >>>> >>>> Пока выяснилось, что сам lagg работает с нетегированными пакетами. >>>> Проблема только - с тегированными. Т.е. не работает ни один >>>> из vlan'ов построенных на lagg, но сам lagg - рабочий. >>> >>> Очень может быть, что дело как раз в сломанном аппаратном offload для >>> vlanhwtag/vlanhwfilter. >>> Более того, такое уже бывало в старых версиях, но с другими драйверами. >>> >>> Крайне желательно это выяснить побыстрей, пока ещё есть немного времени >>> успеть починить к 12.1-RELEASE. >>> Но времени совсем немного. >> >> Сразу скажу: результаты экспериментов у меня странные. >> >> Последовательность 1: >> --------------------- >> Если делать все руками, то все работает. >> Примерно так: >> ifconfig em0 up >> ifconfig em1 up >> ifconfig lagg0 create >> ifconfig lagg0 laggproto lacp laggport em0 laggport em1 up >> ifconfig lagg0.11 create >> ifconfig lagg0.11 inet <ip/prefix> >> --> интерфейс lagg0.11 оказывается рабочим >> и это не зависит от -rxcsum -txcsum -tso4 -vlanmtu -vlanhwtag -vlanhwfilter >> -vlanhwcsum -vlanhwtso >> т.е. все работает в разных сочетаниях >> >> Последовательность 2: >> --------------------- >> Если разрешить часть работы проделать rc.conf'у, примерно так: >> -- rc.conf -- >> ifconfig_em0="up" >> ifconfig_em1="up" >> cloned_interfaces="lagg0 lagg0.11" >> ifconfig_lagg0="laggproto lacp laggport em0 laggport em1 up" >> ---------------- >> А потом вручную доделать: >> ifconfig lagg0.11 inet <ip/prefix> >> --> интерфейс lagg0.11 оказывается нерабочим >> хотя выглядит абсолютно нормальным >> >> Последовательность 3: >> --------------------- >> Аналогично последовательности 2, но убираем из cloned_interfaces >> создание lagg0.11, предполагая сделать его руками: >> -- rc.conf -- >> ifconfig_em0="up" >> ifconfig_em1="up" >> cloned_interfaces="lagg0" >> ifconfig_lagg0="laggproto lacp laggport em0 laggport em1 up" >> ---------------- >> А потом вручную доделать: >> ifconfig lagg0.11 create >> ifconfig lagg0.11 inet <ip/prefix> >> --> интерфейс lagg0.11 оказывается рабочим >> и выглядит абсолютно нормально >> >> Итого: руками все создаем - все работает, >> имеем cloned_interfaces="lagg0 lagg0.11" - не работает, >> имеем cloned_interfaces="lagg0", а потом руками досоздаем lagg0.11 - >> опять все работает. >> >> Создается впечатление, что в cloned_interfaces lagg0.11 как-то неправильно >> создается (или раньше чего-то), или как-то не так, как руками. >> >> Причем интересно, что если взять последовательность 2, при которой получился >> нерабочий интерфейс lagg0.11, удалить интерфейс, снова его создать: >> ifconfig lagg0.11 destroy >> ifconfig lagg0.11 create >> ifconfig lagg0.11 inet <ip/prefix> >> --> то все равно интерфейс получается нерабочий >> >> Последовательность 1 отличается от последовательности 2 >> очередностью создания 11-го vlan'а и "собиранием" lagg'а >> 'ifconfig lagg0.11 create' и >> 'ifconfig lagg0 laggproto lacp laggport em0 laggport em1 up'. >> Но при ручном варианте (последовательность 1) очередность >> собирания lagg0 и создания lagg0.11 не имеет значения. >> Интерфейс lagg0.11 в любом случае оказывается рабочим. >> >> Вобщем, странные вещи происходят. > > Во-первых, чудес не бывает и нерабочий интерфейс наверняка можно отличить по > его состоянию. > Покажи вывод ifconfig -v lagg0.11 в "нерабочем" виде и в "рабочем" для > сравнения. > > Во-вторых: что будет, если во втором варианте удалить интерфейс и снова его > создать, > но вместо новомодного синтаксиса lagg0.11 использовать старый синтаксис > создания? > > ifconfig vlan11 create vlan 11 vlandev lagg0 up > # проверить работу интерфейса, а затем: > ifconfig vlan11 name lagg0.11 > # и снова проверить работу интерфейса Только, конечно, не вручную, а через rc.conf: cloned_interfaces="lagg0 vlan11" ifconfig_vlan11="vlan 11 vlandev lagg0" #ifconfig_vlan11_name="lagg0.11" Сначала без смены имени. _______________________________________________ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd