Disclaimer
This is a quick and dirty document to get the path info out. It is not even up to "internal" standards of completeness. It will need to be revised, a lot.
PXE Background
Yet to be completed. Don't forget to mention DFI.
ITD's PXE setup (Server)
We have two TFTP servers, one (pxe00) in Hillsborough and one (pxe01) in DC2. These servers are clustered together as a virtual single server pxe.unity.ad.ncsu.edu.
The pxe servers are configured to be as "standalone" as possible. They do not depend on AFS or other network services to offer minimum function.

Every hour, they copy the files from /afs/bp/adm/pxe to their local /tftproot directory to keep syncronized. Should AFS disappear, they will continue serving the most up to date binaries they have until AFS comes back.
To force an update from AFS right away, ssh into the pxe server and issue the command
sudo /etc/cron.hourly/pxesync.sh
Directory Structure (Server)
The binaries to publish with TFTP are arranged by Unity Workgroup, so all "our" stuff should be placed under the MICROSYS directory. At the time this was written, we have Wolfprep under MICROSYS\Zen7boot and the Windows Deployment Services is under MICROSYS\wds . I have copied the wds files onto the servers, but they are not in a functional configuration.
Config Files (Server)
To just use tftp, all you need is the IP address of the server (pxe00.unity.ad.ncsu.edu) and the path of the file(s) you wish to download.
For PXE boot, you will need to edit the syslinux config files under pxelinux.cfg. I will create this documentation more carefully, later. :-0
Configuring a Client for PXE
To boot a client from the network using PXE, select the "PXE-All" DCHP template in QIP.
This tells QIP include "boot-server" and "boot-image" information in the DHCP response.
The PXE firmware on the client downloads a small, generic image from the (virtualized) server using the tftp protocol. This generic image (pxelinux) downloads it's configuration (again using tftp) from the server to decide which boot image the client should use, then downloads that image and releases control to it.
In this manner, we can have a single PXE/TFTP server serving multiple boot environments.