DHCP server: Difference between revisions

From CLONWiki
Jump to navigation Jump to search
Boiarino (talk | contribs)
No edit summary
Boiarino (talk | contribs)
No edit summary
 
(63 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Setting DHCP server on clon10new (RHEL7)'''
'''Configure DHCP server on RHEL7'''


  yum install dhcp tftp tftp-server
  yum install dhcp


mkdir /tftpboot
Config file ''/etc/dhcp/dhcpd.conf'' should looks like this:
 
  #
grub2-mknetdir --net-directory=/tftpboot/efi
  # DHCP Server Configuration file.
 
  #   see /usr/share/doc/dhcp*/dhcpd.conf.example
 
  #  see dhcpd.conf(5) man page
Create file ''/etc/systemd/system/tftp.service'':
  #
 
   
  [Unit]
  subnet 192.168.10.0 netmask 255.255.255.0 {
  Description=Tftp Server
        option domain-name "clontest.com jlab.org";
Requires=tftp.socket
        option domain-name-servers 192.168.10.1;
Documentation=man:in.tftpd
        option routers 192.168.10.1;
 
        use-host-decl-names true;
[Service]
pool {
  #ExecStart=/usr/sbin/in.tftpd -s /var/lib/tftpboot
    range 192.168.10.2 192.168.10.20;
  ExecStart=/usr/sbin/in.tftpd -s /tftpboot
    deny dynamic bootp clients;
  StandardInput=socket
    allow unknown clients;
 
    }
  [Install]
  Also=tftp.socket
 
 
Start tftp:
 
systemd start tftp
 
Create file ''/tftpboot/efi/boot/grub2/grub.cfg'' with following contents:
 
function load_video {
insmod efi_gop
insmod efi_uga
insmod video_bochs
insmod video_cirrus
insmod all_video
}
 
load_video
set gfxpayload=keep
insmod gzio
set timeout=2
menuentry 'Diskless CentOS7 x86_64, any network device'  --class redhat --class gnu-linux --class gnu --class os {
linuxefi linux-install/CentOS7-x86_64-Diskless/vmlinuz-3.10.0-1062.9.1.el7.x86_64 zram=1 ip=::::::dhcp root=nfs:129.57.29.103:/daqfs/diskless/CentOS7-devel/x86_64/root-jvme ro vga=0x305 module_blacklist=ipmi_si,ipmi_msghandler,ipmi_devintf,w83977f_wdt
initrdefi linux-install/CentOS7-x86_64-Diskless/initramfs-jvme-3.10.0-1062.9.1.el7.x86_64.img
  }
  }
set vendorclass = option vendor-class-identifier;
option pxe-system-type code 93 = unsigned integer 16;
set pxetype = option pxe-system-type;
# DISKLESS Clients in here
group
{
if substring(vendorclass, 0, 9)="PXEClient" {
  if pxetype=00:06 or pxetype=00:07 {
      filename  "efi/boot/grub2/x86_64-efi/core.efi";
  } else {
      filename "linux-install/pxelinux.0";
  }
}
  next-server 192.168.10.1;
host test5 {
hardware ethernet 00:20:38:10:14:f7;
fixed-address 192.168.10.5;
}
host test6 {
hardware ethernet 00:20:38:0A:07:D7;
fixed-address 192.168.10.6;
}
host test7 {
hardware ethernet 00:20:38:0F:2C:0D;
fixed-address 192.168.10.7;
}
} # Diskless clients group


Start dhcp:
Enable and start service:
 
systemctl enable dhcpd
  systemctl start dhcpd
  systemctl start dhcpd


 
Check service status, fix errors if any:
Install nfs:
  systemctl status dhcpd
 
yum install nfs-utils
 
Configure file ''/etc/exports'':
 
/diskless 192.168.10.0/24(rw,sync)
 
Check that NFS is exporting. Command
 
showmount -e
 
have to show following:
 
Export list for clondaq15.jlab.org:
  /diskless 192.168.10.0/24

Latest revision as of 15:23, 15 May 2025

Configure DHCP server on RHEL7

yum install dhcp

Config file /etc/dhcp/dhcpd.conf should looks like this:

#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#   see dhcpd.conf(5) man page
#

subnet 192.168.10.0 netmask 255.255.255.0 {
        option domain-name "clontest.com jlab.org";
        option domain-name-servers 192.168.10.1;
        option routers 192.168.10.1;
        use-host-decl-names true;
	pool {
	     range 192.168.10.2 192.168.10.20;
	     deny dynamic bootp clients;
	     allow unknown clients;
	     }
}

set vendorclass = option vendor-class-identifier;
option pxe-system-type code 93 = unsigned integer 16;
set pxetype = option pxe-system-type;

# DISKLESS Clients in here
group
{
	if substring(vendorclass, 0, 9)="PXEClient" {
	   if pxetype=00:06 or pxetype=00:07 {
	      filename   "efi/boot/grub2/x86_64-efi/core.efi";
	   } else {
	      filename "linux-install/pxelinux.0";
	   }
	}
  	next-server 192.168.10.1;

	host test5 {
	 hardware ethernet 00:20:38:10:14:f7;
	 fixed-address 192.168.10.5;
	}

	host test6 {
	 hardware ethernet 00:20:38:0A:07:D7;
	 fixed-address 192.168.10.6;
	}

	host test7 {
	 hardware ethernet 00:20:38:0F:2C:0D;
	 fixed-address 192.168.10.7;
	}

} # Diskless clients group

Enable and start service:

systemctl enable dhcpd
systemctl start dhcpd

Check service status, fix errors if any:

systemctl status dhcpd