# # Sample configuration file # Christian Leber 20050408 # # The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddns-update-style none; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. #authoritative; #to be sure we set it to: non authorative; #so that we don't send DHCPNAK to clients we have no idea about ### OPTION SPEC --------------------------------------------------------------- # Definition of PXE-specific options # Code 1: Multicast IP address of bootfile # Code 2: UDP port that client should monitor for MTFTP responses # Code 3: UDP port that MTFTP servers are using to listen for MTFTP requests # Code 4: Number of secondes a client must listen for activity before trying # to start a new MTFTP transfer # Code 5: Number of secondes a client must listen before trying to restart # a MTFTP transfer 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; # Definition of GRUB-specific options option pxe-menu code 150 = text ; #------------------------------------------------------------------------------ ### OPTION SPEC END ----------------------------------------------------------- class "PXE" { match if substring(option vendor-class-identifier, 0, 9) = "PXEClient"; filename "/boot/pxegrub"; # this is a grub image, runs with e100 and e1000, tg3 option PXE.mtftp-ip 0.0.0.0; #Setting the pxe menu globally here doesn't help, for some reason #when you are setting no pxe-menu for a host at all /boot/grub/menu.lst will be used #option pxe-menu "/boot/grub/tecra"; } class "known" { match hardware; one-lease-per-client on; option fqdn.no-client-update on; set vendor_class_identifier = option vendor-class-identifier; } #default-lease-time 600; #max-lease-time 7200; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. #authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology. shared-network "home" { subnet 192.168.1.0 netmask 255.255.255.0 { option subnet-mask 255.255.255.0; option routers 192.168.1.1; option domain-name-servers 192.168.1.3; option domain-name "home"; option broadcast-address 192.168.1.255; use-host-decl-names on; default-lease-time 28800; max-lease-time 86400; #the tftp server next-server 192.168.1.3; #menu for all hosts in this subnet, as long as not specified otherwise for the single hosts option pxe-menu "/boot/grub/tecra"; host igor3 { hardware ethernet 00:08:C1:7B:13:3D; fixed-address 192.168.1.5; #another grub menu file for this host option pxe-menu "/boot/grub/menu.igor3"; } host tecra { hardware ethernet 00:00:31:B7:98:18; fixed-address 192.168.1.18; #you may also user another grub #filename "/boot/pxegrub"; } #When you don't have all of the clients listed or something like that you can #use a pool # pool { # range 192.168.1.150 192.168.1.160; # } } }