Проблема, как уже сказали, в том, что DHCPD использует чрут. Чтобы заработало- нужно сделать так, чтобы он работал без чрута. Ниже- решение.
Есть еще "костыльный" вариант: создаем файл, который гоняет по кругу команды "systemctl status dhcpd | grep Commit", "systemctl status dhcpd | grep Release", "systemctl status dhcpd | grep Expired" и как только их находит- запускает файл, который добавляет/меняет/удаляет записи в ДНС.
-------------------------
/etc/control.d/facilities/dhcpd-chroot
-------------------------
#!/bin/sh
. /etc/control.d/functions
CONFIG=/etc/sysconfig/dhcpd
new_summary 'Chrootedness of the ISC DHCPD server'
new_subst disabled \
'^CHROOT="-j / -lf /var/lib/dhcp/dhcpd/state/dhcpd.leases"$' \
's/^#\(CHROOT="-j \/ -lf \/var\/lib\/dhcp\/dhcpd\/state\/dhcpd.leases"\)$/\1/'
new_help disabled 'Disable chrootedness of the ISC DHCPD server'
new_subst enabled \
'^#CHROOT="-j / -lf /var/lib/dhcp/dhcpd/state/dhcpd.leases"$' \
's/^CHROOT=/#&/'
new_help enabled 'Enable chrootedness of the ISC DHCPD server'
control_subst "$CONFIG" "$*"
-------------------------
/lib/systemd/system/dhcpd.service
-------------------------
[Unit]
Description=DHCPv4 Server Daemon
Documentation=man:dhcpd(8) man:dhcpd.conf(5)
After=network.target
After=time-sync.target
[Service]
ExecStartPre=/etc/chroot.d/dhcpd.all
EnvironmentFile=/etc/sysconfig/dhcpd
#ExecStart=/usr/sbin/dhcpd -4 -f --no-pid $DHCPDARGS
ExecStart=/usr/sbin/dhcpd -4 -f --no-pid $CHROOT $DHCPDARGS
[Install]
WantedBy=multi-user.target
-------------------------
/etc/sysconfig/dhcpd
-------------------------
1. The following variables are recognized:
DHCPDARGS=
CHROOT="-j / -lf /var/lib/dhcp/dhcpd/state/dhcpd.leases"
Затем
chmod 755 /etc/control.d/facilities/dhcpd-chroot
control dhcpd-chroot disabled
systemctl daemon-reload
systemctl restart dhcpd