= DHCP Service = The Dynamic Host Configuration Protocol (DHCP) provides a way to automate and manage the network configurations of all ORBIT attached devices. It has two main functions: 1.) Assigning networking (IP) configuration 2.) Support for PXE booting == Configuration == {{{ authoritative; use-host-decl-names on; ping-check false; ping-timeout 0; default-lease-time 86400; max-lease-time 86400; subnet 10.11.0.0 netmask 255.255.0.0 { range 10.11.50.100 10.11.50.255; option routers 10.11.0.1; option domain-name-servers 10.0.0.9; option domain-name "sb1.orbit-lab.org"; option log-servers 10.11.0.10; option ntp-servers 10.11.0.10; ddns-updates off; ddns-domainname "sb1.orbit-lab.org"; next-server 10.11.0.40; host consolec.sb1.orbit-lab.org {hardware ethernet 00:40:63:D4:09:62; fixed-address consolec.sb1.orbit-lab.org;} host repository2.sb1.orbit-lab.org {hardware ethernet 00:04:23:9E:DF:58; fixed-address repository2.sb1.orbit-lab.org;} host node1-1.sb1.orbit-lab.org {hardware ethernet 00:0f:ea:4A:8B:5F; fixed-address node1-1.sb1.orbit-lab.org;} host node1-2.sb1.orbit-lab.org {hardware ethernet 00:0F:EA:84:C8:01; fixed-address node1-2.sb1.orbit-lab.org;} } }}} === PXE Support === The PXE protocol uses a very complex set of extensions to DHCP and/or BOOTP but most of the newer implementations seem to be able to boot with standard DHCP configuration. A DHCP configuration for PXE support is: {{{ allow booting; allow bootp; # Standard DHCP configuration directives... # Needed for PXE filename "/pxelinux.bin"; option option-150 code 150 = text; # tftp server next-server 10.11.0.40; }}} === Configuration As of 10/14/2015 === * Main file is dhcpd.conf, includes each orbit subnet as separate file, e.g. {{{include "/etc/dhcp/grid.conf";}}} * dhcpd Header is as follows {{{ #ddns-update-style interim; authoritative; use-host-decl-names on; get-lease-hostnames true; ping-check false; ping-timeout 0; log-facility local7; default-lease-time 86400; max-lease-time 86400; ddns-updates off; #allow booting; #allow bootp; # Ivan/James on dhcp1 if you want the log to do dhcplog enable this below and modify syslog.conf option ntp-servers dhcp1.orbit-lab.org,dhcp2.orbit-lab.org; filename "/pxelinux.bin"; option option-150 code 150 = text; }}} * Header for each sandbox is: {{{ #Sandbox Config subnet 10.11.0.0 netmask 255.255.0.0 { option routers 10.11.0.1; # Router option domain-name-servers 10.11.0.9, 10.11.0.8; #DNS option domain-name "sb1.orbit-lab.org"; #current domain option log-servers 10.11.0.10; # log set per subnet option ntp-servers 10.11.0.10; #ntp set per subnet ddns-updates off; #no ddns ddns-domainname "sb1.orbit-lab.org"; next-server 10.11.0.42; #for pxe }}} * Files included are: * inside.conf * instrument.conf * network.conf * cm.conf * dmz.conf * grid.conf * outdoor.conf * failover.conf * sandbox1.conf * sandbox2.conf * sandbox3.conf * sandbox4.conf * sandbox5.conf * sandbox6.conf * sandbox7.conf * sandbox8.conf * sandbox9.conf * aruba.conf