I setup a DNS configuration for iodine.ninjanet.info, but when I perform a "dig iodine.ninjanet.info", I get a SERVFAIL, which leads me to believe I made a mistake in my configuration. I think I may have specified that the nameserver for iodine.ninjanet.info is iodine.ninjanet.info, so a circular dependency is created whereby a user must resolve iodine.ninjanet.info in order to resolve iodine.ninjanet.info (can someone confirm?).
To my great surprise, if I perform "dig z11.iodine.ninjanet.info", the DNS server responds with a CNAME record (ie. somehow, dig was able to get an answer from my iodine server).
I'm 99.8% sure it is NOT due to a cache somewhere, since I can reproduce using entirely new/unique hostnames for the iodine server that were not in any cache. I was thinking maybe the DNS server was providing some glue records, but as far as I can tell, the additional data sections are all empty.
I'm trying to understand what's going on here / how this works. If dig is unable to resolve iodine.ninjanet.info to an ip address, how is dig able to resolve z11.iodine.ninjanet.info for which iodine.ninjanet.info is a nameserver? What am I missing here?