DHCP configuration

DHCP Dynamic Host Configuration Protocol (DHCP, currently implemented as DHCPv6) is a client-server networking protocol. A DHCP server provides configuration parameters specific to the DHCP client host requesting, generally, information required by the client host to participate on an IP network. DHCP also provides a mechanism for allocation of IP addresses to client hosts.

Full Microsoft DHCP configuration manual is available at the WTware site.

Information about WTware DHCP service configuration is available here.


Network boot

Network boot requires to set several DHCP parameters:

  1. 066, TFTP server address. specify address of the computer with WTware installed. In Microsoft DHCP set:



    In WTDHCP service (see WTware configurator) set:



    In Unix DHCP set:
    next-server 192.168.0.1;
    Dual DHCP DNS Server:
    Next_Server=192.168.0.1
  2. 067, Boot file name. Specify full path from TFTP root to boot file including boot file. If you installed WTware using setup and use WTware TFTP then this path is: 4.9.19\ for WTware version 4.9.19. After upgrade to the next WTware version you are to change this path manually. Boot file is wtware.pxe when using PXE boot (i.e. BootROM is integrated into network card or motherboard by by manufacturer) or wtshell.nbi when using Etherboot loader (i.e. using BootROM emulator). In Microsoft DHCP set:



    In WTDHCP service (see WTware configurator) set:



    In Unix DHCP set:
    filename "4.9.19/wtware.pxe";
    Dual DHCP DNS Server:
    Boot_File=4.9.19/wtware.pxe

These two parameters are quite enough to boot terminal by network.



Password to enter Setup

During terminal load you can press DEL:


WTware boot screenshot

to enter SETUP menu:


WTware CDROM boot setup screenshot

Using Setup menu you can install WTware on a hard disk (all disk data will be lost) or reconfigure terminal parmeters. If you want users to have no access to this menu set password. Unfortunately, this password can't be just set in configuration file, for during terminal load terminal haven't jet downloaded its configurtion file. This password should be specified in 018 DHCP (Extensions Path) parameter. We don't know any system/device/progam except WTware, tha uses this parameter value. You can easily specify this parameter: all other computers in the network will ignore it. This parameter value is distributed to all network computers, so password shouldn't be specified directly in dhcp parameter. Instead of password set parameter value to password hash-function, that is calculated by WTware setup password utility in configurator:


WTware password hash

For example if setup menu password is wtwaresetup specify hash in DHCP parameter. In Microsoft set:



In WTDHCP service (see WTware configurator) set:



In Unix DHCP set:

option extensions-path "87f11d65fa307de119842ae70ccec8c5";
Dual DHCP DNS Server:
Extension_Path=87f11d65fa307de119842ae70ccec8c5



Hostname

012, hostname. To specify terminal hostname in Microsoft DHCP set:



In WTDHCP service (see WTware configurator) set:



In Unix DHCP set:

option host-name "term21";



Dynamic configuration file from HTTP server

WTware is able to download configuration file from HTTP server. In this case it adds some terminal information to request. For example you can write PHP script and generate terminal configuration on the fly, connecting to database for settings. It turnes on by DHCP 179 option. In DHCP for Unix at config start specify this option:

option wtware-dynamic-http-config code 179 = text;

Then in common section or in terminal section use it:

option wtware-dynamic-http-config "http://10.1.1.28/wtware/dynamic-config.php";

During boot terminal requests specified address, adding to line:

dynamic-config.php?arch=x86&mac=00.15.5D.00.04.04&ip=192.168.84.101&ver=5.2.9&host=t0000-001

Thus server script through GET parameters will determine architecture, MAC, ip (important if terminal is outside NAT), WTware version and terminal hostname.

Received from HTTP server config is added after ordinary config. It may cause problems when screens and/or connections are specified in both configs. It's better to place screens and connections into one of these configuration files.

You may use it without new DHCP parameter configuration. Instead of 179 DHCP option you may specify the same value in dynamic: parameter in the file Everyone/source.wtc.



DHCP relay

WTware DHCP may work through built-in router DHCP Relay. Before configuration firstly boot terminal. If router DHCP Relay is configured correctly, terminal sends request to WTware DHCP service. DHCP receives request and adds terminal to WTware configurator list of terminals.

After that run configurator. Select terminal from terminals list (1). Select DHCP tab (2). Press "Change IP" button (3) and specify terminal IP address you need. Configurator then reports, that specified IP address doesn't correspond to any interface on this server. As it should be for terminals behind routers, that connect DHCP through DHCP Relay.

Then press "New" button (4) and add 001 parameter, terminal subnet mask (5, 6).

Select from DHCP parameters list 003 parameter, Router (7). Untick autodetermine checkbox for router and specify correct router address for terminal (8). Router must be specified.

Press "Save" (9) and close parameters window.




If you have any comments or remarks to this article, please, let us know!