[K12OSN] dhcpd.conf for diskless booting old iMacs

Eric Harrison eharrison at mail.mesd.k12.or.us
Sat Mar 26 04:09:15 UTC 2005


I'm not having much luck getting dhcpd to recognize the "Apple MacNC"
option 211 that is being sent by the old iMac I'm banging on. Hopefully
someone will be able to figure it out (see attached tcpdump)

I did get it to work based off the vendor-portion of the MAC address, 
see the attached dhcpd.conf. Are there any reasons NOT to do it this way?

-Eric
-------------- next part --------------
# Sample configuration file for ISCD dhcpd
#
# Don't forget to set run_dhcpd=1 in /etc/init.d/dhcpd
# once you adjusted this file and copied it to /etc/dhcpd.conf.
#

default-lease-time            21600;
max-lease-time                21600;
ddns-update-style none;
allow booting;
allow bootp;

option subnet-mask            255.255.255.0;
option broadcast-address      192.168.0.255;
option routers                192.168.0.254;
option domain-name-servers    192.168.0.254;
option domain-name            "ltsp";
option root-path              "192.168.0.254:/opt/ltsp/i386";
option option-128 code 128 = string;
option option-129 code 129 = text;

shared-network WORKSTATIONS {
  subnet 192.168.0.0 netmask 255.255.255.0 {
     range dynamic-bootp 192.168.0.100 192.168.0.253;
     use-host-decl-names       on;
     option log-servers        192.168.0.254;

     # trick from Peter Rundle <peter.rundle at au.interpath.net>
     #if substring (option vendor-class-identifier, 0, 9) = "AAPLBSDPC"

     # newer Macs
     if substring (option vendor-class-identifier, 0, 9) = "AAPLBSDPC"
     {
        filename      "yaboot";
        option vendor-class-identifier "AAPLBSDPC";
     } 
     # really old iMacs
     elsif substring (hardware, 1, 4) = 00:50:e4:60
     {
        filename      "yaboot";
        option vendor-class-identifier "AAPLBSDPC";
     } 
     # 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";
     } 
     # default to an i386 BOOTP image
     else 
     {
        filename      "/lts/vmlinuz.ltsp";
     }

     if substring (option vendor-class-identifier, 20, 3) = "ppc" {
        option root-path "192.168.0.254:/opt/ltsp/ppc";
     } else {
        option root-path "192.168.0.254:/opt/ltsp/i386"; }
  }
}

# example configurations for specifying specific kernels to specific clients
group	{
    use-host-decl-names       on;
    option log-servers        192.168.0.254;

    host ws001 {
        hardware ethernet     00:E0:06:E8:00:84;
        fixed-address         192.168.0.1;
        filename              "/lts/vmlinuz.ltsp";
        option option-128 e4:45:74:68:00:00;
        option option-129 "NIC=3c509";
    }
    host ws002 {
        hardware ethernet     00:D0:09:30:6A:1C;
        fixed-address         192.168.0.2;
        filename              "/lts/vmlinuz.ltsp";
        option option-128 e4:45:74:68:00:00;
        option option-129 "NIC=ne";
    }
    host ws003 {
        hardware ethernet     00:D0:09:30:28:B2;
        fixed-address         192.168.0.3;
        # kernels are specified in /tftpboot/lts/boot/pxe/pxelinux.cfg/
        filename              "/lts/boot/pxe/pxelinux.0";
    }

# Apple Specific Settings
#    host ws007 {
#       hardware ethernet     00:30:65:69:23:60;
#       fixed-address         192.168.0.4;
#       option root-path      "192.168.0.254:/opt/ltsp/ppc";
#       filename              "yaboot";
#       option vendor-class-identifier "AAPLBSDPC";
#    }
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: imac-bootp.dump
Type: application/octet-stream
Size: 382 bytes
Desc: 
URL: <http://listman.redhat.com/archives/k12osn/attachments/20050325/8f98514f/attachment.obj>


More information about the K12OSN mailing list