Article View: comp.mail.sendmail
Article #2638Re: Host search path in subdomain?
From: Eric Allman
Date: Thu, 07 Jan 1993 23:30
Date: Thu, 07 Jan 1993 23:30
69 lines
3553 bytes
3553 bytes
In article <1993Jan6.173047.16456@dde.dk>, fll@dde.dk (Flemming Lau) writes: |> Why does sendmail not like all other nice net-utilities use the res_search() |> routine to resolve a not fully qualified name? |> |> Example: |> |> Our domain is dde.dk |> We have a subdomain bqa.dde.dk |> There is a host Kurt in the dde.dk domain |> I can ping the name Kurt on a host in the bqa.dde.dk subdomain |> I can NOT mail a user on Kurt from the same host. |> |> Sendmail.cf files insist on as they cannot find a CNAME for Kurt to |> define it as Kurt.bqa.dde.dk which does not exist. Whereas ping etc. |> will try Kurt.bqa.dde.dk, Kurt.dde.dk etc. and succeed. |> |> Why is this and what do I do about it? |> |> |> Thanks for any help! The answer to this is unfortunately quite complicated, and it starts with "it depends on what version you are running." I know Berkeley sendmail best, so I'll describe that. My intent was always that sendmail would do appropriate domain searching. In particular, the .cf syntax $[ ... $] was intended to do the searching and replace an abbreviated hostname with a fully qualified hostname. However, I had left Berkeley during the period when DNS was introduced. The entire file domain.c was not written by me, and it introduced some bugs -- notably, a fully qualified domain was replaced => only if the short name referred to a CNAME (canonical name, a.k.a. host alias) <=. Also, the person who put this in apparently assumed that the .cf file would fully qualify the name before declaring it as an SMTP host name (via the $# mailer $@ hostname syntax), and hence turned off RES_DNSRCH when actually opening the mailer connection. The point of all of this was to avoid the possibility of conflicts with top level domains. The most common conflict in university computer science departments was with Czechoslovakia -- or .CS. If you were in a CS Department (e.g., CS.Berkeley.EDU) and you happen to have a host with the same name as something in Czechoslovakia (e.g., vse.CS), then does "vse.CS" mean the one in Czechoslovakia or the local one (vse.CS.Berkeley.EDU)? Because of this, some versions of sendmail have disabled domain searching entirely, even for $[ ... $] syntax. Sendmail release 6 (just released) tries to get around this by searching first the name as given then with the local domain extension. For example, in CS.Berkeley.EDU, the name vse.CS is tried as: vse.CS vse.CS.CS.Berkeley.EDU vse.CS.Berkeley.EDU If you are just talking about using the name "Kurt" from within bqa.dde.dk, you can do this pretty easily -- since all domain names must include at least one dot, you can assume that a name with no dots must be in your subdomain. This doesn't help you if you also have hosts in your superdomain (e.g., Kristin.dde.dk). Sorry this is so long. Unfortunately, the decision to not include an explicit root node in DNS names made it inevitable. eric
Technical Details
Message-ID:
<1iieeuINNa2b@agate.berkeley.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!paladin.american.edu!gatech!usenet.ins.cwru.edu!agate!mastodon.CS.Berkeley.EDU!ericReferences:
<1993Jan6.173047.16456@dde.dk>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!paladin.american.edu!gatech!usenet.ins.cwru.edu!agate!mastodon.CS.Berkeley.EDU!eric From: eric@CS.Berkeley.EDU (Eric Allman) Newsgroups: comp.mail.sendmail Subject: Re: Host search path in subdomain? Date: 7 Jan 1993 23:30:38 GMT Organization: UC Berkeley Mammoth Project Lines: 69 Sender: eric@mastodon.CS.Berkeley.EDU (Eric Allman) Distribution: world Message-ID: <1iieeuINNa2b@agate.berkeley.edu> References: <1993Jan6.173047.16456@dde.dk> Reply-To: eric@CS.Berkeley.EDU NNTP-Posting-Host: mastodon.cs.berkeley.edu