我有一个快速的问题。 发送到具有主服务器的子域的电子邮件地址时,如何设置postfix以将电子邮件发送到其他服务器(Exchange Server)。 例如,说我们的主服务器是mail.example.com,我们有一个Exchange服务器设置来接收来自exchange.example.com的电子邮件。 我们在DNS中设置了MXlogging,如果我们从GMail帐户发送,它会正确接收。 但是,当我们尝试从@ example.com帐户发送电子邮件时,出现以下错误:
Host or domain name not found. Name service error for name=exchange.example.com type=A: Host not found
我相信Postfix首先检查本地邮箱,如果它的设置与它交付给本地帐户的域,但在这种情况下,子域帐户位于另一台服务器。 任何人都有什么想法,我需要在Postfix中做什么,所以它不看Exchange.example.com邮箱本地?
我在Postfix中发现了relay_domains指令,但是当我添加子域时似乎没有解决这个问题。
谢谢你的帮助。
似乎你正在尝试设置一个SMTP网关,而不想将Exchange Server暴露给“外部”networking,对吧? 因为通常我只是为该域设置合适的MXlogging。
根据devise,Postfix将不会接受外国邮件,但如果不可能,postfix将不会成为后缀。 它只是要求你做更多的工作,例如,告诉后缀哪些电子邮件地址是有效的(它不能自己确定一个子域本身)。 这是很好的解释在这里: http : //www.knowplace.org/pages/howtos/smtp_gateway_for_multiple_domains_with_postfix.php
该错误似乎表明exchange.example.com不存在于DNS中。 为了让后缀find交换服务器,它必须能够将exchange.example.com域名parsing为一个IP地址,以便知道去哪里路由它。
中继域确实是一个正确的参数,但并不是所有你需要做的。
运行postconf parent_domain_matches_subdomains并检查relay_domains是否存在; 如果是,请将该行添加到main.cf中,并从列表中删除relay_domains(或者完全取消选项,但要确保理解后果)。