Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!bloom-beacon!apple!bionet!agate!helios.ee.lbl.gov!lll-tis!mcb From: mcb@tis.llnl.gov (Michael C. Berch) Newsgroups: comp.mail.sendmail Subject: Sendmail/resolver problem Message-ID: <22426@tis.llnl.gov> Date: 13 Oct 88 21:47:44 GMT Reply-To: mcb@tis.llnl.gov (Michael C. Berch) Organization: Lawrence Livermore National Laboratory, Livermore CA Lines: 50 The discussion of sendmail/resolver interaction and rooted vs. non-rooted lookups prompts me to post in search of a solution -- or at least a pointer in the right direction -- to our sendmail/resolver problem. I'm pretty sure it can be fixed in sendmail.cf (possibly by the method mentioned of adding a "." to indicate a rooted domain name), or perhaps elsewhere in the resolver/server area. The problem is that we are unable to send mail *locally* among our machines when the sending machine is unable to communicate with either the second-level name server above it, or with the Internet (i.e., the root servers). Presumably this should not occur. Assume our two machines are a.foo.bar.gov and b.foo.bar.gov, and someone on "a" sends to "user@b". Our sendmail.cf canonicalizes "b" by appending the default domain name, "foo.bar.gov", and the host "b.foo.bar.gov" is sent to the resolver. When sendmail goes out to the server, the query actually is res_mkquery(b.foo.bar.gov.foo.bar.gov) [other args omitted] i.e., it appends the default domain name *again*. This query is answered NXDOMAIN, and it drops the least-significant-part of the appended domain and tries again: res_mkquery(b.foo.bar.gov.bar.gov) If no server for bar.gov is reachable, the query fails and the mail is requeued with "Name Server Failure for host b.foo.bar.gov". If the bar.gov NS is reachable, the query is answered NXDOMAIN, and it tries again: res_mkquery(b.foo.bar.gov.gov) which requires a root server, and if we can't reach the Internet, then it fails as above and is undeliverable. The sendmail binary involved is denoted "SMI 4.0" and is the one mentioned by Casey Leedom and Bill Nowicki in the discussion of Sun mx-sendmail's on NAMEDROPPERS recently. I don't personally have the source but presumably we have access to it here. What I would like to do is have sendmail not need to loop local queries through the root at all. I'm sure it shouldn't have to. The two alternatives seem to be 1) DON'T canonicalize local names in the sendmail.cf before they are resolved, allowing the resolver query-builder to tack the default domain on itself, or 2) make sure that all names, including local names, are rooted names so that the local server will give a quick, authoritative answer on the first try. Michael C. Berch mcb@tis.llnl.gov / uunet!tis.llnl.gov!mcb / ames!lll-tis!mcb