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
Line 46: Line 46:
  initrdefi linux-install/CentOS7-x86_64-Diskless/initramfs-jvme-3.10.0-1062.9.1.el7.x86_64.img
  initrdefi linux-install/CentOS7-x86_64-Diskless/initramfs-jvme-3.10.0-1062.9.1.el7.x86_64.img
  }
  }
Edit file ''/etc/dhcp/dhcpd.conf'':
subnet 192.168.10.0 netmask 255.255.255.0 {
        option domain-name "jlab.org";
        option domain-name-servers 129.57.32.100, 129.57.32.101;
        option routers 192.168.10.1;
        use-host-decl-names true;
pool {
    range 192.168.10.2 192.168.10.20;
#     deny members of "ras-clients";
    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 test1 {
hardware ethernet 00:20:38:03:10:34;
fixed-address 192.168.10.4;
}
host test4 {
hardware ethernet 00:20:38:10:14:f7;
fixed-address 192.168.10.5;
}
} # Diskless clients group


Start dhcp:
Start dhcp:

Revision as of 16:37, 15 April 2025

Setting DHCP server on clon10new (RHEL7)

yum install dhcp tftp tftp-server
mkdir /tftpboot
grub2-mknetdir --net-directory=/tftpboot/efi


Create file /etc/systemd/system/tftp.service:

[Unit]
Description=Tftp Server
Requires=tftp.socket
Documentation=man:in.tftpd
[Service]
#ExecStart=/usr/sbin/in.tftpd -s /var/lib/tftpboot
ExecStart=/usr/sbin/in.tftpd -s /tftpboot
StandardInput=socket
[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
}


Edit file /etc/dhcp/dhcpd.conf:

subnet 192.168.10.0 netmask 255.255.255.0 {
       option domain-name "jlab.org";
       option domain-name-servers 129.57.32.100, 129.57.32.101;
       option routers 192.168.10.1;
       use-host-decl-names true;

pool { range 192.168.10.2 192.168.10.20;

#	     deny members of "ras-clients";

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 test1 { hardware ethernet 00:20:38:03:10:34; fixed-address 192.168.10.4; } host test4 { hardware ethernet 00:20:38:10:14:f7; fixed-address 192.168.10.5; }

} # Diskless clients group

Start dhcp:

systemctl start dhcpd


Install nfs:

yum install nfs-utils

Configure file /etc/exports:

/diskless 192.168.10.0/24(rw,sync)

Start NFS server:

systemctl status nfs-server

Check that NFS is exporting. Command

showmount -e

have to show following:

Export list for clondaq15.jlab.org:
/diskless 192.168.10.0/24


To use local name server, install bind:

yum install bind