[CentOS] Interesting PXE server setup question

Thu Jan 24 15:45:43 UTC 2008
Matt Hyclak <hyclak at math.ohiou.edu>

On Thu, Jan 24, 2008 at 10:36:56AM -0500, Rob Lines enlightened us:
> While this is not a problem with CentOS I am hoping to solve the situation
> using a CentOS machine.  For anyone not interested I am sorry to clutter
> your mail box.  For everyone else any ideas or suggestions are welcome.
> 
> A bit of background:
> 
> We have an application that runs only in DOS 6.22 at the moment that we
> would like to run on all of our desktop computers each time they boot up.
> Our workstations are mostly Windows XP with some Linux.
> 
> Our goals:
> 
> We would like to be able to have the machines boot into DOS and run the
> application and then reboot to the normal hard drive.  We would like to have
> it require no user intervention or as little as possible.  We would also
> like to have it only run the app during the first boot up of the day.
> 
> Thoughts at the moment:
> 
> One idea we have at the moment is to create a PXE server with the DOS boot
> image on it.  (I have done that before using Windows RIS but we are trying
> to avoid a windows Server as RIS is a bit of a pain and it prefers user
> interaction.  It also would not fit well with our solution to have it only
> run once a day.)  We could then run the application and inside the DOS image
> we could have it reboot the machine.  We could then set the client machines
> to boot PXE as their first boot option. The next thought was to somehow
> watch the connections to the tftp server where the boot image will be kept
> and watch for the client IP then have the PXE server create a new firewall
> rule that would block access from that client to tftp.  The thought there is
> that once the client has downloaded the boot image once it will run it and
> then on reboot will not be able to find the boot image and, I think, would
> fail at the pxe boot and move on to the next item in the boot list.  Then
> every midnight the list of blocked IPs would be cleared and we start the
> process over again.
> 
> So any suggestions on the best way to take a bootable DOS disk and turn it
> into an image that a Linux based PXE server can serve, ways to monitor the
> tftp connections and then add them to the firewall after they have finished
> downloading the boot image, and any ideas on any better ideas would be
> appreciated.
> 
> Thanks for taking the time to read this.
> 

The firewall option seems to me to be the wrong way to do it. I would
probably have the default pxelinux.cfg file do a localboot, then every
morning have a script create the appropriate pxelinux config file for each
mac/ip address which instead of doing a localboot does your dos boot disk.
Running a job to scan the log files for clients that have run the dos
program can then remove the specific file, causing subsequent reboots to go
to the default file and local boot. 

Seems better to me than having to wait for PXE to time out...

Matt



-- 
Matt Hyclak
Department of Mathematics 
Department of Social Work
Ohio University
(740) 593-1263