[K12OSN] Re: dhcpd problems II

Eric Harrison eharrison at mail.mesd.k12.or.us
Fri Nov 17 23:22:50 UTC 2006


ahodson at elp.rr.com wrote:
> Hi gang
> 
> Back at the server, and after checking eth0/IP Addresses (ok) I am getting:
> 
> CLIENT MAC ADDRESS: (UNIQUE)
> CLIENT IP: 192.168.0.2##
> MASK 255,255,255.0  DHCP IP:192.168.0.254
> GATEWAY IP: 192.168.0.254
> PXE-T01: FILE NOT FOUND
> PXE-E3B: FTFT ERROR - FILE NOT FOUND
> PXE-M0F: EXITING PXE ROM
> DISK BOOT FAILURE - INSERT SYSTEM DISK...
> from all the tin clients, but iMacs booting from the same network
> configuration load!!!
> 
> Not sure which of the many conf files to post... an exact directory/name
> would be helpful.
> cheers
> Alan Hodson
> El Paso ISD. TX
> -=o=- 
> 

Hi Alan,

Here is a quick brain-dump on how the TFTP part works  (this is much
more fun that the budget document I'm supposed to be be working on ;-)


Debugging:

1. make sure the ltsp boot package is installed & have not been
modified: (all is well if there is no output)

	rpm -V ltsp_i386-boot


2. Make sure tftp & xinetd are enabled and active:

	/sbin/chkconfig tftp on
	/sbin/chkconfig xinetd on
	/sbin/service xinetd reload


3. Make sure that the PXE section of /etc/dhcpd-k12ltsp.conf is correct.
 It should look like this:


  # Intel PXE
  elsif substring (option vendor-class-identifier, 0, 9) = "PXEClient"
  {
     # NOTE: kernels are specified in /tftpboot/lts/pxe/pxelinux.cfg/
     filename      "/lts/pxe/pxelinux.0";
  }


4. Make sure that the "next-server" line in /etc/dhcpd-k12ltsp.conf has
the correct IP of your server. The default is:


   next-server                   192.168.0.254;


5. Iptables could be a problem, but it unlikely since the Mac clients boot






The theory:


1. Client sends out a BOOTP request with the vendor class identifier set
to "PXEClient"

2. the DHCP server responds, including such information as the client's
IP address, the IP address of the server (next-server), and the name of
the boot file (filename)  [NOTE: the filename is usually relative to
/tftpboot/, a filename of "/lts/pxe/pxelinux.0" is
/tftpboot/lts/pxe/pxelinux.0 on the server ]

3. the client fetches its boot file (filename) from the server
(next-server) via TFTP.

[NOTE: your clients are not making it past #3 ]

4. In the case of PXE, the bootfile then downloads a config file from
./pxelinux.cfg/  (the default file is "default" ;-). The config file
tells PXE where to fetch the kernel, initial ram disk, kernel
parameters, etc. The default "default" file for K12LTSP is:

	prompt 0
	label linux
	 kernel vmlinuz.ltsp
	 append root=/dev/ram0 rw initrd=initramfs.gz

which tells PXE to download vmlinuz.ltsp and initramfs.gz via TFTP from
the same server & directory it found pxelinux.0




-Eric




More information about the K12OSN mailing list