The FreeBSD Diary

The FreeBSD Diary (TM)

Providing practical examples since 1998

If you buy from Amazon USA, please support us by using this link.
Getting local names to resolve (DNS) (named - the name server) 26 July 1998
Need more help on this topic? Click here
This article has 1 comment
Show me similar articles
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  The process of converting the name to an IP address is referred to as resolving.

How resolution works
There 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 1998
I'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 1998
I implemented the changes as suggested by my helper.  But no luck.  It didn't work.  I reported back the results.
28 July 1998
Tonight 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 1998
This 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!

A working example
I suggest that you following the instructions for Starting the DNS Server on the FreeBSD site.  I don't wish to duplicate their efforts.  However, given the complex and often confusing nature of DNS, I have provided an example taken from the zone files on my subnet (names and numbers are changed for security reasons).

Need more help on this topic? Click here
This article has 1 comment
Show me similar articles