sendmail: from virtual address changed to maindomain

Roberto Nunnari roberto.nunnari at
Sat Mar 15 20:38:05 UTC 2008

Hello Matthew.
Thank you for your reply.

please see my comments below.

Matthew Seaman wrote:
> Roberto Nunnari wrote:
>> yes. here it is.
>> Thank you.
>> Robi.
>> Wojciech Puchar wrote:
>>>> entries in
>>>> FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')
>>>> FEATURE(genericstable, `hash -o /etc/mail/genericstable')
>>>> GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')
>>>> MX hostnames are all A records.
>>>> well, as long as the users receive/send emails from/to external domains
>>>> everything works just fine, but when:
>>>> john at sends to jack at or viceversa
>>>> the message gets to the right user, but the from header is
>>>> changed to john at, mailbox that doesn't exists!
>>> could you please show whole
> I assume that you've commented out all of the MASQUERADE and GENERICS stuff
> as part of your attempt to debug the problem and that you ultimately intend
> to enable those capabilities.

Not sure.. I had masquerading enabled long ago.. but then I took
it out and it was working just fine, because the host is already
in the right domain.. but now that I need to add virtualdomains
I think I may need it.. right?

> Hmmm... not entirely certain, but I believe the part you are missing is:
> FEATURE(limited_masquerade)dnl

Tried that, but doesn't help.. but.. one thing that looks odd
to me is this:
# sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
 > /map generics a
Map named "generics" not found
 > /map virtuser a
map_lookup: virtuser (a) no match (0)

see? it says that it doesn't know about the generics map!

Any more thoughts on this, please?

Best regards.

> This causes sendmail to only apply masquerading to the domains listed in
> class {M} -- ie. what is listed in /etc/mail/generics-domains.  Without
> that sendmail will also masquerade for any host in class {w} which includes
> any contents of /etc/mail/local-host-names,  all the interfaces of your
> server by IP and any names those interfaces resolve into as well.  You
> can see what the resulting lists are on your system by running
>   sendmail -bt
> and then typing $=w or $=M at the prompt.
>     Cheers,
>     Matthew

More information about the freebsd-questions mailing list