最近、@gmail.com のアドレスを持つ人へのメールがエラー返送されるようになってきた。
メールアドレスの Fromのアドレス名が信頼されていない、というような理由らしい。
前に、何かのブラックリストにIPが登録されてしまった時に、そんなこともあったけれども、今回は該当しない。
よくよく調べてみると、Gmailでは昨年あたりから、
FromのメールアドレスがSPF認証 または DKIM認証 が設定されていないと着信を拒否する仕様になっていたらしい。
そしてこの流れは、Gmailだけでなく、Outlookやプロバイダのメール等でも同様になりつつあるらしい。
ちなみに私は、独自ドメインのメールアドレスを使っているが、SMTPサーバーは接続プロバイダのものを使っている。
なりすましメール対策ということなので、
プロバイダのSMTPサーバーを使うのならばそのプロバイダのドメインのメールアドレスを使うのが普通で、ぜんぜん違うドメインのメールアドレスを使えば「なりすまし」だと判断されることになってしまったらしい。
なので、どうしても独自ドメインのメールアドレスを使いたければ、
そのドメインのDNSサーバーにSPFレコードを設定して、
プロバイダのSMTPサーバーを登録すればよいことになる。
私が使っているプロバイダは NURO光 で、SMTPサーバーは「mail.so-net.ne.jp」を使っているので、これを設定する必要があるけれども、具体的にはどう設定すればよいのか、なかなか分からなくて苦労した。
最初、
「v=spf1 +a:mail.so-net.ne.jp ~all」
というふうに設定してみたら、ダメだった。
「v=spf1 include:so-net.ne.jp ~all」
というふうにも設定してみたけど、ダメだった。
いったいどれが正しい設定方法なのか?
たくさん模索しながら試してみたけれども、どこにも設定情報が見つからない。
結論からいうと、So-netの場合、次の5つを設定に加えてみたら、うまくいった。
おそらくこの中のどれか1つが当たりで、ハズレも含まれているかもしれない。
include:a.spf.so-net.ne.jp
include:b.spf.so-net.ne.jp
include:c.spf.so-net.ne.jp
include:d.spf.so-net.ne.jp
include:a.spf.nuro.jp
私がこれを調べた方法は、Windowsのコマンドプロンプトで、
nslookup -type=txt so-net.ne.jp
と入力したら、
“v=spf1 ip4:202.213.234.0/24 exists:%{i}.spf.so-net.ne.jp include:a.spf.nuro.jp include:spf-bma.mpme.jp include:spf-rmb.mpme.jp include:amazonses.com ~all”
という情報が出てきたので、
「spf.so-net.ne.jp」というキーワードで検索したら、
上記のようなアドレスの設定例が出てきたので、やってみたらうまくいった。
同様に、もう一つのプロバイダメール「smtp.nifty.com」も
nslookup -type=txt nifty.com
と入力したら、
“v=spf1 include:spf-03.nifty.com include:spf-04.nifty.com include:spf.ess.nifcloud.com ip4:116.83.186.110 ip4:118.67.109.25 include:ccmp.nifty.com include:amazonses.com ip4:116.83.188.150 ip4:124.24.59.16 include:spf.hosting.nifcloud.com”
という情報が出てきたので、
最初の2つ
include:spf-03.nifty.com
include:spf-04.nifty.com
を加えてみたら、うまくいった。
将来これが変更・追加された時には対処しなければならいけれども、
とりあえずは、SPFの件は、対処できたと思う。