Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Aug 1995 10:55:42 -0400 (EDT)
From:      "Michael C. Newell" <mnewell@lupine.nsi.nasa.gov>
To:        aarone@homer.prahran.swin.edu.au
Cc:        freebsd-questions@freefall.FreeBSD.org
Subject:   Re: Caching DNS Server?
Message-ID:  <Pine.SUN.3.91.950831103049.27499C-100000@lupine.nsi.nasa.gov>
In-Reply-To: <MAILQUEUE-101.950825113651.448@h409-fs3.prahran.swin.edu.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 25 Aug 1995, Aaron Elliott. wrote:

> Hello all, is there any software out there that will do me a caching
> DNS device?  If so where?
> 
> Also, where have all the packages for 1.1.5.1 gone??????????????????

If you're running 2.0.5R all you need to do is

	cd /etc/namedb
	sh make-localhost
		... answer the questions ...
	named

In your /etc/sysconfig you'll want to change the line

	namedflags="NO"

to
	namedflags="-b /etc/namedb/named.boot"

If you're running pre-V2.0.5 you have to create a bunch of files, but 
they are pretty standard.  

First, make a directory to hold the config files (that way you don't 
clutter up /etc):

	mkdir /etc/namedb

Then create the file /etc/namedb/named.boot that contains something like: 

	directory       /etc/namedb
	cache     .                     named.root
	primary   0.0.127.IN-ADDR.ARPA  localhost.rev

This is the main configuration file for the named program (which 
implements bind).  The first line tells named to find all its files in 
directory "/etc/namedb".  The second tells named where to find the root 
(".") name servers - in this case file "/etc/namedb/named.root".  The 
third line makes the named primary for the reverse lookup on the 
"127.0.0.1" domain for your host; this is required for some packages to 
work correctly.

Next create file "/etc/namedb/named.root", containing the following:

	;       named.root,v 1.2 1995/03/23 08:43:03 rgrimes Exp
	;
	;       This file holds the information on root name servers needed to
	;       initialize cache of Internet domain name servers 
	;       (e.g. reference this file in the "cache  .  <file>"
	;       configuration file of BIND domain name servers).
	;
	;       This file is made available by InterNIC registration services
	;       under anonymous FTP as
	;           file                /domain/named.root
	;           on server           FTP.RS.INTERNIC.NET
	;       -OR- under Gopher at    RS.INTERNIC.NET
	;           under menu          InterNIC Registration Services (NSI)
	;              submenu          InterNIC Registration Archives
	;           file                named.root
	;
	;       last update:    Oct 5, 1994
	;       related version of root zone:   1994100500
	;
	.                        99999999 IN  NS    NS.INTERNIC.NET.
	NS.INTERNIC.NET.         99999999     A     198.41.0.4
	.                        99999999     NS    NS1.ISI.EDU. 
	NS1.ISI.EDU.             99999999     A     128.9.0.107
	.                        99999999     NS    C.PSI.NET.
	C.PSI.NET.               99999999     A     192.33.4.12
	.                        99999999     NS    TERP.UMD.EDU.
	TERP.UMD.EDU.            99999999     A     128.8.10.90
	.                        99999999     NS    NS.NASA.GOV.
	NS.NASA.GOV.             99999999     A     128.102.16.10
	                         99999999     A     192.52.195.10
	.                        99999999     NS    NS.ISC.ORG.
	NS.ISC.ORG.              99999999     A     192.5.5.241
	.                        99999999     NS    NS.NIC.DDN.MIL.
	NS.NIC.DDN.MIL.          99999999     A     192.112.36.4
	.                        99999999     NS    AOS.ARL.ARMY.MIL.
	AOS.ARL.ARMY.MIL.        99999999     A     128.63.4.82
	                         99999999     A     192.5.25.82
	.                        99999999     NS    NIC.NORDU.NET.
	NIC.NORDU.NET.           99999999     A     192.36.148.17
	; End of File

Basically what you're doing here is hard-wiring the addresses for the 
root name servers.  If one of these servers is "closer" to you (e.g. if 
you're on SURANet "terp.umd.edu" tends to be closer routing-wise to you) 
you probably want to move the entry for that name server to the head of 
the list.

The next step is to create the file "/etc/namedb/localhost.rev" which 
should contain

	@       IN      SOA     <your-node>.<your-domain>. 
				root.<your-node>.<your-domain>.  (
                                1	; Serial
                                3600    ; Refresh
                                300     ; Retry
                                3600000 ; Expire
                                3600 )  ; Minimum
        	IN      NS      <your-node>.<your-domain>.
	1       IN      PTR     localhost.<your-domain>.

Where "<your-domain>" is the domain part of your host name, and 
"<your-host>" is the host part.  For example, if your computer is called 
"myhost.mydomain.edu" you would have

	@	IN	SOA	myhost.mydomain.edu.
				root.myhost.mydomain.edu. (
                                1       ; Serial
                                3600    ; Refresh
                                300     ; Retry 
                                3600000 ; Expire 
                                3600 )  ; Minimum
                IN      NS      myhost.mydomain.edu.
        1       IN      PTR     localhost.mydomain.edu.

BE CAREFUL WHERE YOU PUT THE TRAILING "."s!!  They are very important - 
they tell the name server that you are fully specifying the name.  
Without the trailing dot for example the "IN PTR" line would change from 
"localhost.mydomain.edu" to "localhost.mydomain.edu.mydomain.edu", which 
clearly you don't want to have happen...

Once you've created all the files you should just be able to run the 
named daemon:

	named -b /etc/namedb/named.boot

and *POOF* you're a caching only name server!!  Of course you want to add 
this to your startup files; just look and see if named is mentioned 
anywhere and make the proper changes to start it; probably you should 
have something like

	if [ -f /etc/namedb/named.boot ] ; then
		named -b /etc/named/namedb.boot ; echo -n " named "
	fi

This checks to see if the file "/etc/namedb/named.boot" exists and if it 
does it launches named with the named.boot file as its bootfile.

Hope this helps,

Mike

+--------------------------------------+------------------------------------+
|Mike Newell                           | The opinions expressed herein are  |
|NASA Science Internet Network Systems | my own, and do not necessarily     |
|Sterling Software, Inc.               | reflect those of the NSI program,  |
|MNewell@nsipo.nasa.gov                | Sterling Software, NASA, or anyone |
|+1-202-434-8954                       | else.                              |
+--------------------------------------+------------------------------------+
|                  work: http://www.eco.nsi.nasa.gov/~mnewell               |
|                    home: http://www.newell.arlington.va.us                |
+---------------------------------------------------------------------------+




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SUN.3.91.950831103049.27499C-100000>