On Mon, 01 Oct 2007 12:57:05 -0230 Roger Mason <[EMAIL PROTECTED]> wrote:
> Well, I had it working on Friday but over the weeekend I tinkered some > more with pixegrub and broke it again. Now pxelinux won't work > either. I've attached my dhcpd.conf, sans rndc-key. Please note that this configuration has a big block of code that is for dynamic DNS updates. I kept it in because I found it hard to figure out for myself, and I figured it would be better to put more out on the web rather than refer you to sources I don't even know exist. I don't know if you are running BIND or a DNS server that can do static updates, but if you can, I highly suggest it for your own sanity. For usefulness of online archives, which probably strip attachments, here is the same info. I even annotated it a little. /*=================================================================== dhcpd.conf from spore.ath.cx ===================================================================*/ key "rndc-key" { algorithm hmac-md5; secret "xxxxxxxxxxxxxxxxxxxxxxxx"; }; server-identifier zeus.pantheon.spore.ath.cx; authoritative; option domain-name-servers 192.168.10.1, 192.168.1.87; ddns-update-style interim; use-host-decl-names on; allow client-updates; # these two lines are important for net booting.. i think... option oe-key code 159 = string; option oe-gateway code 160 = ip-address; on commit { if (not static and ((config-option server.ddns-updates = null) or (config-option server.ddns-updates != 0))) { if exists oe-key { set ddns-rev-name = concat (binary-to-ascii (10, 8, ".", reverse (1, leased-address)), ".", pick (config-option server.ddns-rev-domainname, "in-addr.arpa.")); set full-oe-key = option oe-key; switch (ns-update (delete (IN, 25, ddns-rev-name, null), add (IN, 25, ddns-rev-name, full-oe-key, lease-time / 2))) { default: unset ddns-rev-name; break; case NOERROR: on release or expiry { switch (ns-update (delete (IN, 25, ddns-rev-name, null))) { case NOERROR: unset ddns-rev-name; break; } } } } } } default-lease-time 609080; max-lease-time 1218160; # tftp server, I believe. next-server 192.168.10.1; #barge in and take over any lease you hear of, even if #you don't remember granting it. authoritative # more pxe settings: option space PXE; option PXE.mtftp-ip code 1 = ip-address; option PXE.mtftp-cport code 2 = unsigned integer 16; option PXE.mtftp-sport code 3 = unsigned integer 16; option PXE.mtftp-tmout code 4 = unsigned integer 8; option PXE.mtftp-delay code 5 = unsigned integer 8; option PXE.discovery-control code 6 = unsigned integer 8; option PXE.discovery-mcast-addr code 7 = ip-address; # each subdomain should have a zone entry. #wireless, g.spore.ath.cx zone g.spore.ath.cx. { primary 192.168.1.87; key rndc-key; } #you might well need the in-addr.arpa zone too: zone 2.168.192.in-addr.arpa. { primary 192.168.1.87; key rndc-key; } # this subnet doesn't support diskless booting. Yuck, doing that # over WIFI would be icky. subnet 192.168.2.0 netmask 255.255.255.0 { option domain-name "g.spore.ath.cx"; # the default route for the subdomain. option routers 192.168.1.1; option domain-name-servers 192.168.1.87; } #pantheon # another one of those netbooting things option option-150 code 150 = text ; # another zone... zone pantheon.spore.ath.cx. { primary 192.168.10.1; key rndc-key; } # ... and reverse ... zone 10.168.192.in-addr.arpa. { primary 192.168.10.1; key rndc-key; # ... and the subnet information ... subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.101 192.168.10.199; option domain-name-servers 192.168.10.1; option domain-name "pantheon.spore.ath.cx"; option routers 192.168.10.1; option broadcast-address 192.168.10.255; one-lease-per-client on; option routers 192.168.10.1; option domain-name-servers 192.168.10.1; update-static-leases on; ddns-domainname "pantheon.spore.ath.cx"; #the host entry is required for any host that is to be net booted. host apollo{ # some way to identify hardware ethernet 00:04:76:e3:3b:95; fixed-address 192.168.10.99; option host-name "apollo"; DDNS-hostname "apollo"; # analagous to next server , I guess option PXE.mtftp-ip 0.0.0.0; # file to be served. In this case, it's the syslinux preboot #execution environment binary. filename "pxelinux.0"; } #more examples of host entries, all pretty much the same idea. host aphrodite{ hardware ethernet 00:01:02:5F:6E:6B; fixed-address 192.168.10.96; option host-name "aphrodite"; DDNS-hostname "aphrodite"; option PXE.mtftp-ip 0.0.0.0; filename "pxelinux.0"; } host artemis { hardware ethernet 00:01:02:46:E7:CC; fixed-address 192.168.10.97; option host-name "artemis"; DDNS-hostname "artemis"; option PXE.mtftp-ip 0.0.0.0; filename "pxelinux.0"; } host matty{ hardware ethernet 00:01:03:20:B8:04; fixed-address 192.168.10.95; option host-name "matty"; DDNS-hostname "matty"; option PXE.mtftp-ip 0.0.0.0; filename "pxelinux.0"; } host cuttlefish{ hardware ethernet 00:50:da:d7:45:a4; fixed-address 192.168.10.94; option host-name "cuttlefish"; DDNS-hostname "cuttlefish"; option PXE.mtftp-ip 0.0.0.0; filename "pxelinux.0"; } } #spore.ath.cx zone spore.ath.cx. { primary 192.168.1.87; key rndc-key; } zone 1.168.192.in-addr.arpa. { primary 192.168.1.87; key rndc-key; } subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.101 192.168.1.199; option domain-name-servers 192.168.1.87; option domain-name "spore.ath.cx"; ddns-domainname "spore.ath.cx"; option routers 192.168.1.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; one-lease-per-client on; update-static-leases on; host davey{ hardware ethernet 00:01:03:20:AE:CF; fixed-address 192.168.1.1; option host-name "davey"; option routers none; DDNS-hostname "davey"; option PXE.mtftp-ip 192.168.10.1; filename "pxelinux.0"; } host hydra{ hardware ethernet 00:01:03:1E:08:FC; fixed-address 192.168.1.187; option host-name "hydra"; DDNS-hostname "hydra"; option PXE.mtftp-ip 0.0.0.0; filename "pxelinux.0"; } host slim{ # slimline pentium4's hardware addr # hardware ethernet 00:E0:81:60:DF:69; # # hardware ethernet 00:03:47:7d:33:d8; hardware ethernet 00:03:47:A3:99:C8; fixed-address 192.168.1.86; option host-name "slim"; DDNS-hostname "slim"; option PXE.mtftp-ip 192.168.10.1; filename "pxelinux.0"; } host pascal{ hardware ethernet 00:50:70:56:2E:CA; fixed-address 192.168.1.100; option host-name "pascal"; DDNS-hostname "pascal"; } host plato{ hardware ethernet 00:11:D8:BC:6C:DF; fixed-address 192.168.1.79; option host-name "plato"; DDNS-hostname "plato"; } #host loki{ # hardware ethernet 00:03:47:7d:33:d8; # fixed-address 192.168.1.201; # option host-name "loki"; # DDNS-hostname "loki"; # option PXE.mtftp-ip 192.168.10.1; # filename "pxelinux.0"; # #} host diathlon{ hardware ethernet 00:50:04:0B:F9:C3; fixed-address 192.168.1.185; option host-name "diathlon"; DDNS-hostname "diathlon"; } } # end of spore subnet. /*=================================================================== END dhcpd.conf from spore.ath.cx END ===================================================================*/ If you still have problems, better let us know. Good luck!
dhcpd.conf
Description: Binary data