From: Oleksii Krykun on
I have two virtual domains, e.g. domain1 and domain2
And I have user1(a)domain1, user2(a)domain1 and user3(a)domain2, user4(a)domain2.
Now I need to receive all mail to user1(a)domain2 into user1(a)domain1 mailbox,
user2(a)domain2 ->user2(a)domain1
and
user3(a)domain1->user3(a)domain2, user4(a)domain1->user4(a)domain2.

I set up two domain aliases:
@domain1 @domain2
and
@domain2 @domain1

All works fine. But if I send message to non-existent mailbox (e.g.
user5(a)domain1) I receive true NDR but get following warning:

Mar 16 10:43:07 mail postfix/cleanup[28954]: warning: F41F4B82A:
unreasonable virtual_alias_maps map nesting for user5(a)domain1.

Is this a serious problem? How to resolve it?

Thanks,
Oleksii
From: Ansgar Wiechers on
On 2010-03-16 Oleksii Krykun wrote:
> I have two virtual domains, e.g. domain1 and domain2
> And I have user1(a)domain1, user2(a)domain1 and user3(a)domain2, user4(a)domain2.
> Now I need to receive all mail to user1(a)domain2 into user1(a)domain1 mailbox,
> user2(a)domain2 ->user2(a)domain1
> and
> user3(a)domain1->user3(a)domain2, user4(a)domain1->user4(a)domain2.
>
> I set up two domain aliases:
> @domain1 @domain2
> and
> @domain2 @domain1

This makes you a backscatterer, because Postfix will accept all mail for
both domain1 and domain2 and create bounces if both local delivery and
forwarding to the other domain fails.

Don't do that. Ever.

> All works fine. But if I send message to non-existent mailbox (e.g.
> user5(a)domain1) I receive true NDR but get following warning:
>
> Mar 16 10:43:07 mail postfix/cleanup[28954]: warning: F41F4B82A:
> unreasonable virtual_alias_maps map nesting for user5(a)domain1.
>
> Is this a serious problem?

Yes.

> How to resolve it?

Make the virtual aliases explicit.

----8<----
user1(a)domain2 user1(a)domain1
user2(a)domain2 user2(a)domain1
user3(a)domain1 user3(a)domain2
user4(a)domain1 user4(a)domain2
---->8----

And make sure the mailboxes do exist.

Regards
Ansgar Wiechers
--
"Abstractions save us time working, but they don't save us time learning."
--Joel Spolsky

From: Oleksii Krykun on
2010/3/16 Ansgar Wiechers <lists(a)planetcobalt.net>
>
> On 2010-03-16 Oleksii Krykun wrote:
> > I have two virtual domains, e.g. domain1 and domain2
> > And I have user1(a)domain1, user2(a)domain1 and user3(a)domain2, user4(a)domain2.
> > Now I need to receive all mail to user1(a)domain2 into user1(a)domain1 mailbox,
> > user2(a)domain2 ->user2(a)domain1
> > and
> > user3(a)domain1->user3(a)domain2, user4(a)domain1->user4(a)domain2.
> >
> > I set up two domain aliases:
> > @domain1 @domain2
> > and
> > @domain2 @domain1
>
> This makes you a backscatterer, because Postfix will accept all mail for
> both domain1 and domain2 and create bounces if both local delivery and
> forwarding to the other domain fails.

I don't see any difference between one or two domains here. For one
domain if local delivery fails Postfix will create bounces too.

>
> Don't do that. Ever.
>
> > All works fine. But if I send message to non-existent mailbox (e.g.
> > user5(a)domain1) I receive true NDR but get following warning:
> >
> > Mar 16 10:43:07 mail postfix/cleanup[28954]: warning: F41F4B82A:
> > unreasonable virtual_alias_maps map nesting for user5(a)domain1.
> >
> > Is this a serious problem?
>
> Yes.

Why?

>
> > How to resolve it?
>
> Make the virtual aliases explicit.
>
> ----8<----
> user1(a)domain2 user1(a)domain1
> user2(a)domain2 user2(a)domain1
> user3(a)domain1 user3(a)domain2
> user4(a)domain1 user4(a)domain2
> ---->8----
>

I have more than 4 mailboxes. :-)
Does another solution exist?

> And make sure the mailboxes do exist.
>

From: Noel Jones on
On 3/16/2010 6:48 AM, Oleksii Krykun wrote:
> 2010/3/16 Ansgar Wiechers<lists(a)planetcobalt.net>
>>> All works fine. But if I send message to non-existent mailbox (e.g.
>>> user5(a)domain1) I receive true NDR but get following warning:
>>>
>>> Mar 16 10:43:07 mail postfix/cleanup[28954]: warning: F41F4B82A:
>>> unreasonable virtual_alias_maps map nesting for user5(a)domain1.
>>>
>>> Is this a serious problem?
>>
>> Yes.
>
> Why?
>
>>
>>> How to resolve it?
>>
>> Make the virtual aliases explicit.
>>
>> ----8<----
>> user1(a)domain2 user1(a)domain1
>> user2(a)domain2 user2(a)domain1
>> user3(a)domain1 user3(a)domain2
>> user4(a)domain1 user4(a)domain2
>> ---->8----

Yes, this is the correct solution.

>>
>
> I have more than 4 mailboxes. :-)
> Does another solution exist?

Use your scripting skills to create the list. The number of
entries in the list is largely irrelevant for performance.
BDB hash tables scale well to a few million entries, although
rebuilding can take a while. If that's not good enough, use
cdb up to OS file size limits.

-- Noel Jones

From: Oleksii Krykun on
2010/3/16 Noel Jones <njones(a)megan.vbhcs.org>:
> On 3/16/2010 6:48 AM, Oleksii Krykun wrote:
>>
>> 2010/3/16 Ansgar Wiechers<lists(a)planetcobalt.net>
>>>>
>>>> All works fine. But if I send message to non-existent mailbox (e.g.
>>>> user5(a)domain1) I receive true NDR but get following warning:
>>>>
>>>> Mar 16 10:43:07 mail postfix/cleanup[28954]: warning: F41F4B82A:
>>>> unreasonable virtual_alias_maps map nesting for user5(a)domain1.
>>>>
>>>> Is this a serious problem?
>>>
>>> Yes.
>>
>> Why?
>>
>>>
>>>> How to resolve it?
>>>
>>> Make the virtual aliases explicit.
>>>
>>> ----8<----
>>> user1(a)domain2 user1(a)domain1
>>> user2(a)domain2 user2(a)domain1
>>> user3(a)domain1 user3(a)domain2
>>> user4(a)domain1 user4(a)domain2
>>> ---->8----
>
> Yes, this is the correct solution.

In future both domain users will migrate to one of them.
I think to use explicit aliasing in one direction and global aliasing
in another.
Is it bad?

>
>>>
>>
>> I have more than 4 mailboxes. :-)
>> Does another solution exist?
>
> Use your scripting skills to create the list.  The number of entries in the
> list is largely irrelevant for performance. BDB hash tables scale well to a
> few million entries, although rebuilding can take a while.  If that's not
> good enough, use cdb up to OS file size limits.
>
>  -- Noel Jones
>