Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 23 |
Nodes: | 6 (0 / 6) |
Uptime: | 54:46:26 |
Calls: | 583 |
Files: | 1,139 |
D/L today: |
179 files (27,921K bytes) |
Messages: | 111,802 |
I have 2 domains: domain.a and domain.b
For some strange reason (and this is rather new behavior), a mail sent to user@domain.b shows up in my email client as user@domain.a
Those are not in DNS.
Most likely you changed DNS entries (CNAME?)
but we can't check that.
Read about host name canonification in the docs,
e.g., TUNING and cf/README.
Most likely you changed DNS entries (CNAME?)
but we can't check that.
Read about host name canonification in the docs,
e.g., TUNING and cf/README.
FEATURE(`nocanonify', `canonify_hosts')
Is there any way to find out?
Is there any way to find out?
You would have to find out what changed in any relevant configuration
(DNS, cf, all files/maps used by cf, OS, ...)
You would have to find out what changed in any relevant configuration (DNS, cf, all files/maps used by cf, OS, ...)
Given that Helmut also mentioned "the new DKIM key", I'd like to add
"all your milter'ed extensions" to this list explicitly.
What changed over the years were the sendmail binaries by updating its package
What changed over the years were the sendmail binaries by updating
its package via dnf.
You have to tell us more about the OS you are using.I am using Fedora 42 Server.
Sendmail also offers ways to show its compile-time options.
sendmail -d0.13
So you don't compile sendmail yourself, but rely on someone else -
who might change compile time options, apply patches, ...
Maybe there's a changelog for that (or you can compare
the source packages + modifications)?
in a DC's VXLAN. And the domains are set in the sendmail.mc:
https://evermeet.cx/paste/sendmail_mc.6hKd.txt
(available until 2025-09-04 19:26:03 UTC)
Just a thought, this is the sendmail.mc, what about submit.mc as used by
the Mail Submission Program (MSP)?
In my notes I have noted it was there with version 8.12 of sendmail and
is used with options -Ac, -bm, -bs, bt, and -t.
Also I thought that the submit.mc had nothing to do with receiving
external email.
why.)Possibly the full command used option `-Am` to specify use of
Coming back to your findings:FEATURE(`nocanonify', `canonify_hosts')
Adding FEATURE(`nocanonify', `canonify_hosts') or
FEATURE(`nocanonify') fixes the issue. The "To" field is no longer rewritten.
I still do not understand why this feature is now necessary, when it has been working without it for over 15 years. It makes me rather nervous.
Is there any way to find out?
But I found something that could explain it, as I mentioned in another reply, but I haven't received an answer yet:The language is quite something, and I don't confess to being conversant
I checked the Fedora source package and I found one patch for sendmail 8.18.1
that added localhost.localdomain to something, even though I don't know
what the
rules mean. I don't speak sendmail macros:
https://src.fedoraproject.org/rpms/sendmail/blob/f42/f/sendmail-8.18.1- localdomain.patch
The language is quite something, and I don't confess to being conversant
with it. That patch is simply a re-wrapping [1] of a previous patch
from 2007, the blame log finds the original patch [2] so I doubt that is
the change your looking for.
1.
https://src.fedoraproject.org/rpms/sendmail/ c/26448b1eab9386c76266ced5b1b71a765fe6d6d2?branch=f42
2.
https://src.fedoraproject.org/rpms/sendmail/ c/2174409589dee7e371b97edc650688c6eea6f4f6
So, if I send a mail to the ca domain, I receive an email with the cx domain in
the to field.
Send mail from where and how?
If you send mail from your "localhost.localdomain" host
then the Fedora patch seems to "canonify" it.
BTW:
! Conf file: /etc/mail/submit.cf (selected)
^^^^^^^^^
! (canonical domain name) $j = localhost.localdomain
! I am not sure why sendmail uses the localhost.localdomain domain name:
because your system doesn't have a FQHN:
! [***@atvie01s 0 ~]# hostname -f
! atvie01s
Does the problem happen when you receive mail from external hosts?
BTW: why do you set
MASQUERADE_DOMAIN()
but no
MASQUERADE_AS()
?