[94] in Hesiod

home help back first fref pref prev next nref lref last post

Hesiod + DNS

daemon@ATHENA.MIT.EDU (Mark Rosenstein)
Tue Aug 18 15:02:20 1992

Date: Tue, 18 Aug 92 14:59:34 -0400
From: Mark Rosenstein <mar@MIT.EDU>
To: b3ky03w@shoes.BELL-ATL.COM
Cc: hesiod@Athena.MIT.EDU
In-Reply-To: Alan Sheets's message of Mon, 17 Aug 92 18:04:50 EDT <m0mKFC6-0000bLC@bagate.BELL-ATL.COM>

Every workstation at MIT runs a named locally.  The way we used to do
things here, each client named was configured to know where the local
zones were and not try to talk to the root.  This was done with a
special glue zone.  This technique has to only be used on client
named's, not on any named that others will ask questions of so that it
doesn't leak out possibly incorrect information about the root.
Here's an abbreviated copy of the config file:

----------------
; Hardwire the local domain so we can find it even if we can't talk to
; the root.  We use a small TTL in case this info ever accidentally
; gets out

@               IN      SOA     localhost.mit.edu. hostmaster.mit.edu. (
                                1.1     ; Serial
                                60	; Refresh 1 minute
                                60      ; Retry   1 minute
                                60	; Expire  1 minute
                                60    ) ; Minimum 1 minute
		IN	NS	localhost.mit.edu.

LOCALHOST.MIT.EDU. IN	A	127.0.0.1	; I know, it's a crock...

; The local servers
MIT.EDU.	  	60	IN	NS	    W20NS.MIT.EDU.
W20NS.MIT.EDU.	  	60	IN	A	    18.70.0.160
18.IN-ADDR.ARPA.  	60	IN	NS	    W20NS.MIT.EDU.

; pointers to Hesiod name servers
NS.ATHENA.MIT.EDU.	60	HS	NS	    SUOMI.MIT.EDU.
NS.ATHENA.MIT.EDU.	60	HS	NS	    APOLLO.MIT.EDU.
NS.ATHENA.MIT.EDU.	60	HS	NS	    CLIO.MIT.EDU.
; Hesiod address records (simply duplicates of IN address records)
SUOMI.MIT.EDU.		60	HS	A	    18.72.1.31
APOLLO.MIT.EDU.		60	HS	A	    18.80.0.10
CLIO.MIT.EDU.		60	HS	A	    18.63.0.7
; Internet address records for the same Hesiod servers
; required because of implementations of gethostbyname() which use
; C_ANY/T_A queries.
SUOMI.MIT.EDU.		60	IN	A	    18.72.1.31
APOLLO.MIT.EDU.		60	IN	A	    18.80.0.10
CLIO.MIT.EDU.		60	IN	A	    18.63.0.7

----------------

These days we are running Hesiod root servers here at MIT, and just
put in pointers to them, and they delegate the to the actual hesiod
servers in the usual fashion.

We are not using any form of zone transfers or secondaries in the
configuration of the hesiod servers.  Each of the 3 servers has it's
zone files directly updated, then the server is restarted.

Each server's boot file includes this:

----------------
; Authoritative data for NS.ATHENA.MIT.EDU, class HS
;
@               HS      SOA     SUOMI.MIT.EDU. HESREQ@ATHENA.MIT.EDU. (
                        4.9           ; serial - database version number
                        1800          ; refresh - sec servers
                        300           ; retry - for refresh
                        3600          ; expire - unrefreshed data
                        7200 )        ; min
                HS      NS      SUOMI.MIT.EDU.

; Hesiod NS and addr data
;
$INCLUDE /etc/athena/nameserver/hesiod.db

$INCLUDE /etc/athena/nameserver/passwd.db
$INCLUDE /etc/athena/nameserver/uid.db
$INCLUDE /etc/athena/nameserver/group.db
...etc...

----------------
Where the hesiod.db file contains:
----------------
; Hesiod-specific cache data (for ATHENA.MIT.EDU)
;
;       $Source$
;       $Header$
; pointers to Hesiod name servers
NS.ATHENA.MIT.EDU.      99999999        HS      NS          APOLLO.MIT.EDU.
NS.ATHENA.MIT.EDU.      99999999        HS      NS          CLIO.MIT.EDU.
NS.ATHENA.MIT.EDU.      99999999        HS      NS          SUOMI.MIT.EDU.
; Hesiod address records (simply duplicates of IN address records)
APOLLO.MIT.EDU. 99999999        HS      A           18.80.0.10
CLIO.MIT.EDU.   99999999        HS      A           18.63.0.7
SUOMI.MIT.EDU.  99999999        HS      A           18.72.1.31
; Internet address records for the same Hesiod servers
; required because of implementations of gethostbyname() which use
; C_ANY/T_A queries.
APOLLO.MIT.EDU. 99999999        IN      A           18.80.0.10
CLIO.MIT.EDU.   99999999        IN      A           18.63.0.7
SUOMI.MIT.EDU.  99999999        IN      A           18.72.1.31
----------------

Hope this information is helpful.
					-Mark

home help back first fref pref prev next nref lref last post