I was wondering if it was possible to setup a local DNS server though BIND9 that contained a large amount of entries for DNS names, similar to what an ISP DNS server or something like Google DNS would have. I have explored some options, active DNS caching being one of them. This article along with this post, both demonstrate how to setup a DNS daemon to save a copy when somebody on the network queries a DNS name so the next query is much quicker as it is no longer having to perform an external DNS request. While this is a step in the right direction, I was wondering if it was possible to download all these "cached entries" or a huge DNS zone file beforehand so I would not have to manually load a whole bunch of sites for my server to make sense. Is this how ISPs or Google DNS runs their DNS servers, with a huge DNS file? How can I get one of these? I have looked into zone transfering which is nicly demonistrated here, but according to the guy, most DNS servers deny zone transfers so it appears I am out of luck.
I am doing this for a couple reasons, first because I would like to have a faster connection ( I saw the speed increase greatly when I switched from my ISP servers to OpenDNS) and because I would like to explore the science in how ISP's run their DNS servers and how all these things work with a hands-on approach instead of reading a huge book or article.