DHCP (англ. Dynamic Host Configuation Protocol - протокол динамической конфигурации узла) - это сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Для этого компьютер обращается к специальному серверу, называемому сервером DHCP.
Для загрузки по сети сервер DHCP должен сообщить терминалу два дополнительных параметра:
Хорошая новость: WTware DHCP все сделает за вас. Загрузка по сети должна заработать автомагически, если вы установили WTware DHCP. Информацию о настройке службы WTware DHCP вы найдете здесь.
Плохая новость: в сети может быть только один сервер DHCP. Не пытайтесь использовать два сервера DHCP в одной сети. Если у вас уже есть сервер DHCP (иногда он находится в роутере или Wi-Fi точке доступа) и вы не готовы заменить его на WTware DHCP, вам придется настроить ваш сервер DHCP.
Параметр называется Next Server или 066 DHCP Option. IP-адрес сервера, на котором работает служба TFTP. Нужно указать IP-адрес машины, на которую вы установили WTware. Только IP-адрес цифрами, не имя! Для Microsoft DHCP указывается так:
Для ISC DHCP под Linux две строки:
next-server 192.168.0.1;
option tftp-server-name "192.168.0.1";
Mikrotik:
Два варианта. Новые компьютеры работают под UEFI. С UEFI работает 64-битная WTware на более свежем линуксовом ядре с более свежими драйверами. В настройках UEFI BIOS, обычно в разделе Boot, надо отключить Legacy/Compatibility/CSM, чтобы компьютер не имитировал старый Legacy BIOS. Под UEFI надо загружать файл:
6.0.72/bootx64.efi
Вместо 6.0.72 подcтавить номер вашей версии WTware.
Старые компьютеры, выпущенные до распространения UEFI, работают под Legacy BIOS. С Legacy BIOS работает 32-битная WTware на более старом линуксовом ядре, в ней больше драйверов для старого железа и нет драйверов для свежего железа. На старых компьютерах надо загружать файл:
6.0.72/wtware.pxe
Надо выбрать один вариант и указать его в настройках DHCP. Параметр называется Bootfile Name или 067 DHCP Option. Для Microsoft DHCP указывается так:
Для ISC DHCP под Linux две строки:
filename "6.0.72/wtware.pxe";
option bootfile-name "6.0.72/wtware.pxe";
Mikrotik:
Этих двух параметров должно быть достаточно для того, чтобы компьютер смог загрузиться по сети.
Если в одной сети есть терминалы под UEFI и под Legacy BIOS, или если нужно загружать разные версии WTware на разные терминалы, придется делать статические настройки для отдельных МАК-адресов на сервере DHCP.
WTware DHCP автомагически различает UEFI и BIOS и выбирает нужный зарузочный файл.
Microsoft DHCP можно настроить: инструкция про настройку Microsoft DHCP.
ISC DHCP под Linux:
filename "6.0.72/wtware.pxe"; option bootfile-name "6.0.72/wtware.pxe"; option client-system-arch code 93 = unsigned integer 16; class "pxeclients" { match if substring(option vendor-class-identifier, 0, 9) = "PXEClient"; if option client-system-arch = 00:07 or option client-system-arch = 00:09 { filename = "6.0.72/bootx64.efi"; option bootfile-name "6.0.72/bootx64.efi"; } }
Mikrotik: инструкция на форуме.
Не слишком сложно? Еще есть загрузка по HTTP!
В начале загрузки терминал предлагает нажать DEL:
для того, чтобы попасть в меню SETUP:
Используя это меню, можно установить WTware на жесткий диск (при этом все содержимое диска будет уничтожено) или перенастроить параметры терминала. Если вы не хотите позволять пользователям входить в это меню, вы можете установить пароль. К сожалению, этот пароль невозможно просто задать в конфигурацонном файле, потому что в момент входа в это меню терминал еще не скачал конфигурацинный файл. Этот пароль устанавливается параметром 018 DHCP (Extensions Path). Нам не известно ни одной системы/устройства/программы кроме WTware, которая бы обрабатывала значение этого параметра. Вы можете безбоязненно задавать его значение: все остальные компьютеры в вашей сети его проигнорируют. Параметр раздается всем по сети, поэтому нельзя в нем писать пароль явно. Вместо этого указывается хэш-функция от пароля. Хэш вычисляется утилитой Пароль на WTware Setup в конфигураторе:
На картинке приведен пароль wtwaresetup
. В DHCP следует указать хэш от него. Для Microsoft
DHCP указывается так:
Для службы WTDHCP (см. конфигуратор WTware) указывается так:
Для DHCP под Unix этот параметр указывается так:
option extensions-path "87f11d65fa307de119842ae70ccec8c5";
012, hostname. В Microsoft DHCP hostname терминала указывается так:
Для службы WTDHCP (см. конфигуратор WTware) указывается так:
В Unix DHCP указывается:
option host-name "term21";
Можно научить WTware скачивать конфигурационный файл с HTTP сервера. При этом в запрос добавляется некоторая информация про терминал. Можно например написать скрипт на PHP и генерировать конфигурацию терминала на лету, обращаясь к базе данных за настройками. Включается 179-й опцией DHCP. Для DHCP под Unix в начале конфига надо определить опцию:
option wtware-dynamic-http-config code 179 = text;
Затем в общем блоке или в описании отдельного терминала ее использовать:
option wtware-dynamic-http-config "http://10.1.1.28/wtware/dynamic-config.php";
При загрузке терминал обратится по указанному адресу, добавив к строке:
dynamic-config.php?arch=x86&mac=00.15.5D.00.04.04&ip=192.168.84.101&ver=5.2.9&host=t0000-001
Таким образом скрипт на сервере через параметры метода GET узнает архитектуру, МАК, ip (важно если терминал за NAT), версию WTware и имя хоста терминала.
Полученый от HTTP сервера конфиг дописывается после обычного конфига. Это может вызвать спецэффекты, если экраны и/или соединения объявлены и там, и там. Лучше экраны и соедиинения описывать в каком-то одном месте.
Этот механизм можно использовать без настройки нового параметра DHCP. Вместо 179 опции DHCP
можно указать такое же значение в параметр dynamic:
в файле Everyone/source.wtc
.
WTware DHCP может работать через DHCP Relay, встроенные в маршрутизаторы. Перед настройкой надо один раз загрузить терминал. Если DHCP Relay в маршрутизаторе настроен, терминал обратится к службе WTware DHCP. DHCP, получив запрос, добавит терминал в список конфигуратора.
Затем надо запустить конфигуратор. Выбрать терминал в списке (1). Перейти на вкладку DHCP (2). Нажать кнопку "Изменить IP" (3) и указать нужный адрес
терминала. Конфигуратор сообщит, что адрес не соответствует интерфейсам сервера. Так и должно быть
для терминалов, находящихся за маршрутизаторами и обращающимися к DHCP через DHCP Relay.
Затем нажать кнопку "Добавить" (4) и добавить параметр с номером 001, маску подсети терминала (5, 6).
Выбрать из параметров DHCP параметр с номером 003, Маршрутизатор (7). Снять галку автоматического определения маршрутизатора и указать правильный маршрутизатор
для терминала (8). Маршрутизатор обязательно должен быть указан.
Нажать "Сохранить" (9) и закрыть окошко настроек.