Proper way to setup DNS cluster
I want to learn more about how DNS works so I'm setting up my own DNS cluster of two servers to serve my website on a third server.
1.Type of software
Which dns software should I choose? I'd like to hear hands on experience opinion, BIND, djndns, NSD, powerDNS and most importantly why?
2.Authoritative vs Recursive?
Which one to server me better? I still don't quite understand the difference between these two.
So how should I go about it? I don't want complete solutions such as automated scripts or complete solutions such as cPanel DNSonly, I want to learn so I need to setup master and slave manually. So as I see it, my website server (184.108.40.206) has many domains hosted on it and I want to set up two different nameservers to server my website. One DNS server is master (220.127.116.11) and another one is a slave (18.104.22.168). Each time a query is made, the DNS server looks it up on the master, a slave is only a copy.
Every guide I've read so far is confusing, I don't know how to set them up properly. Is anyone willing to go help me with this one? I was thinking of either OpenBSD or CentOS for server software.