DNS Server
Back
The Linux Cookbook (O'Reilly) by Carla Schroder has very good recipes for setting up a DNS server. Caching, public and private servers for both bind and djbdns are covered. You can also read it online here.
Bind
A very nice tutorial for bind can be found here.
# dnf -y install bind # cp /etc/resolv.conf /etc/resolv.conf.bak # sed -i 's/nameserver.*/nameserver 127.0.0.1/g' /etc/resolv.conf # systemctl enable --now named
djbdns
A very nice tutorial for djbdns can be found here.