CentOS 6.2 sendmail:如何控制中继邮件到mx.google.com时使用的IP号码

整体上下文是,我通过另一台机器上的sendmail将邮件从一台机器上的Web应用程序发送到mx.google.com上的pop账户的最终目标。 后面的sendmail机器有两个ip号码,因为它兼作数据库服务器。 收到消息后,当我查看标题时,ip号码引用是错误的ip号码。 这个数字不是随机的。 它是数据库服务器的IP号码(即同一台物理机器)。

这是症状。 我的Eudora电子邮件客户端报告此标题:收到来自good.mydomain.com(bad.mydomain.com。[xxx10])由mx.google.com与ESMTPS id …

“good.mydomain.com”这个短语是正确的,似乎来源于/etc/mail/sendmail.mc中的confDOMAIN_NAME行。 “bad.mydomain.com”是xxx10的rdns。 我希望那是已经build立并正在运行的,具有RDNS的xxx66到good.mydomain.com。 这使用公共DNS,没有特别的etc / hosts条目。

我在/etc/mail/sendmail.mc里面有这样的一行,它似乎是将接收端的东西绑定到所需的.66号码上:DAEMON_OPTIONS(`Port = smtp,Addr = xxxx66,Name = MTA')dnl

我知道我的xxx10 ip号码在网卡上是“第一”的,我真的不想改变它。 我只是想让Sendmail保持到.mx.google.com的中继号码.66。

不用担心打开中继,防火墙已设置,只接受来自我的Web服务器机器的连接。

我知道我必须在每次更改macros后运行make,而且我也必须重新启动sendmail服务。

感谢您考虑我的问题。

您在正确的path上,但是您需要使用CLIENT_OPTIONSconfiguration源IP sendmail用于出站邮件。

CLIENT_OPTIONS(`Family = inet,Address = xxx66')

在'make'之后(如果你重新启动sendmail服务,它应该在Centos上自动发生),sendmail.cf文件应该包含一个对应的ClientPortOptions参数。