okay, well your fix only appears to be working because it causes the check in the exim config to fail. And when it fails, it defaults to the $primary_hostname exim variable which is the same as what you would get if you checked your /etc/hostname file.
Here is a link to the relevant line in the exim config:
Hmm, that doesn’t tell me much. Your solution works. So I’m glad you’re able to keep sending, but there’s a better solution to this problem somewhere. I’ll look into it and get back to you later.
I wouldn’t revert the changes until you have another fix. Like I said, your fix is working, but only because it breaks the exim check and falls back to the default hostname. Which isn’t necessarily a bad thing. As long as you only send mail from 1 ip address, it’s not really a big deal.
Does your hostname in /etc/hostname match what you had for the second part of the ip:mail.domain.com pair?
Hi,
For the purpose of negotiation with MTA, the hostname is not relevant. You could insert a different ip:email.com, where the hostname can be hostname.com. After the protocol is exchanged and negotiation is complete, the information ip:email.com is inserted in the header of an email. At this time, the email.com is checked before accepting the dta and filtered through ACLs of exim4.conf.
You cannot have a LAN IP in there for a negotiation of this service with a remote server outside of the LAN. Here, it will simply bind the service to relay or connect to LAN ips.
Consequently, you get a time-out.
Insert the IP of the server and then use the domain that you have a rDNS for. So it will look like:
123.456.123.567:rDNS.com
Then, Google will begin an exchange. Mind you, you also need to setup DMARC/SPF/DKIM for a successful transmission with most remote MTA as they do check these things.
Now if you use Cloudflare, let me know. Then things should be explained a bit different.
Thanks for reply.
10.10.10.10 was an example for the post, I have a real external IP there.
And it works at the moment, I will monitor it tomorrow under the load.
And yes, DMARC/SPF/DKIM are exist and working.
I see. So you did not have a LAN IP in there and substituted for privacy. Then, the problem is somewhere else because this HELO setting is fine. I use it like this and my server have no problems with Google transmissions.
Only once I had a problem of a similar nature. My shell scripts to do mass change of IPs in Cloudflare through their API masked the port. Then, I had a similar problem. But it does not look like you use their service. So trace it somewhere else.
I had a problem with one server sending to gmail when the ip:domain.com didn’t match my actual server hostname.
Also maybe check the PTR record for that IP address.
dig x domain.com
And also maybe check if you’re behind a proxy like cloudflare which may be changing your apparent public IP.
[I’ve started turning off cloudflare for any mail domains. It seems to break things far more than it should.]
IP:mail.domain.com
where mail.domain.com == rDNS.com
At the time of negotiation, it will invoke the domain “mail.domain.com” for the exchange of data. Thus, before it has to resolve the rDNS. Following this, your rDNS should be setup mail.domain.com.
I believe that this could be your problem. If you have domain.com, it will not transmit the data, give a connection time out because the MTA waits for the mail.domain.com to respond.