我们有一台运行sendmail的
linux服务器通过我们的主邮件服务器中继电子邮件,但自上周DNS服务器更改以来,它已经超时连接到我们的邮件服务器.经过进一步调查,/ var / log / maillog显示如下行,包括邮件服务器的IP地址不正确:
Apr 4 15:37:32 yip sendmail[20583]: p34JVgLE020540: to=<user@domain.tld>,ctladdr=<root@host.domain.tld> (0/0),delay=00:05:50,xdelay=00:02:00,mailer=esmtp,pri=258071,relay=mailserver.domain.tld. [xxx.xxx.xxx.xxx],dsn=4.0.0,stat=Deferred: Connection timed out with mailserver.domain.tld.
现在,我们上周通过编辑/etc/resolv.conf更新了linux服务器的DNS服务器以及迁移.在linux服务器上运行dig mailserver.domain.tld,host mailserver.domain.tld或nslookup mailserver.domain.tld会导致返回正确的IP地址. sendmail在哪里可以获取/缓存不正确的IP地址,我该如何解决该问题?
解决方法
>重启sendmail.
>重新启动nscd(如果它在系统上使用).
>重新启动nscd(如果它在系统上使用).
还要确保您拥有正确的MX record entries. Sendmail依赖于MX查找.
尝试挖掘mx domain.tld,看看是否会产生正确的主机.如果没有,您可以使用通常位于/ etc / mail /中的mailertable文件强制sendmail传递发往特定域的邮件.
典型的mailertable条目如下所示:
xxx.com esmtp:[192.168.1.2]
其中“xxx.com”是域,并且明确说明了交付的IP.