gmailさんにメールを速やかに受け取ってもらえるようにしたい spf, dkim and dmarc
gmailのアカウント 例えばsomeone@gmail.com(仮名)にメールを出して、受け取ってもらえるようにするには、色々と関門をくぐっていかないといけないのですが、最低限spfとdkimはサポートしなければいけません。がそれだけだと、時々異常にメール配送が遅くなることがあります。その対策です。まず遅延の例ですが、gmailのアカウントにログインして、メールのソースを表示します。
元のメッセージ
メール ID | <vG4X4vDiC5YphjR782rBxAWJNe63sGa4sAs4SYk@ghost.mydns.jp> |
作成日: | 2025年8月23日 15:09(7013 秒後に配信済み) |
From: | 学習の補助をめざす <wordpress@ghost.mydns.jp> PHPMailer 6.9.3 (https://github.com/PHPMailer/PHPMailer) を使用 |
To: | alt.jake.burst@gmail.com |
件名: | 学習の補助をめざす “コメントテスト” |
SPF: | PASS(IP: 222.227.81.244)。詳細 |
DMARC: | ‘FAIL’ 詳細 |
このブログサイトからメールをgmail.comのアカウントに投げたのですが、上記のように7013秒かかっています。分に直すと、116分で、約2時間です。遅すぎますよね。なんでこうなるかと言うと、spfはpassしてますけど、dmarcはfailです。これが問題。実は、spfとdmarcの間に、dkimのチェックが入っていて、それもfailなので、こういう扱いになったわけです。じゃ、全部passさせましょうというのが今回の課題です。MailerはPHPMailerですが、それは遅延の理由ではないようです。spfはDDNS側の設定でpassできます。次はdkimですが、これにはopendkimをインストールせねばなりません。手順は、”サーバーワールド”さんが簡潔でわかりやすいです。
時々参考にさせてもらっています。が、host名等を読み替えるのをうっかりすることが時々あるので、注意しましょう。最終的には”公開鍵”をDNSサーバー(この場合は、www.mydns.jpサイド)にアップロードしなくてはいけません。
最終的には、www.mydns.jp内部でのdomain.infoを設定する必要があります。それを支障がない範囲で引用しておきましょう。id,passwordで”www.mydns.jp”へログインします。

ここの”DOMAIN INFO”をクリック、
Domain*
ghost.mydns.jp
※無料サブドメイン名か、お持ちの独自ドメイン名を入力してください。
MX (FQDN) Priority
ghost.mydns.jp
10
Hostname* Type* Content Target ID
@
TXT
google-site-verification=327eHrjSvj8AgBBaiw9OW_n23DN2477OOPSGEkJdSliPbk
mydns8XXXXX
@
TXT
v=spf1 include:some.domain.ne.jp ~all
mydns8XXXXX
20250824._domainkey
TXT
v=DKIM1; h=sha256; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5tBk1UdaeTuOFW8D7+yZ7XSAakQvaBnrv8nnpnEfjUQB9AHebe7cfWNy2djOWtsoyyFs8IJrKxX6NHSyicrDyl+lmT9sszwwYJU89PB6R0BeOWEHQOUmXhljpfTuwzILI7m3nndGeibcZQ/ewJ5BBvdqNkONkEn5xzc+iFAdNhoKgNelZcKcjOOPS_Junks/J+hkKsyNhUPu5MuzxA9TFLrKKqHlQ0TMna1moDJh/Cs/LC/2REhlbMSQG+Fnpp43fn/luZbEWJDyAkeUVl58c/XbzKgrHsK1UoV6z1LqO0iTCBQnB4Lxi3GcKakA9Cw3PyfS7OfZhr2L5cY3QiPfywMNjQIDAQAB
以下Dmarc関係は略
ざっと説明すると、一番上はMXなので、メール受け取りのためのエントリー。次がSFPですが、プロバイダへ丸投げしてるので、その記述。その次が、Dkimの公開鍵です。これらの設定でgmailへメール投げると、
元のメッセージ
メール ID | <20250902060135.44D5.26AEBDE0@ghost.mydns.jp> |
作成日: | 2025年9月2日 6:10(2 秒後に配信済み) |
From: | nao <nao@ghost.mydns.jp> Becky! ver. 2.81.05 [ja] を使用 |
To: | jake.burst@gmail.com |
件名: | test no smtp auth |
SPF: | PASS(IP: 175.135.252.9)。詳細 |
DKIM: | ‘PASS’(ドメイン: ghost.mydns.jp)詳細 |
DMARC: | ‘PASS’ 詳細 |
ようやく全部(SPF,DKIM,DMARC)パスしました。2秒で配信されいますから、無問題です。
google-site-verification=327eHrjSvj8AgBBaiw9OW_n23DN2477OOPSGEkJdSliPbk
という部分は、“Google Search Console”を使うために、サイトを管理していることを示すためのトークンです。googleさんのsmtpサーバーからメール投げれば問題ないかというとこれもまた大変です。いわゆるsmtpxoauthという認証システムをくぐらないといけないのですが、普通のgmailアカウントで得られるrefresh_tokenの期限が一週間でほぼ使えません。ただしこのtokenを使うと、面倒なsmtpサーバ使わずに、Mail APIからメール出せます。機会があればこの話を書くかもしれません。(あまりにも不毛なので、旧ブログでも書いてません。)
コメント