ゾーンファイルへのTXTレコード記載方法です。
例として複数のネットワークアドレスを記載する場合は以下です。
example.com. IN TXT "v=spf1 +ip4:1.1.1.0/24 +ip4:2.2.2.0/24 ~all"
単一の送信メールサーバのIPアドレスを記載する場合は
「v=spf1 +ip4:1.1.1.1 ~all」となります。
以前はsendmailのサイトでSPFチェックが出来ました。
また、以下のサイトでSPFチェックが出来るようでした。
全て未精査のリンク先です。
今回はメール受信時にSPFチェックが行われるメールサーバに
メール送信してみてメールのヘッダを見ました。
Yahoo!で取得したメールアドレス宛にメール送信してみました。
Received-SPF: none (sv****.xserver.jp: domain of info@example.com does not designate permitted sender hosts)
Received-SPF: pass (sv****.xserver.jp: domain of info@example.com designates 1.1.1.1 as permitted sender) receiver=sv****.xserver.jp; client-ip=1.1.1.1; envelope-from=info@example.com;
Received-SPF: softfail (sv****.xserver.jp: domain of transitioning info@example.com does not designate 1.1.1.1 as permitted sender) receiver=sv****.xserver.jp; client-ip=1.1.1.1; envelope-from=info@example.com;
また、インターネット側からの値の確認はdigやnslookupコマンドから行えます。
[user@centos ~]# dig txt example.com
;; ANSWER SECTION:
example.com. 86391 IN TXT "v=spf1 +ip4:1.1.1.1 ~all"
C:\Windows>nslookup
> set q=txt
> example.com
example.com text =
"v=spf1 +ip4:1.1.1.1 ~all"
SPF設定をしようと、nslookupでメールサーバのIPアドレスを確認して
Pingを投げて死活確認をしました。
そして軽くSPF設定を終えました。
設定完了後、SPFがPassしないと指摘を受けました。
あれれ??
送信時と受信時で異なるIPアドレスを使っているメールサーバでした。
送信メールのヘッダやファイアウォール機器のNAT設定などをよく見て
設定すべきだったと反省しました。