pixivにメールアドレスを「使用できません」と弾かれていたのが解決した話
- pixivにメールアドレスを「使用できません」と弾かれていた
- MXレコードを設定していないせいだった
- 規格では設定しなくて良いらしい
- 独自のバリデーションには気をつけよう
背景
私はメールサーバを独自に運用している. そのメールアドレスがpixivで使えないトラブルがあった. どうでもいいやと放置していたけれど, 丁度pixivのidが変更出来るようになった. その機会にtwitterで愚痴ったら, pixivのエンジニアから返答を頂いた.
そう言えばpixivのメールアドレス「このメールアドレスは使用できません」ってなってずっと死んでるメールアドレスにしたままなんだよな…
— エヌユル (@ncaq) 2016年10月17日
@ncaq https://t.co/xdpeG2Qvy3 でMXレコードが引けないからですね… https://t.co/xZfl5RnLRT は大丈夫
— うさみけんた (@tadsan) 2016年10月17日
わぁいDNS たっどさんcheckdnsrrだいすき https://t.co/mjZMMpGlIS
— うさみけんた (@tadsan) 2016年10月17日
やっぱりMXがなくてもAレコードがあれば送るべきなんだよなあ / >MX RRs or address (i.e., A or AAAA) RRs / “rfc5321.txt” https://t.co/5ckrl88KVl
— エヌユル (@ncaq) 2016年10月17日
MXレコードがあったほうがメールホストとしては行儀が良いのかもしれないけれど,MXレコードがないからと言ってSMTP繋げないのも行儀が悪いよね
— エヌユル (@ncaq) 2016年10月17日
迅速に教えてくれたpixivさんには感謝しますが…
参考
規格によると
空の MX リストが返された場合、そのアドレスはそのホストを指す優先度 0 の暗黙的 MX RR に対応するものとして扱われる。
"暗黙的 MX(implicit MX)" の規則は、MX レコードがまったくない場合にのみ適用される。
そのドメイン名は(問い合わせられたとき)メッセージが向けられるべき SMTP サーバーの IP アドレスを与えるアドレスレコード(例えば A RR、または AAAA RR)を、少なくともひとつ返さなければならない(MUST)。
SMTP的には私のメールサーバとDNSの設定には問題がないようだが, pixivではPHP: checkdnsrr - Manualを使って独自にメールサーバをバリデーションしているようだ.
MXレコードというものはメールサーバアドレスの転送のためにあるのであって, 最初から最終受け取り地点のメールサーバに設置するのは筋が悪い.
しかし, 規格に違反してMXレコードを要求するシステムは現存する. MXレコードを設定することにはデメリットは特にない. 互換性のために設定しておくべきだろう.