Re: Kickstart http parameters

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2 Apr 2003, John wrote:

> > 
> > But in the end, wouldn't it be much easier to have a dhcpd server
> > allocate static IPs based on the HW address, then have the
> > host-specific ks.cfg file available based on IP rather than HW
> > addresses?  (This is the more traditional approach).
> 
> 
> As I've already pointed out, you cannot rely on MAC addresses unless you
> have the knowledge that the server and client are on the same piece of
> wire.


I was just doing a tcpdump to see why my PXE client isn't PXEing. For
those who don't know, the incantation goes like this:
tcpdump -X -s 8192 ether host <mac address>

Sometimes it's useful to write the details to a file: add '-w trace'
before the 'ether host ..,' read it back '-r trace'


What I saw in the dump this time was the word 'DELL.' This is
signficicant as the client's a Dell computer. It also contains the tag,
a sort of serial number that I believe uniquely identifies that computer
to Dell. (There was a scandal a while ago; someone contacted Dell for
support, and soon after had the cops on his door. He bought secondhand,
and the machine was reported stolen.)

Now this stuff in the packets can be useful. I am _not_ going to go into
the details as to how it all works coz my understanding is incomplete
and vague, but here's a snipped ot dhcpd.conf I pilfered:
    class "pxeclients"
  {
    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    option vendor-class-identifier "PXEClient";
# At least one of the vendor-specific option must be set.  We set
# the MCAST IP address to 0.0.0.0 to tell the bootrom to still use
# TFTP (address 0.0.0.0 is considered as "no address")
#    option PXE.mtftp-ip 192.168.0.1; vendor-option-space PXE;
    option PXE.mtftp-ip 0.0.0.0; vendor-option-space PXE;
    filename "/PXE/pxelinux.0";
  }
# Filched from http://clic.mandrakesoft.com/documentation/pxe/ch04.html
      class "Etherboot"
  {
     match if substring (option vendor-class-identifier, 0, 13) = "Etherboot-5.0";
     option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff;
     option vendor-class-identifier "Etherboot-5.0";
     vendor-option-space PXE;
     option PXE.mtftp-ip 0.0.0.0;
     filename "/tftpboot.ser";
  }
 
Do watch out for linebreaks, won't you? I've fixed some...

What I will assert is that if I use an etherboot bootrom (on floppy),
the filename passsed is /tftpboot.ser. OTOH those machines with working
PXE ROMs get the name /PXE/pxelinux.0.

The file /tftpboot.ser is a complete Linux kernel and initial ram disk.
The ROM boots that and a Linux installer is off and running.

One of the pieces of informaiton you can use to choose the boot image is
the MAC address, and this is the point that makes the whole ramble
relevant.

If you go and read up on PXE and Etherboot and DHCP, you should be able
to make a selection of boot images, each containing its own kickstart or
the intelligence to get the right one.

Also, you're not constrained to the size of a 1.44 Mbyte floppy. You can
make the image as large as seems right to you.






 
 

-- 
Please, reply only to the list.






[Index of Archives]     [Red Hat General]     [CentOS Users]     [Fedora Users]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux