BOOTP from dynamic client and no dynamic leases
Bill Moseley
moseley at hank.org
Thu Nov 8 14:41:28 UTC 2007
I'm still working on trying to get iMacs to boot off the network.
I have two problems, and I assume they are related.
Newer Apples send a vender-class-identifier that I can match on, and
that allows them to boot (well, almost, but that's another story).
my dhcpd.conf file has two class blocks:
class "AppleNBI-ppc" {
match if substring (option vendor-class-identifier, 0, 13) = "AAPLBSDPC/ppc";
...
}
class "PC-i386" {
match if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient";
filename "/ltsp/i386/pxelinux.0";
}
But when I try and boot with an older G3 iMac DHCPD never responds and
I see "BOOTP from dynamic client and no dynamic leases" in the logs.
I tried removing the class { } block from dhcpd.conf for the Apple to
make the apple settings global, but that didn't work.
Do I understand class {} correctly that if the "match" matches then
all the settings within that class will apply?
Now, the docs say BOOTP clients need "hardware". Will I need to use instead?
group {
# options for the entire group
host { hardware ethernet 0:c0:c3:49:2b:57; }
}
I'm a bit confused by that because I'm able to boot other Macs with
just the config below (i.e. w/o specifying the hardware address).
Here's my dhcpd.conf:
ddns-updates off; # Don't attempt to do any DNS updates (default is on)
ignore client-updates; # Default is to allow
authoritative;
# Deal with broken mac clients. Not sure what these first options do.
option option-128 code 128 = string;
option option-129 code 129 = text;
option dhcp-parameter-request-list 1,3,6,15,17,43,44,46,60;
# Define a class for Apple Powerpc
# http://www.afp548.com/article.php?story=20061220102102611
class "AppleNBI-ppc" {
match if substring (option vendor-class-identifier, 0, 13) = "AAPLBSDPC/ppc";
option dhcp-parameter-request-list 1,3,6,12,15,17,43,53,54,60;
# The Apple Boot Loader binary image. This file will in turn TFTP the
# kernel image and extension cache.
filename "/ltsp/powerpc/yaboot";
option vendor-class-identifier "AAPLBSDPC"; # now sure what this does
if (option dhcp-message-type = 1) { # DHCP Discover
option vendor-encapsulated-options 08:04:81:00:00:09;
}
elsif (option dhcp-message-type = 8) { # DHCP Inform
option vendor-encapsulated-options 01:01:02:08:04:81:00:00:09;
}
else {
option vendor-encapsulated-options 00:01:02:03:04:05:06:07;
}
option root-path "192.168.0.254:/opt/ltsp/powerpc";
}
class "PC-i386" {
match if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient";
filename "/ltsp/i386/pxelinux.0";
}
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.20 192.168.0.250;
option broadcast-address 192.168.0.255;
option subnet-mask 255.255.255.0;
# LAN config
option domain-name "hank.org";
option domain-name-servers 192.168.1.1;
option routers 192.168.0.254;
}
--
Bill Moseley
moseley at hank.org
More information about the dhcp-users
mailing list