俺が管理を任されているメールサーバに関する SPFレコードが適切に設定されていないということで、Gmail で正常にメールが受信できないという事案発生。すぐに DNS の zone ファイルに SPF レコードを追加。
設定チェックサイトで、「SPF Record Lookup」を選び状態チェック。「Pass」となったことを確認。
ところが、Postfix で構築したメールサーバでは、
Received-SPF: Permerror (SPF Permanent Error: include has trivial recursion: include:hoge.exsample.jp) identity=mailfrom; client-ip=XXX.XXX.XXX.243; helo=hoge.exsample.jp; envelope-from=root@hoge.exsample.jp; receiver=hoge@exsample.com
というようなエラーが出るという。
include の再帰呼び出しが問題ってか???
ああ、なるほど。SPF レコードが、
hoge 3600 TXT "v=spf1 ip4:XXX.XXX.9.6 ip4:XXX.XXX.XXX.243 include:hoge.exsamople.jp -all"
ってなってる。
hoge.exsamople.jp の SPF レコード内で自分自身のドメイン(hoge.exsamople.jp)の SPF レコードを(結果として再帰的に)include しようとしてるのが問題なのかな?
Google のメールサーバは許してくれるけど、Postfix は許してくれんということか。
hoge 3600 TXT "v=spf1 ip4:XXX.XXX.9.6 ip4:XXX.XXX.XXX.243 -all"
のように、include 記述を消してやった。
他のドメインの記述をそのまま真似て使ってたんで、再帰呼出しになってるとか全然気にしてなかったわ(^^;(そもそも Google じゃOKだったので)