Загрузка по сети. Оптимизируем службы dhcp и tftp.

  1. DHCP
  2. DHCP Reservations
  3. TFTP
  4. Microsoft RIS
Эта документация отчасти устарела. Пожалуйста, прочтите в первую очередь статьи свежей документации: настройка DHCP, настройка терминала.

Утилита tftpd32, рекомендованная для быстрого старта, недостаточно функциональна для промышленного применения. Мы рекомендуем пользоваться службами, входящими в дистрибутив Windows Server. Они несколько сложнее в настройке, зато обладают всей необходимой функциональностью и весьма надежны.

DHCP

Служба, являющаяся сервером dhcp, в мастере компонентов Windows называется "Dynamic Host Configuration Protocol (DHCP)" и находится в группе "Networking Services". При инсталляции никаких вопросов не задает, после инсталляции нуждается в настройке. Инструмент для управления службой dhcp называется DHCP и находится в Administrative Tools. Запускаем консоль управления DHCP и создаем новую область адресов, New Scope:

Создание новой области адресов начинается так:

Название области и описание могут быть любыми. Это информация не для системы, а для системного администратора. Лучше, если название достаточно информативно, чтоб не вспоминать потом, какие же машины настраиваются из этой области.

Следующий экран:

Разумеется, IP-адреса, маска сети и количество адресов в области у вас будут иными. Настойчиво рекомендую делать область несколько больше, чем число терминалов, которое планируется использовать. Дело в том, что отдельные "непорядочные" операционные системы, даже будучи настроенными с фиксированным IP-адресом, все равно производят запрос к dhcp-серверу. А dhcp-сервер в свою очередь не выдаст терминалу IP-адрес, если этот IP-адрес уже был отдан другой машине.
И еще один совет: задавайте такую область адресов, которая не будет включать в себя уже существующие машины с фиксированными адресами (т.е. которые не получают настройки от dhcp).

Следующий экран:

Exclusions (исключения) из диапазона нужны только тогда, когда невозможно выделить для терминалов достаточно большой свободный диапазон. Если в указанном экраном ранее диапазоне все-таки есть машины со статическим IP (обычно это Windows, загружающиеся с жесткого диска, которым IP явно указан в настройках самих машин), то их адреса надо перечислить в этом окне.

Следующий экран:

На этом экране устанавливается срок, на который выдаются адреса. Не изменяйте значения на этой закладке. IP-адреса для терминалов, к которым не подключены принтеры, могут меняться по усмотрению dhcp-сервера, и никаких неприятностей это не повлечет.

Создание области завершено. Теперь надо задать специальные параметры, определяющие загрузку бездисковых терминалов. Правый клик на Scope Options, в меню выбираем Configure Options...

Появится окно Scope Options. На закладке General нужно указать два параметра: 066 и 067

Параметр 066, Boot Server Host Name, определяет IP-адрес компьютера, на котором работает tftp-сервер.

Параметр 067, Bootfile Name, определяет имя файла, который будет загружен на терминал и с выполнения которого начнется загрузка. Запомните, как называется этот параметр! К нему придется вернуться в дальнейшем, когда вы определитесь с методом загрузки. Если терминал все еще загружается с дискеты, как описано в статье "Быстрый старт!" (или используется любой другой Etherboot-загрузчик), то значением этого параметра должно быть wtshell.nbi. Если для загрузки используется метод PXE, то значением этого параметра должно быть wtware.pxe.

Настройка области закончена.

Последний и обязательный шаг - активация области:

После этого ваш dhcp-сервер сможет предоставить информацию, необходимую терминалу для загрузки.

DHCP Reservations

Еще две тонкости, которые могут понадобиться при настройке dhcp-сервера:

  1. Мак-адреса плохо запоминаются. Найти конфигурацию для нужного терминала проще, если у каждого терминала есть свое имя. Удобно также раскладывать файлы конфигураций в разные каталоги, по комнатам или отделам фирмы.
  2. Часто бывает так, что в одной сети должны работать и терминалы, загружающиеся по методу PXE, и терминалы, пользующиеся загрузчиком Etherboot.

И то, и другое достигается одинаково. Нужно использовать Reservations, т.е. записи на dhcp-сервере, описывающие каждый терминал в отдельности. Делаем так: клик правой кнопкой по Reservations, выбираем New Reservation...

Откроется окно New Reservation:

В поле Reservation Name указываем имя записи. Удобно, если имя записи будет совпадать с именем терминала. Это имя должно быть уникальным. IP-адрес выбираем из созданной области. MAC-address терминала можно узнать, загрузив на терминале WTware и выбрав пункт меню "Показать диагностическую информацию о терминале". В окно New Reservations MAC-адрес должен вводиться без разделителей (двоеточий, тире). В поле Description можно написать пометку для себя. Затем жмем Add, в следующем окне Close. Затем переходим в настройку параметров reservation:

  1. Для того, чтобы дать терминалу отдельное имя (и тем самым указать, что конфигурационный файл будет называться этим именем, а не мак-адресом), вы должны указать параметр 012 Host Name:

    Значение этого параметра может содержать слэш, тогда конфигурационные файлы можно размещать в разных директориях. Если указать так, как на скриншоте, то терминал будет искать свою конфигурацию в файле term21.wtc в каталоге fold, расположенном в корне tftp-сервера. Подробнее про именование конфигурационных файлов читайте здесь.

  2. Следующее действие касается сети, в которой должны работать и терминалы, загружающиеся по методу PXE, и терминалы, пользующиеся загрузчиком Etherboot. Единственное, чего необходимо добиться: dhcp-сервер должен выдавать таким терминалам разные значения параметра 067 (Bootfile Name). Для терминалов, загружающихся по методу PXE, параметр 067 должен иметь значение wtware.pxe, а для терминалов, пользующихся загрузчиком Etherboot, значение wtshell.nbi. Первым делом определитесь, каких терминалов у вас больше. Значение для тех, которых больше, надо указать в основном параметре области. Для каждого терминала из второй группы (тех, которых меньше) значение придется определить в Reservations, как было показано выше. Затем надо указать, что параметр 067 для каждого такого терминала будет иметь иное значение, нежели для всей остальной области. Клик правой кнопкой на созданной записи Reservations, выбираем Configure Options...

    Получаем окно Reservation Options:

    В этом окне надо задать нужное значение параметра. Например, если большинство терминалов у вас грузится загрузчиком Etherboot, а отдельные терминалы грузятся по методу PXE, то здесь мы пишем wtware.pxe

TFTP

Если вы пользуетесь .exe-инсталлятором WTware, то TFTP сервер у вас уже установлен. Ничего из текста ниже выполнять не нужно.

Служба, являющаяся сервером tftp, в дистрибутиве Windows Server входит в Remote Installation Services (RIS). RIS весьма громоздкая и сложная в настройке система. Если вы очень хотите пользоваться службой RIS по ее прямому назначению, т.е. для установки Windows на компьютеры по сети — читайте статью WTware и RIS. Если вы просто хотите загружать бездисковые терминалы — делайте так:

  1. Установите через Add/Remove Programs => Windows Components компоненту Remote Installation Services, но откажитесь от ее конфигурирования, т.е. не запускайте Remote Installation Services Setup.

  2. Запустите regedit.exe и создайте ключ реестра HKLM\System\CurrentControlSet\Services\Tftpd\Parameters\Directory, тип REG_SZ, значение c:\wtware.net Эта папка и будет корнем tftp-сервера, в нее надо распаковывать содержимое папки wtware.net из дистрибутива сетевого пакета WTware. Описание этого параметра присутствует и на сайте Microsoft.


  3. Запустите консоль Services из Administrative Tools и установите Startup type для службы Trivial FTP Daemon в значение Automatic. Должно получиться так: