web-dev-qa-db-ja.com

MXレコードを解決しないPostfix

ログ

to=<[email protected]>, relay=none, delay=21311, delays=21301/0.04/10/0, dsn=4.4.3, status=deferred (Host or domain name not found. Name service error for name=localdomain type=MX: Host not found

OS:FreeBSD

Postfixクライアントで次のコマンドを実行すると、解決します。 mail.p.example.comはpostfixサーバーをホストし、メールをgmail smtpにリレーします。

Host -t MX p.example.com
p.example.com mail is handled by 10 Host.p.example.com.

私は自分のPostfix構成を別のホストで動作している構成と比較し、それらは同じです。

inet_protocols = ipv4
mynetworks_style = Host
inet_interfaces = loopback-only
relayhost = $mydomain

上に貼り付けたものよりも構成には多くありますが、dnsに関連するものはありません。 smtp_Host_lookupが設定されていません(デフォルト値= dns)。

/ var/spool/postfixの下にresolv.confファイルがありません。 postfixがDNSレコードを解決する方法についての指示があれば幸いです。

3
pdna

hostname -fは、ホストでFQDNを解決していなかったため、問題が発生していました。ショートネームに解決する唯一の方法です。 Postfixクライアントが動作しているホストでは、FQDNへの解決

ホスト名はすでに/etc/rc.conf.d/hostnameに設定されています。ホスト名サービスを再起動する必要がありました。誰かが構成管理ツールを使用する代わりにコマンドを実行して手動でホスト名/ドメイン名を設定したと思います。

0
pdna

ああ、今問題は明白です:

relayhost = $mydomain

すべてのメールをlocaldomainに設定されている$mydomainに配信するようにPostfixを設定しました。

説明では、メールをGmailにリレーするつもりだったので、relayhostappropriate Googleホスト名に設定する必要があります。例:

 relayhost = [smtp-relay.gmail.com]:25

または

 relayhost = [smtp-relay.gmail.com]:587

sMTP認証を使用している場合、smtp_sasl_password_mapsはGmailの認証情報を含むファイルを指す必要があります。

2
Michael Hampton