From: rickert@mp.cs.niu.edu (Neil Rickert)
Subject: Re: sendmail+IDA host hiding question
Organization: Northern Illinois University
Date: Tue, 17 Nov 1992 13:54:59 GMT

In article <1ea29rINN7ll@plts.uucp> tal@plts.uucp (Tom Limoncelli) writes:
>I just want to hide the names of all my hosts.  I think I'm setting up
>reverse name-hiding correctly, but it's not working.  I want all mail
>to come from my.do.main no matter what machine it was actually sent to,
>and be delieved at my.do.main nomatter when in *.my.do.main it was
>addressed to.

I believe the domain hiding is working properly.

>               I want mail sent to {any node}.my.do.main to be routed
>to mailhub.my.do.main and delivered on that machine.

This is the part which is not working.  Delivery processing is handled
by a different mechanism from hiding.  The intention is that you might
really want to deliver on a variety of machines under control of aliases,
so to allow the aliasing to do this the hiding must not touch the
delivery envelope.

>Hosts are:
>
>mailhub.my.do.main
>node1.my.do.main
>node2.my.do.main
>node3.my.do.main
>node4.my.do.main
>[ actually, there are about 125 hosts, but you get the point.  There
>is only one mailhub. ]

I recommend that you add a MAILERTABLE to your setup, and insert in that
table the single entry:

	value			key

LOCAL!localhost			.my.do.main

This will cause any mail for 'anyhost.my.do.main' to be delivered by
the local mailer.  There are other ways to do this which don't require
a MAILERTABLE, but in practice the mailertable approach is the simplest
to use.

>We're behind a firewall, but we can get directly to anything in do.main
>(which includes my.do.main corportate.do.main research.do.main, etc.)
>and "other.do.main".
>
>So, when I put sendmail into test mode "-bt" and give it:
>"3,0 foo@node1.my.do.main"
>it tells me that it's going to send it to foo @ node1 . my . do . main

Test mode can be confusing.  The MX lookup is not seen in the output,
since the lookup would occur later in the processing.  On any system
other than mailhub, this mailer/host selection would actually result in
the MX record being followed and the mail delivered to mailhub.  On
mailhub, however, sendmail will notice that the MX points to itself,
and refuse to follow it, so will follow the A-record instead.

>At first I thought that sendmail was ignoring the MX records.  Then I
>realized that what's happening is even worse than ignoring them.
>
>The MX record isn't saying "deliver to mailhub", it is saying, "mailhub
>knows how to get the message to node1".  So, sendmail figures, "yes I
>do know how to get to node1, I send it via TCP!" and doing just that.

I don't see this as "worse than ignoring" the MX.  It just happens to
be inappropriate for your application.  As you surmise, the MX record
just says that mailhub knows how to handle the message.  It requires
separate configuration action to specify to mailhub how the message
should be handled.  In the absence of special instructions its default
is to do whatever it can - in this case follow the A-record with the
TCP mailer.

>What I need is for sendmail to notice that it can treat mail for node1
>as if it is for mailhub.

That is what the MAILERTABLE entry above will do for you.

>How do I do this?

>Who ever explains this to me gets a free lock of hair.  I've been
>pulling so much out of my head over this I have tons to give away!

Thanks, but no thanks.

Newsgroups: comp.mail.sendmail