Getting local names to resolve (DNS) (named – the name server)This article shows how to set up named, the DNS daemon. This version uses BIND 4. Eventually, I’ll upgrade to BIND 8.
Resolve? What do you mean?I have named my three machines, NT1, NT2, and FreeBSD.
It would be nice to be able to type ping NT2 instead of ping 10.0.0.2. The process of converting the name to an IP address is referred to as resolving.
How resolution worksThere are two main ways of resolving a host name (e.g. NT2). One is a hosts file, the other is DNS. With a hosts file, you list all of the computers in a file and refer to it from there. Normally, each machine would contain a hosts file. With DNS, you list the hosts in a file on one computer, and all the other computers use the service on that computer. I’ve decided to use DNS.
During my installation of DNS, I got to the point where everything I wanted to do, worked just fine. But one thing didn’t work. And that was qpopper. When my Pegasus mail client on NT1 connected to the POP server on FreeBSD, the following message would be displayed on the console:
unable to get canonical name of client
When searching the mailing list archives, I found a reference to the above message. There is also a semi-obscure reference to this situation within the man pages for qpopper, but no direct reference to this message. Basically, qpopper does a reverse DNS lookup on the IP address it it given when you try to read your mail. It then does a DNS lookup on that name to verify that the IP address matches. If it does not, it puts out the above message but continues to process the request. In that respect, the message is only a warning. Services can continue otherwise unhindered.
26 July 1998I’ve received lots of help from a FreeBSD Questions mailing list person, who shall remain nameless until future notice. He suggested I send him my named files as a starting point. So off went the following files:
My helper suggested sevearal changes to my DNS files. There were many glaring errors, which, when pointed out, were obvious even to me. Some of my reverse IP entries where totally incorrect.
27 July 1998I implemented the changes as suggested by my helper. But no luck. It didn’t work. I reported back the results.
28 July 1998Tonight I received a very detailed reply from my helper. Much work had been carried out on my behalf. Specifically, my setup had been duplicated at his site. The files used for that duplication had been forwarded to me.
After implementing the changes, everything worked perfectly. I’ll write up what I did at a later date.
29 July 1998This morning, someone posted a message to the FreeBSD Questions mailing list requesting information on named. I replied that I would complete this diary note tonight as it directly applied to their situation.
First, you should have a look at the topology of my sub-net. This will help you to understand the DNS suggestions I’m about to make.
I recommend you read the following book: TCP/IP Network Administration by Craig Hunt and published by O’Reilly, ISBN 1-56592-322-7. This book is also known as the crab book (you’ll know why when you see the cover). Read it. Try to understand the four chapters before you do anything with Unix; you’ll be a lot better off. I wish I had before I started this project.
I found a good DNS reference on the FreeBSD site. It’s the Creating a mini-DNS system section of the PPP – Pedantic PPP Primer. However, I also found it lacking in some detail. I found details of it were not fully explained. So read that book before you start!