(rwfs, решено) Создание дополнительно VLAN на WAN и помещение его в br0

Цитата: vik44 от 21/01/2019, 12:54Нужно создать на WAN дополнительно VLAN с некоторым тэгом и поместить его в бридж br0... т.е. объединить с локалкой. Как это лучше реализовать?
Если это уже где-то обсуждалось, то направьте, плз, поиском не нашел...
Пока это сделал командами через консоль... Вопрос как и куда добавить (и сохранить) эти команды, чтоб они исполнялись при включении устройства?
Нужно создать на WAN дополнительно VLAN с некоторым тэгом и поместить его в бридж br0... т.е. объединить с локалкой. Как это лучше реализовать?
Если это уже где-то обсуждалось, то направьте, плз, поиском не нашел...
Пока это сделал командами через консоль... Вопрос как и куда добавить (и сохранить) эти команды, чтоб они исполнялись при включении устройства?

Цитата: sfstudio от 21/01/2019, 15:04############################################################################################################# CURRENT HOOKS FOR ADVANCED USER LOGIC: 1) /etc/udhcp.d - scripts start after udcpc renew lease 2) /etc/vlan.d - scripts start after vlans configure 3) /etc/ip(6)tables.d - scripts start after netfilter configure 4) /etc/ppp-l2tpsrv/ip-up(down).d - scripts start after client connect(disconnect) to VPN server 5) /etc/ppp/ip-up(down).d - scripts start after router connetc(disconnect) to external VPN server 6) /etc/scripts/wan_up.sh - this script start after WAN up and full services reinit 7) /etc/dnsmasq.d - include another lot of configuration dnsmasq optionsТ.е. это хуки в зависимости от того когда нужно исполнять.
Т.е. например создаём директорию /etc/vlan.d в неё кладём свои команды оформленные в виде шелл скрипта (не забываем отдать права), fs save && reboot - вауля. Что бы не делать всё это руками (при обновлении будет сбрасываться если не снять галочку) можно оформить все свои правки rwfs пакетом (описывал как уже тут и у нага на форуме) и просто заливать через UI.
P.S. Схема с протягиванием VLAN с WAN и запихиванием в BR0 может отстрелить ногу, тут сами по себе WAN/LAN это вланы, а накручиванеи сверху это уже недоQinQ с прелестями типа arp jam и т.д. Даже на ME1 чревато, хотя там физически разные MAC/PHY смотрят в свитч.
############################################################################################################# CURRENT HOOKS FOR ADVANCED USER LOGIC: 1) /etc/udhcp.d - scripts start after udcpc renew lease 2) /etc/vlan.d - scripts start after vlans configure 3) /etc/ip(6)tables.d - scripts start after netfilter configure 4) /etc/ppp-l2tpsrv/ip-up(down).d - scripts start after client connect(disconnect) to VPN server 5) /etc/ppp/ip-up(down).d - scripts start after router connetc(disconnect) to external VPN server 6) /etc/scripts/wan_up.sh - this script start after WAN up and full services reinit 7) /etc/dnsmasq.d - include another lot of configuration dnsmasq options
Т.е. это хуки в зависимости от того когда нужно исполнять.
Т.е. например создаём директорию /etc/vlan.d в неё кладём свои команды оформленные в виде шелл скрипта (не забываем отдать права), fs save && reboot - вауля. Что бы не делать всё это руками (при обновлении будет сбрасываться если не снять галочку) можно оформить все свои правки rwfs пакетом (описывал как уже тут и у нага на форуме) и просто заливать через UI.
P.S. Схема с протягиванием VLAN с WAN и запихиванием в BR0 может отстрелить ногу, тут сами по себе WAN/LAN это вланы, а накручиванеи сверху это уже недоQinQ с прелестями типа arp jam и т.д. Даже на ME1 чревато, хотя там физически разные MAC/PHY смотрят в свитч.

Цитата: vik44 от 21/01/2019, 18:23Э... похоже, что задал вопрос не полностью.
Влан на WAN я создал, создав порт под ТВ через ВЭБ (с тегом, например, 16 от провайдера). При этом создался и-фейс eth2.2.16, который перекинул в бридж br0 c помощью brctl... Но вот последовательность действий, чтоб создать eth2.2.16, не понял, проясните, плз...
И в какой файл (из перечисленных выше) по вашему мнению нужно положить эту последовательность команд, чтоб к окончанию загрузки девайса получить озвученный результат?
Э... похоже, что задал вопрос не полностью.
Влан на WAN я создал, создав порт под ТВ через ВЭБ (с тегом, например, 16 от провайдера). При этом создался и-фейс eth2.2.16, который перекинул в бридж br0 c помощью brctl... Но вот последовательность действий, чтоб создать eth2.2.16, не понял, проясните, плз...
И в какой файл (из перечисленных выше) по вашему мнению нужно положить эту последовательность команд, чтоб к окончанию загрузки девайса получить озвученный результат?

Цитата: sfstudio от 21/01/2019, 18:44Вся логика управления вланами описана в /etc/rc.d/S20vlan включая костыли препятствующие arp jam, там можно и посмотреть. Вы же не думаете, что я на память помню всё и вся? =)))
В любом случае лучше так не делать вообще, будут такие поздемные стуки что не обрадуетесь, потому такого режима и нет в UI.
И в какой файл (из перечисленных выше) по вашему мнению нужно положить эту последовательность команд, чтоб к окончанию загрузки девайса получить озвученный результат?
По моему мнению так вообще делать не стоит, а вообще можно как выше сказал использовать хук /etc/vlan.d
Вся логика управления вланами описана в /etc/rc.d/S20vlan включая костыли препятствующие arp jam, там можно и посмотреть. Вы же не думаете, что я на память помню всё и вся? =)))
В любом случае лучше так не делать вообще, будут такие поздемные стуки что не обрадуетесь, потому такого режима и нет в UI.
И в какой файл (из перечисленных выше) по вашему мнению нужно положить эту последовательность команд, чтоб к окончанию загрузки девайса получить озвученный результат?
По моему мнению так вообще делать не стоит, а вообще можно как выше сказал использовать хук /etc/vlan.d

Цитата: vik44 от 22/01/2019, 19:31Ок, спасибо, пожелания учту, но возможно придется попробовать...
Ок, спасибо, пожелания учту, но возможно придется попробовать...

Цитата: sfstudio от 22/01/2019, 19:46Нет ну работать-то оно вероятно как-то будет.=)
Кстати можно проще что бы не делать всё руками. Делаем WLAN VLAN с WAN прям из UI. А в скрипте только перекидываем получившийся VLAN и выбранный WLAN интерфейс назад в br0 из скрипта положенного в /etc/vlan.d. Остальное уже будет настроено системой.
Нет ну работать-то оно вероятно как-то будет.=)
Кстати можно проще что бы не делать всё руками. Делаем WLAN VLAN с WAN прям из UI. А в скрипте только перекидываем получившийся VLAN и выбранный WLAN интерфейс назад в br0 из скрипта положенного в /etc/vlan.d. Остальное уже будет настроено системой.

Цитата: vik44 от 22/01/2019, 20:07Спасибо... Посмотрев S20vlan, пришел к тому же выводу... хотя можно оттуда надергать п/п в один файл ...
Вопрос по кнопке Ресет (чтоб не начинать отдельную тему) - ее возможно отключить программно (или увеличить длительность удержания до сброса настроек на достаточно большую, заданную величину?
Спасибо... Посмотрев S20vlan, пришел к тому же выводу... хотя можно оттуда надергать п/п в один файл ...
Вопрос по кнопке Ресет (чтоб не начинать отдельную тему) - ее возможно отключить программно (или увеличить длительность удержания до сброса настроек на достаточно большую, заданную величину?

Цитата: sfstudio от 22/01/2019, 20:16Прям из того же скрипта прибить процесс butcheck и всё. Не кому будет кнопку опрашивать.
Прям из того же скрипта прибить процесс butcheck и всё. Не кому будет кнопку опрашивать.

Цитата: vik44 от 22/01/2019, 20:35Хм... интересное решение.
А если время увеличить до 2 минут? Ну, как бы монтажникам Ресет нужен не часто, а юзеры при перебоях связи часто любят жать на выступающие части на устройствах со всеми вытекающими ... :))
Хм... интересное решение.
А если время увеличить до 2 минут? Ну, как бы монтажникам Ресет нужен не часто, а юзеры при перебоях связи часто любят жать на выступающие части на устройствах со всеми вытекающими ... :))

Цитата: sfstudio от 22/01/2019, 20:38Я позже сделаю крутилку сейчас всё фксировано. Ну и пока девайс загружается до отстрела процесса вполне можно успеть резет жмякнуть. Или отсреливать не сразу а через слип в общем тут фантазия и ещё раз фантазия.
Я позже сделаю крутилку сейчас всё фксировано. Ну и пока девайс загружается до отстрела процесса вполне можно успеть резет жмякнуть. Или отсреливать не сразу а через слип в общем тут фантазия и ещё раз фантазия.

Цитата: vik44 от 22/01/2019, 21:08Ок, спасибо, понятно, попробую...
Ок, спасибо, понятно, попробую...

Цитата: vik44 от 24/01/2019, 15:27Попробовал... создал через UI eth2.2.17 для wifi, написал:
#
brctl delif brvl17wl0 ra0
brctl delif brvl17wl0 eth2.2.17
brctl addif br0 ra0
brctl addif br0 eth2.2.17
brctl delbr brvl17wl0
#
sleep 30
A=`pidof butcheck`; kill $A;
#и сохранил в /etc/vlan.d
выставил ему права на выполнение и сохранил fs save... перезагрузил... но команды из файла не исполнились. По логам нашел только штатное создание инт-в brvl17wl0 и eth2.2.17, но никаких действий с ними дальше. Процесс butcheck также в работе...
Где что не так мог сделать?
Попробовал... создал через UI eth2.2.17 для wifi, написал:
#
brctl delif brvl17wl0 ra0
brctl delif brvl17wl0 eth2.2.17
brctl addif br0 ra0
brctl addif br0 eth2.2.17
brctl delbr brvl17wl0
#
sleep 30
A=`pidof butcheck`; kill $A;
#
и сохранил в /etc/vlan.d
выставил ему права на выполнение и сохранил fs save... перезагрузил... но команды из файла не исполнились. По логам нашел только штатное создание инт-в brvl17wl0 и eth2.2.17, но никаких действий с ними дальше. Процесс butcheck также в работе...
Где что не так мог сделать?
Загруженные файлы:- Вам нужно войти, чтобы просматривать прикрепленные файлы..

Цитата: sfstudio от 24/01/2019, 15:31Ну как бы если пишем скрипт то путь в интепретатору-то в первой строке указываем? =)
#!/bin/sh
Ну и pidof не нужен есть killall. Тупо killall butchek и усё.
Ну как бы если пишем скрипт то путь в интепретатору-то в первой строке указываем? =)
#!/bin/sh
Ну и pidof не нужен есть killall. Тупо killall butchek и усё.

Цитата: sfstudio от 24/01/2019, 15:35Однако в логе я не вижу записи: "Run scripts from"
А должна быть ибо тупо вызываем
############################################# # CALL USER SCRIPTS AFTER VLAN CONFIG ############################################# if [ -d /etc/vlan.d -a -x /bin/run-parts ]; then $LOG "Run scripts from /etc/vlan.d" run-parts /etc/vlan.d fi/etc/vlan.d это директория должны быть
т.е. mkdir -p /etc/vlan.d а вот в неё уже можно положить скрипты которые будут выполнены логикой конфигурации vlan
Однако в логе я не вижу записи: "Run scripts from"
А должна быть ибо тупо вызываем
############################################# # CALL USER SCRIPTS AFTER VLAN CONFIG ############################################# if [ -d /etc/vlan.d -a -x /bin/run-parts ]; then $LOG "Run scripts from /etc/vlan.d" run-parts /etc/vlan.d fi
/etc/vlan.d это директория должны быть
т.е. mkdir -p /etc/vlan.d а вот в неё уже можно положить скрипты которые будут выполнены логикой конфигурации vlan

Цитата: vik44 от 24/01/2019, 20:50Спасиб, все получилось!
Опробовал также восстанавливать настройки через rwfs с доп. запуском через userrwfs.sh - тоже ок... файл rwfs.bz2 создал сразу на устройстве и забрал его по SCP... а другие варианты есть...? https://<ip>/rwfs.bz2 не прокатывает... или и не должен?
Спасиб, все получилось!
Опробовал также восстанавливать настройки через rwfs с доп. запуском через userrwfs.sh - тоже ок... файл rwfs.bz2 создал сразу на устройстве и забрал его по SCP... а другие варианты есть...? https://<ip>/rwfs.bz2 не прокатывает... или и не должен?

Цитата: sfstudio от 24/01/2019, 20:58Запаковать локально кто мешает? В архиве должны быть только ваши изменения относительно /etc не надо туда весь /etc паковать.
так что tar и bzip2 в руки и вперёд, на устройстве это делать точно не нужно.
Т.е. например что бы положить свой скрипт в /etc/vlan.d достаточно локлаьно создать структуру etc/vlan.d положить в неё скрипт и запаковать.
Всеэти хуки и загрузка rwfs сделана ровно для того что бы не сносились мои правки rwfs а лишь дополнялись пользовательскими, однако возможость полной замены сохраняется.
Запаковать локально кто мешает? В архиве должны быть только ваши изменения относительно /etc не надо туда весь /etc паковать.
так что tar и bzip2 в руки и вперёд, на устройстве это делать точно не нужно.
Т.е. например что бы положить свой скрипт в /etc/vlan.d достаточно локлаьно создать структуру etc/vlan.d положить в неё скрипт и запаковать.
Всеэти хуки и загрузка rwfs сделана ровно для того что бы не сносились мои правки rwfs а лишь дополнялись пользовательскими, однако возможость полной замены сохраняется.

Цитата: sfstudio от 24/01/2019, 20:59Цитата: vik44 от 24/01/2019, 20:50https://<ip>/rwfs.bz2 не прокатывает... или и не должен?
Прокатит если положить в /tmp/web и залогиниться предварительно. Кто ж позволит web серверу по всей fs напрямую шарохаться. =))
Цитата: vik44 от 24/01/2019, 20:50https://<ip>/rwfs.bz2 не прокатывает... или и не должен?
Прокатит если положить в /tmp/web и залогиниться предварительно. Кто ж позволит web серверу по всей fs напрямую шарохаться. =))

Цитата: vik44 от 24/01/2019, 21:08Цитата: sfstudio от 24/01/2019, 20:58Запаковать локально кто мешает? В архиве должны быть только ваши изменения относительно /etc не надо туда весь /etc паковать.
так что tar и bzip2 в руки и вперёд, на устройстве это делать точно не нужно.
Т.е. например что бы положить свой скрипт в /etc/vlan.d достаточно локлаьно создать структуру etc/vlan.d положить в неё скрипт и запаковать.
Всеэти хуки и загрузка rwfs сделана ровно для того что бы не сносились мои правки rwfs а лишь дополнялись пользовательскими, однако возможость полной замены сохраняется.
да в общем-то так и сделал... создал /etc/vlan.d/wan-vlan.sh и /etc/scripts/userrwfs.sh, только загнал их в архив (только их) сразу из /etс, а потом слил... теперь нужно попробовать надежно ли локалка через wan-vlan работать будет...
Цитата: sfstudio от 24/01/2019, 20:58Запаковать локально кто мешает? В архиве должны быть только ваши изменения относительно /etc не надо туда весь /etc паковать.
так что tar и bzip2 в руки и вперёд, на устройстве это делать точно не нужно.
Т.е. например что бы положить свой скрипт в /etc/vlan.d достаточно локлаьно создать структуру etc/vlan.d положить в неё скрипт и запаковать.
Всеэти хуки и загрузка rwfs сделана ровно для того что бы не сносились мои правки rwfs а лишь дополнялись пользовательскими, однако возможость полной замены сохраняется.
да в общем-то так и сделал... создал /etc/vlan.d/wan-vlan.sh и /etc/scripts/userrwfs.sh, только загнал их в архив (только их) сразу из /etс, а потом слил... теперь нужно попробовать надежно ли локалка через wan-vlan работать будет...

Цитата: sfstudio от 24/01/2019, 21:11Локалка через вланы извне будет жрать ресурсы не в себя ибо прощай оффлоад, весь, от слова совсем. Это самое минимальное чем грозит сиё извращение.
Локалка через вланы извне будет жрать ресурсы не в себя ибо прощай оффлоад, весь, от слова совсем. Это самое минимальное чем грозит сиё извращение.

Цитата: vik44 от 24/01/2019, 21:23ок, услышал... но попробовать-то что мешает? там очень небольшая нагрузка и упр. допсвич ставить не хочется...
ок, услышал... но попробовать-то что мешает? там очень небольшая нагрузка и упр. допсвич ставить не хочется...

Цитата: sfstudio от 24/01/2019, 21:30Дык а нафиг локалку юзверям вообще во вланах тянуть? Ещё и бриджевать в LAN, dhcp снупить как будете? И т.д. и т.п. Городушки эти вечные с поиском приключений и на свою и на пользовательскую Ж.
Вот чесслово. Уже 6й год во всех своих точках исключительно IPOE операторов без всяких вланов юзаю, и попутно туда же всё своё окружение стянул и продолжаю эту активную деятельность. Назад пока никто не вернулся, не смотря на более высокий ценник. =)
А локалка (на серых адресах как выделенная сущность) давно моветон и не упилась никому. Всё что требуется нынче от локалки что бы торренты с соседа могли подсасываться.
Дык а нафиг локалку юзверям вообще во вланах тянуть? Ещё и бриджевать в LAN, dhcp снупить как будете? И т.д. и т.п. Городушки эти вечные с поиском приключений и на свою и на пользовательскую Ж.
Вот чесслово. Уже 6й год во всех своих точках исключительно IPOE операторов без всяких вланов юзаю, и попутно туда же всё своё окружение стянул и продолжаю эту активную деятельность. Назад пока никто не вернулся, не смотря на более высокий ценник. =)
А локалка (на серых адресах как выделенная сущность) давно моветон и не упилась никому. Всё что требуется нынче от локалки что бы торренты с соседа могли подсасываться.

Цитата: vik44 от 24/01/2019, 21:55ок, я услышал, учту... но даже если такой вариант использовать не придется, все-равно изучение описанного здесь процесса внедрения каких-либо нестандартных решений в функциональность вашего устройства был для меня очень информативен и интересен ... :))
ок, я услышал, учту... но даже если такой вариант использовать не придется, все-равно изучение описанного здесь процесса внедрения каких-либо нестандартных решений в функциональность вашего устройства был для меня очень информативен и интересен ... :))

Цитата: sfstudio от 24/01/2019, 22:16Не ну то, что поколупаться в кишках и посмотреть как работает эт всегда полезно. А вот костыльных решений всяких на доступе пора начинать избегать. Как бы понятно когда даже недоумный коммутатор стоил как самолёт и сети на мыльницах строили. Сейчас пора переставать создавать себе и юзверям проблемы на ровном месте. Это касается не только вланов, но и туннелей включая PPPOE на доступе.
Ну или использование статики включая ipv6 как у моего нынешнего оператора в ЕКБ. Вот всё отлично, но статика и отсутсвие изоляции с соседями по свитчу доставляет. Благо статика настраивается один раз, а мусор с соседей не привышает обычно пары мегабит.
А так 200+ маков вижу только в путь, видимо изоляции нет не только внутри свитча, но и вообще внутри дома. Благо хоть не района (связности на L2 нет дальше дома вообще).
Не ну то, что поколупаться в кишках и посмотреть как работает эт всегда полезно. А вот костыльных решений всяких на доступе пора начинать избегать. Как бы понятно когда даже недоумный коммутатор стоил как самолёт и сети на мыльницах строили. Сейчас пора переставать создавать себе и юзверям проблемы на ровном месте. Это касается не только вланов, но и туннелей включая PPPOE на доступе.
Ну или использование статики включая ipv6 как у моего нынешнего оператора в ЕКБ. Вот всё отлично, но статика и отсутсвие изоляции с соседями по свитчу доставляет. Благо статика настраивается один раз, а мусор с соседей не привышает обычно пары мегабит.
А так 200+ маков вижу только в путь, видимо изоляции нет не только внутри свитча, но и вообще внутри дома. Благо хоть не района (связности на L2 нет дальше дома вообще).