Исключить настройку для определённых терминалов

Что вы хотели бы видеть в следующих версиях?
Ответить
Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Исключить настройку для определённых терминалов

Сообщение Barvinok » Сб дек 22, 2018 4:25 pm

Доброго дня!

Есть файл all.wtc, где я указываю настройки, общие для всех клиентов сети.
Есть файл list.wtc, где я назначаю каждому терминалу имя, пользователя и предназначенные для него конфиги.
Всё хорошо.

Но в некоторых случаях мне требуется обратное действие - исключить какую-то настройку для определённого терминала. Как это сделать?

В частности есть строка CLID=***, видя которую терминалы на ARM впадают в кататонический ступор. Она нужна для всех! Кроме этих двух терминалов. Как бы мне сделать такой конфиг, что бы там строка exclude "CLID" или что-то в этом роде. Т.е. что бы эта настройка им не отправлялась?

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Сб дек 22, 2018 5:17 pm

Указать этим двоим другой префикс TFTP, чтобы зарулить их в другой каталог с конфигами на TFTP. Чтоб они читали свой отдельный, например "rock/Everyone/all.wtc", не тот что у всех, без CLID=

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Сб дек 22, 2018 10:45 pm

У меня сейчас в настройках DHCP микротика написано так:

Код: Выделить всё

boot-file-name="5.8.42/wtware.http"
Сервером загрузки является WTWare Center.
Где прописывать префикс?

Нашёл файл default.wtc следующего содержания:
#
# Список групп терминалов по подсетям.
#
# Если терминал загружается по сети и не находит индивидуальный конфигурационный
# файл на сервере, то он останавливает работу, сообщает, что терминал не настроен, и требует
# создать конфигурационный файл для этого терминала.
# Это поведение можно изменить. Для группы терминалов в выбранной подсети либо вообще для всех
# терминалов можно создать конфигурационный файл по умолчанию. Создайте группу интересующих вас
# терминалов, а затем в списке терминалов найдите соответствующую строку и создайте
# конфигурацию по умолчанию.
#
# После этого новый терминал из этой группы будет считаться автоматически настроенным:
# не будет показывать предупреждений, а скачает созданную вами конфигурацию.
#
# Формат строки в этом файле:
#
# 03 10.1.1.0/24 Удаленный филиал
#
# Первым идет номер группы в 16-ричном формате - 03. Допустимы номера от 01 до ff.
# Тогда конфигурация группы 03 будет в папке FF.FF.FF.FF.FF.03 в каталоге Terminals.
# Далее идут параметры подсети - IP и маска - 10.1.1.0/24.
# "Удаленный филиал" - название группы, по которому вы найдете эту группу в конфигураторе
# в списке терминалов.
# Эта конфигурация будет скачиваться TFTP-сервером как индивидуальный конфигурационный
# файл по умолчанию для терминалов из подсети 10.1.1.0/24, у которых нет собственного
# конфигурационного файла.
#
# Еще пример:
#
# 0d 192.168.1.0/16 Подсеть бухгалтерии
#
# Группа для подсети 192.168.1.0/16. Конфигурация хранится в каталоге FF.FF.FF.FF.FF.0d.
# В списке терминалов в конфигураторе находится под названием "Подсеть бухгалтерии".
#
# В конце файла можно добавить группу для всех остальных терминалов в сети, не попавших
# в указанные подсети. Эта группа должна быть единственной. Эта группа должна быть последней
# строкой в default.wtc. Все группы, указанные после нее, будут проигнорированы при считывании.
# Формат строки группы для всех терминалов:
#
# 1f all Мой зоопарк
Вот можно сделать группу по мак-адресам (или даже по маске, вроде 32:AE:* ) и назначить им собственный каталог с конфигами?
И не только в конфигураторе, но и в тексте? У меня по большей части нет виндовых компьютеров на местах - либо линукс либо Микротик. Работа по SSH, без прикрас...

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Сб дек 22, 2018 11:42 pm

Barvinok писал(а):
Сб дек 22, 2018 10:45 pm
У меня сейчас в настройках DHCP микротика написано так:

Код: Выделить всё

boot-file-name="5.8.42/wtware.http"
Сервером загрузки является WTWare Center.
Где прописывать префикс?
Здесь и прописывать. Микротик умеет отдавать другой boot-file-name= определенным МАКам?
Barvinok писал(а):
Сб дек 22, 2018 10:45 pm
Вот можно сделать группу по мак-адресам (или даже по маске, вроде 32:AE:* ) и назначить им собственный каталог с конфигами?
Там только по IP разделение есть, не по МАКу. И этот механизм включается когда нет другого личного конфига, т.е. ни конфига по МАКу/хостнейму, ни записи в list.wtc.

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Вс дек 23, 2018 12:21 am

aka писал(а):
Сб дек 22, 2018 11:42 pm
Здесь и прописывать. Микротик умеет отдавать другой boot-file-name= определенным МАКам?
Да, но не так просто, как хотелось бы. Средствами WTWare было бы куда удобнее.

В твоём примере путь прописывается прям к all.wtc:

Код: Выделить всё

rock/Everyone/all.wtc
Я с таким не сталкивался.

В настройках DHCP я указываю путь к wtware.http, который расположен в "c:\Program Files (x86)\WTware\TFTPDROOT\5.8.42"
А all.wtc расположен в каталоге "c:\ProgramData\WTware\Everyone" и к нему я путь не указываю никогда. За конфигами клиент идёт в корень TFTP, где его ждут символические ссылки на Everyone, ListIncludes и т.п.
Как я могу изменить это поведение префиксами?

Допустим, я создам вложенный каталог с конфигами для ARM: c:\ProgramData\WTware\ARM\Everyone
Что мне надо прописать в "boot-file-name" ?
aka писал(а):
Сб дек 22, 2018 11:42 pm
Там только по IP разделение есть, не по МАКу. И этот механизм включается когда нет другого личного конфига, т.е. ни конфига по МАКу/хостнейму, ни записи в list.wtc.
Я понял.

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Вс дек 23, 2018 12:51 am

Barvinok писал(а):
Вс дек 23, 2018 12:21 am
Я с таким не сталкивался.
Я тоже. Но попробовать надо.

Префиксы обрабатываются для того, чтбы втварь могла жить на чужих TFTP со всяческими синстейшнами, и не засорять весь корень, а прятаться в своей отдельной папке. Т.е. в обычной втвари для x86 префиксы должны работь, а на рокчипах вряд ли кто-то когда-то проверял, но код же один, вдруг тоже поедет.
Barvinok писал(а):
Вс дек 23, 2018 12:21 am
Как я могу изменить это поведение префиксами?
Допустим, я создам вложенный каталог с конфигами для ARM: c:\ProgramData\WTware\ARM\Everyone
Что мне надо прописать в "boot-file-name" ?

Код: Выделить всё

boot-file-name="ARM/5.4.24/wtware.pxe"
Сам файл ARM/5.4.24/wtware.pxe не нужно создавать, оно его качать не станет. Оно будет разбирать путь, чтоб выделить из пути префикс и потом дописывать "ARM/" ко всему скачиваемому с TFTP. Чтоб поменьше его пугать, когда оно будет этот путь разбирать - лучше написать самое обычное имя и его рокчиповую версию. Если не поедет, показать лог. Не помню, насколько нервно рокчипы реагировали на префиксы.

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Вс дек 23, 2018 7:37 pm

Опцию получает, префикс вычленяет - но не взлетает...

Т.е. он и без особой опции DHCP почему-то не может получить конфиг. В журнале сервера обращений нет.
Тут же перетыкаю малину - всё работает, скачивается...
Может у ARM какие-то трудности в скачивании конфига из другой подсети?
Вложения
WTware v.5.4.24 (ARM).html
(40.25 КБ) 27 скачиваний
Последний раз редактировалось Barvinok Вс дек 23, 2018 8:03 pm, всего редактировалось 1 раз.

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Вс дек 23, 2018 8:01 pm

Покажи работающий лог с того же терминала. Чтоб он с того же HTTP качал файлы без префикса.

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Вс дек 23, 2018 8:29 pm

Поднял сервер в локальной сети.
Малинка - взлетает с пол пинка. Рокчип при тех же настройках - не взлетает.
Никаких префиксов и прочих особых настроек не делал - рокчип должен ругаться на CLID, но он даже не может скачать all.wtc!
В журнале HTTP WTWare Center чисто!

upd.
По TFTP конфиг всасывает и ругается на CLID!
Рокчипы не умеют работать с загрузкой по HTTP?
Вложения
WTware v.5.4.24(RockChip)-не скачивает конфиги!.html
(38.83 КБ) 25 скачиваний
WTware 5.8.44(Raspberry) - скачивает конфиги.html
(58.78 КБ) 39 скачиваний

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Вс дек 23, 2018 8:49 pm

По TFTP проглотил подмену корня, всё заработало.
Однако, мне нужен HTTP - сервер загрузки расположен в удалённой подсети!
Может он не на тот порт обращается? Как это проверить?
Вложения
WTware v.5.4.24(RockChip)-по TFTP всё работает.html
(44.1 КБ) 45 скачиваний

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Вс дек 23, 2018 11:05 pm

Barvinok писал(а):
Вс дек 23, 2018 8:49 pm
Может он не на тот порт обращается? Как это проверить?
Логи же читать.

Код: Выделить всё

[            gm] [   49.592396] HTTP: download file ARM/Everyone/list.wtc from 192.168.30.100.
[            gm] [   49.640169]          fstream.cpp (  437): -- ERROR -- Conection with 192.168.30.100:80 failed, errno 111.
Здесь порт 80.

В журнале HTTP WTWare Center не должно быть чисто. Запусти конфигуратор под Администратором. На вкладке с логами HTTP появится кнопка перезапуска службы. Перезапустишь - напишет в лог примерно такое:

Код: Выделить всё

WTware HTTP server v.5.8.44 (c) 2003-2018 WTware http://www.wtware.com
Found interface 10.1.1.102/255.255.255.0 mtu 1500 mac 90:2B:34:3C:85:BA adapter Qualcomm Atheros AR8151 PCI-E Gigabit Ethernet Controller (NDIS 6.30).
Bind at 0.0.0.0:789.
По умолчанию втваревый HTTP виснет на порт 789. Потому что 80 бывает занят настоящим HTTP.

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Вс дек 23, 2018 11:14 pm

Лог, в котором малина скачивает:

Код: Выделить всё

[        initrd] [   13.484480] [HTTP] Download config file /wtware/Everyone/list.wtc from 192.168.2.7.
HTTP на 192.168.2.7, порт 80 не печатается, файл "/wtware/Everyone/list.wtc" скачало.

Лок, в котором рокчип не скачивает:

Код: Выделить всё

[            gm] [   22.278228] HTTP: download file Everyone/list.wtc from 192.168.2.7.
[            gm] [   22.976965] HTTP: file not found.
Тот же IP, тот же порт, но имя файла "Everyone/list.wtc". HTTP сервер отвечает "файл не найден". Как раз префикса не хватает. Попробуй для HTTP на 192.168.2.7 в микротике написать:

Код: Выделить всё

boot-file-name="/wtware/5.8.42/wtware.http"
А в самом первом логе ошибка другая была:

Код: Выделить всё

[            gm] [   49.592396] HTTP: download file ARM/Everyone/list.wtc from 192.168.30.100.
[            gm] [   49.640169]          fstream.cpp (  437): -- ERROR -- Conection with 192.168.30.100:80 failed, errno 111.
Здесь рокчип пытается соединиться с HTTP на 192.168.30.100 порт 80, но HTTP ему не отвечает. Т.е. имя файла пока что не имеет значения, до имени файла дело ещё не доходит. Задача соединитсья с HTTP. Или HTTP висит не на 80 порту, или фаирвол рубит, или маршрутизация где-то по пути не прописана. Пинг с сервера на рокчип идёт?

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Пн дек 24, 2018 1:20 am

Я использую HTTP WTWare Center. Как сказать рокчипу, что бы он обращался на порт 789?
Пинги идут, по TFTP всё работает. Понятно, что дело в неверном номере порта.

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Пн дек 24, 2018 1:32 am

Сделал. Не грузится. Журнал HTTP пустой, за исключением

Код: Выделить всё

01-11-20-435| WTware HTTP server v.5.8.44 (c) 2003-2018 WTware http://www.wtware.com
01-11-28-110| Connection closed.
01-11-29-175| WTware HTTP server v.5.8.44 (c) 2003-2018 WTware http://www.wtware.com
01-11-29-180| Found interface 192.168.2.7/255.255.255.0 mtu 1500 mac BC:30:5B:D2:E1:59 adapter Broadcom NetXtreme 57xx Gigabit Controller.
01-11-29-180| No BindIP key found in registry.
01-11-29-180| Bind at 0.0.0.0:789.
Конфиги для рокчипа положил в "c:\Program Files (x86)\WTware\TFTPDROOT\wtware\Everyone"
Вложения
WTware v.5.4.24.html
(38.29 КБ) 44 скачивания

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Пн дек 24, 2018 11:55 am

Barvinok писал(а):
Пн дек 24, 2018 1:20 am
Я использую HTTP WTWare Center. Как сказать рокчипу, что бы он обращался на порт 789?
Переключиться на статические настройки, не от DHCP.
Или пересадить HTTP сервер на порт 80. Остановить службу, поменять в реестре значение ключа с 789 на 80:

Код: Выделить всё

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\WTware\HTTP_port
(ключ должен существовать!), запустить службу.

Barvinok
Сообщения: 444
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение Barvinok » Пн дек 24, 2018 1:24 pm

Вручную пробовал... Адрес сохраняет, а порт отказывается сохранять - так и остаётся 80.
Что до префикса HTTP - при нажатии появляется окошко "Префикс TFTP". Пишу - сохраняет для TFTP, а для HTTP остаётся прежним. Короче, глюканство.

Менять порт на сервере - не вариант (зачастую 80 уже используется, да и не кайф ради нескольких старых рокчипов перенастраиваться все подсети и поддерживать "снятую с поддержки конфигурацию").

А можно полюбопытствовать, из каких соображений рокчипы по умолчанию обращаются на порт 80 если ВТВЦентр слушает 789?

aka
Разработчик
Разработчик
Сообщения: 10086
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Исключить настройку для определённых терминалов

Сообщение aka » Пн дек 24, 2018 1:49 pm

Barvinok писал(а):
Пн дек 24, 2018 1:24 pm
Менять порт на сервере - не вариант (зачастую 80 уже используется
Это же хорошо что используется. Линк wtware положи в корень настоящего сервера, который на 80 используется, и пусть настоящй HTTP раздает втваревый конфиг. Про линки в виндовс здесь: http://wtware.ru/docs5/httpboot.html
Barvinok писал(а):
Пн дек 24, 2018 1:24 pm
А можно полюбопытствовать, из каких соображений рокчипы по умолчанию обращаются на порт 80 если ВТВЦентр слушает 789?
Рокчипы кончились на версии 5.4.24.
Своя служба HTTP в втвари появилась в 5.4.26: https://forum.wtware.ru/viewtopic.php?f=10&t=19682
До появляения своей HTTP работали только через настоящие HTTP, которые почти всегда на 80.

Ответить