Re: unknown recipient issue
- On 6/1/2010 2:22 PM, Victor Duchovni wrote:
> On Tue, Jun 01, 2010 at 02:09:23PM -0400, Curtis Maurand wrote:I have lots of email addresses that need to be delivered to the dbmail
>> I have in the main.cf
>> relay_domains=< a couple of domains> mysql:/etc/postfix/transport.cf
>> transport_maps = mysql:/etc/postfix/transport.cf
> Don't use the transport table directly as a relay domain table, some day
> you'll need special routing for an external domain, that will become an
> inadvertant relay domain.
lmtp agent. How would you suggest I map those. Currently they go via:
left hand: domain.tld right hand: dbmail-lmtp:127.0.0.1:24
I was editing the table by hand, but it seemed to be easier to do via
the dbmail administrator and the mysql lookup. two domains, I'm simply
filtering mail for and then sending along to their exchange server via
smtp (sort of a postini type service.).
> Also, it is best to avoid mysql, ldap, ... for the transport table andsuch as a regular map file (e.g. hashtable)? That becomes unwieldy and
> relay domain list. These are used by the queue manager (via trivial-rewrite)
> and are performance critical. I recomment indexed files for these, not
> database sources.
unscalable for a large number of domains doesn't it. Isn't that the
reason for using mysql? It does these types of lookups very fast.
There is also the added advantage that I can index that table. I
suppose I could write an interface to a hash table, but not fun.
> You have not defined "relay_recipient_maps".That was the problem. Its now working as advertised.
- Curtis Maurand put forth on 6/1/2010 2:13 PM:
> I was editing the table by hand, but it seemed to be easier to do viaYou need to be using recipient address verification. It was designed
> the dbmail administrator and the mysql lookup. two domains, I'm simply
> filtering mail for and then sending along to their exchange server via
> smtp (sort of a postini type service.).
specifically for this scenario. It is realtime and fully automatic, using
SMTP queries to downstream servers to determine valid users. Set it up once
and you're done. No databases to maintain.
As an example, Nortel Networks uses this technique (although with qpsmtpd, not
Postfix, IIRC) to route mail through a few smtp gateways to hundreds of
internal domains and over 50k+ users worldwide. They have divisions using MS
Active Directory and Exchange, some using Novell eDirectory and Groupwise,
some using Lotus Notes, others using ??. The sheer magnitude of attempting to
tie all of these disparate systems together just to identify valid recipients
would have cost multiple millions and would have never worked correctly due to
directory synchronization issues.
SMTP based recipient address verification was(is) the simple, elegant
solution, as all of these disparate mail platforms have SMTP in common, and
SMTP has a mechanism for recipient address verification. In essence this
solution is "free" of cost and complexity, and works extremely well.
It's really the only way to fly: