Newsgroups: bit.listserv.ibmtcp-l
Date:         Wed, 8 Apr 1992 14:54:58 +0300
From:         Benzi mizrahi <VSBENZI@WEIZMANN.WEIZMANN.AC.IL>
Subject:      NAMESRV V2R2 and CNAME

Hello,

I have some problem with NAMESRV handling CNAME queries.


software:
---------
 FAL V2R2 on VM/SP HPO 5.0

Problem keywords:
-----------------
 NAMESRV CNAME SQL TABLES

Desription:
----------
 Our campus is divided to 2 domains upper and lower.
 The upper is weizmann.ac.il with sql tables weizmann0/1
 the sub-domain is wisdom.weizmann.ac.il with sql table wisdom0/1, i.e
 NAMESRV's NSMAIN DATA file has the following PRIMARY statements:

 PRIMARY weizmann.ac.il         WEIZMANN
 PRIMARY wisdom.weizmann.ac.il  WISDOM

 To make life easier for upper domain users who want to connect to
 the lower lever domain hosts, so they don't have to type the full
 lower level domain name, I put for each lower domain host, CNAME
 RR on the upper domain table e.g.,

 xxx.weizmann.ac.il  IN CNAME xxx.wisdom.weizmann.ac.il

 whereas the A type RR for this host is in the lower domain sql table.

 What happens is that NAMESRV sends query TYPE A with QNAME
 xxx.weizmann.ac.il, followed by QTYPE CNAME, QNAME xxx.wisdom.weizmann.ac.il
 followed by QTYPE A, QNAME xxx.wisdom.weizmann.ac.il. All queries, SQL
 SELECT commands, search only the upper domain sql table, i.e. WEIZMANN.
 So this query end up with XXX host unkown. This used to work with the
 previous release 1.2.2.

 Something like this: (From NAMESRV console)

telnet marva
VM TCP/IP Telnet V2R2
 13:35:00  ns: Notice arrives --
                    : Connection: 0
 Wed Apr  8 13:35:00: Notification: UDP data delivered
                    : UDP datalen delivered: 38
           ns: UDPdatagramDELIVERED notify arrived
                    : cmolsub: Returning from comp2dot.
                    Name is 'MARVA.WEIZMANN.AC.IL'
           Q:    1 from 14.0.0.0        :received
                  name=MARVA.WEIZMANN.AC.IL type=1
           ns: Standard Query Cache:
           ns:      Looking for Query
                    : cm:      qname='MARVA.WEIZMANN.AC.IL', qtype=1,
                    qclass=1
           ns:      Cache Entry NOT Found
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings: str1 marva.weizmann.ac.il str2 0.0.127.in-addr.arpa
 compare strings ac.il ac.il are 0
 compare strings ac.il ac.il are 0
 compare strings ac.il ac.il are 0
 compare strings ac.il ac.il are 0
 compare strings ac.il ac.il are 0
 compare strings weizmann.ac.il weizmann.ac.il are 0
 compare strings weizmann.ac.il weizmann.ac.il are 0
 compare strings weizmann.ac.il weizmann.ac.il are 0
 compare strings weizmann.ac.il weizmann.ac.il are 0
           ns: Authorative Name Server
 ns: storage available before is 2521
SELECT NAME,TYPE,CLASS,TTL,RDATA FROM VMDNS.WEIZMANN1 WHERE  TYPE=1 AND CLASS=1
 AND NAME='marva.weizmann.ac.il'
 command length 113
 ns: storage available after nsbld is 2521
SELECT NAME,TYPE,CLASS,TTL,RDATA FROM VMDNS.WEIZMANN1 WHERE  TYPE=5 AND CLASS=1
 AND NAME='marva.weizmann.ac.il'
 command length 113
SELECT NAME,TYPE,CLASS,TTL,RDATA FROM VMDNS.WEIZMANN1 WHERE  TYPE=1 AND CLASS=1
 AND NAME='marva.wisdom.weizmann.ac.il'
 command length 120
SELECT NAME,TYPE,CLASS,TTL,RDATA FROM VMDNS.WEIZMANN1 WHERE  TYPE=5 AND CLASS=1
 AND NAME='marva.wisdom.weizmann.ac.il'
 command length 120
SELECT NAME,TYPE,CLASS,TTL,RDATA FROM VMDNS.WEIZMANN1 WHERE
 NAME='marva.weizmann.ac.il'
 command length 90
           NSAXZONE: strindex
 compare strings WEIZMANN.AC.IL weizmann.ac.il are 0
           NSAXZONE: strindex
 compare strings MARVA.WEIZMANN.AC.IL 0.0.127.in-addr.arpa are -1
           NSAXZONE: strindex
           NSAXZONE: strindex
 compare strings MARVA.WEIZMANN.AC.IL 0.0.127.in-addr.arpa are -1
           NSAXZONE: strindex
 compare strings ARVA.WEIZMANN.AC.IL 76.132.in-addr.arpa are -1
           NSAXZONE: strindex
 compare strings AC.IL ac.il are 0
           Q:    1 from 14.0.0.0        :nonanswer returned
 13:35:01  ns: Standard Query Cache:
 in getminttl
           A: 1                      :cached 86400 secs
                  for name=MARVA.WEIZMANN.AC.IL
 in backfast
                    : cmolsub: makequest Question is:
                    : cm:      qname='MARVA.WEIZMANN.AC.IL', qtype=1, qclass=1
           ns: Results being sent back to e000000 via UDP
             : over connection 0 and foreign port 696
Host 'MARVA' Unknown.

---------

As I said this used to work. Did I do soemthing wrong here?

Thanx in advance,

Benzi Mizrahi,
Computing Center,
Weizmann Institute of Science,
Rehovot, Israel.
Comments: Gated by NETNEWS@AUVM.AMERICAN.EDU