Openthinclient OS — Boot Process
Unconfigured client
openthinclient server listens for DHCPDISCOVER and DHCPREQUEST packets
The thin client sends a DHCPDISCOVER packet via broadcast 255.255.255.255 to the local subnet with source IP 0.0.0.0.
The DHCP server responds via broadcast with a DHCPOFFER packet, using its own IP address as the source address and an available IP address for the thin client.
Then, the thin client sends a broadcast DHCPREQUEST packet containing the previously offered IP address.
Finally, the DHCP server sends a DHCPACK (Acknowledge) packet.
TranslationThe pending.thin client is now visible as a PXE client in the openthinclient Manager and can be configured.
Configurated client
The openthinclient server uses the ProxyDHCP, TFTP, and NFS services.
The ProxyDHCP service now listens for DHCP packets.
The client starts up and sends a DHCPDISCOVER.
.
If the server detects a DHCPOFFER for a configured client, it sends an additional DHCPOFFER packet for the thin client, including its own IP address as the server (Option 54) and leaving the client IP address field empty.
The thin client reserves the IP address from the DHCP server using a DHCPREQUEST and receives a DHCPACK as confirmation from the DHCP server.
After the thin client has received the network configuration (IP address, subnet mask, and default gateway), it sends a DHCPREQUEST to the ProxyDHCP service and receives a DHCPACK with the boot file name.
Now, the thin client has all the information necessary for booting.
It then retrieves pxelinux.0 from the TFTP server and starts it.
pxelinux.0 then retrieves the thin client-specific pxelinux configuration via TFTP, which contains the paths to the kernel and the initrd being used, as well as additional kernel parameters.
pxelinux.0 then loads the kernel and the initrd via TFTP and starts the kernel, which then takes control of the thin client.
Finally, the kernel executes the initrd’s startup script and mounts the actual openthinclient® base system via NFS as the root filesystem.
