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

