authoritative;

class "even" {
  match if ((extract-int (suffix
			  (pick-first-value (option dhcp-client-identifier,
					     hardware), 1), 8) % 2) = 0);
}
class "odd" {
  match if ((extract-int (suffix
			  (pick-first-value (option dhcp-client-identifier,
					     hardware), 1), 8) % 2) = 1);
}

lease-file-name "dhcp-2.leases";
pid-file-name "dhcp-2.pid";
local-port 50000;
remote-port 50001;
omapi-port 50005;

ddns-update-style none;

default-lease-time 600;
max-lease-time 600;

failover peer "foo" {
  secondary;
  address 10.0.0.1;
  port 51001;
  peer address 10.0.0.1;
  peer port 51000;
  max-response-delay 60;
  max-unacked-updates 10;
  mclt 100;
  load balance max seconds 2;
}

option space SUNW;
option SUNW.root-mount-options code 1 = text;
option SUNW.root-server-ip-address code 2 = ip-address;
option SUNW.root-server-hostname code 3 = text;
option SUNW.root-path-name code 4 = text;
option SUNW.swap-server-ip-address code 5 = ip-address;
option SUNW.swap-file-path code 6 = text;
option SUNW.boot-file-path code 7 = text;
option SUNW.posix-timezone-string code 8 = text;
option SUNW.boot-read-size code 9 = unsigned integer 16;
option SUNW.install-server-ip-address code 10 = ip-address;
option SUNW.install-server-hostname code 11 = text;
option SUNW.install-path code 12 = text;
option SUNW.sysid-config-file-server code 13 = text;
option SUNW.JumpStart-server code 14 = text;
option SUNW.terminal-name code 15 = text;

class "solaris-i86pc" {
  match if option vendor-class-identifier = "SUNW.i86pc";
  vendor-option-space SUNW;
  option SUNW.boot-file-path "/platform/i86pc/kernel/unix";
  option SUNW.root-path-name "/export/root/i86pc";
}

class "solaris-sun4u" {
  match if option vendor-class-identifier = "SUNW.Ultra-5_10";
  vendor-option-space SUNW;
  option SUNW.install-path "/export/2/s581_sparc";
  option SUNW.root-path-name "/export/2/s581_sparc/Solaris_8/Tools/Boot";
}

option domain-name "connectathon.org.";
option SUNW.root-server-ip-address 172.16.113.1;
option SUNW.root-server-hostname "sundhcp-server17-1";

class "sniffer" {
  match if option host-name = "sniffer";
}

key FOO {
  algorithm HMAC-MD5.SIG-ALG.REG.INT;
  secret ABCD;
}

zone BISBEE.FUGUE.COM. {
  primary 127.0.0.1;
  key FOO;
}

zone 17.127.10.in-addr.arpa. {
  primary 127.0.0.1;
  key FOO;
}

zone 0.0.10.in-addr.arpa. {
  primary 127.0.0.1;
  key FOO;
}

subnet 204.152.186.128 netmask 255.255.255.192 {
  not authoritative;
}

shared-network LOCAL {
  subnet 127.0.0.0 netmask 255.255.255.0 {
  }
  subnet 10.0.2.0 netmask 255.255.255.0 {
    pool {
      deny dynamic bootp clients;
      failover peer "foo";
      range 10.0.2.100 10.0.2.200;
    }
  }
}

shared-network 187-NET {
  subnet 204.152.187.0 netmask 255.255.255.0 {
  }
  subnet 205.140.116.224 netmask 255.255.255.248 {
  }
  subnet 10.0.1.0 netmask 255.255.255.0 {
    pool {
      deny dynamic bootp clients;
      failover peer "foo";
      range 10.0.1.10 10.0.1.200;
    }
  }
}

subnet 10.0.0.0 netmask 255.255.255.0 {
  pool {
    deny dynamic bootp clients;
    allow members of "even";
    option impress-servers 10.0.0.0;
    failover peer "foo";
    range 10.0.0.10 10.0.0.54;
    range 10.0.0.100 10.0.0.149;
  }
  pool {
    deny dynamic bootp clients;
    allow members of "odd";
    failover peer "foo";
    option impress-servers 10.0.0.1;
    range 10.0.0.55 10.0.0.99;
    range 10.0.0.150 10.0.0.200;
  }
  pool {
    deny dynamic bootp clients;
    allow members of "sniffer";
    failover peer "foo";
    range 10.0.0.9 10.0.0.9;
  }
  option routers 10.0.0.1;
  option domain-name "bisbee.fugue.com";
  option domain-name-servers 10.0.0.1;
}
