ユースケースとして Web サーバーとメールサーバーを分けたいと言うのはあると思います(あるよね? その過程で地味にハマったのでメモがてら
🚀 やりたいこと
- Apex ドメインの DNS レコードで次の振り分けを行いたい
- A レコードを GitHub Pages へ
- MX レコードをさくらのレンタルサーバーにあるメールボックスへ
⚗️ ハマったところ
以下のように MX レコードを IP で指定するとメールが受信できないケースがありました 具体的にはさくらのメールボックスや GMail から投げると届くのですが、Wantedly や Meety からの自動配信メールが届かない状態でした 原因は DNS レコードの状態が RFC 1035 に準拠しない事と思われます
ホスト | レコードタイプ | データ |
---|---|---|
lycolia.info | A | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
lycolia.info | MX | 10 163.43.80.45. |
🛠️ 解決方法
A レコードにメール用のサブドメインを追加し、これに IP を設定し、MX レコードからはそのドメインを参照することで上手くいくようになります
サブドメインは mail.
である必要はなく、別になんでもいいみたいです
Web サーバーとメールサーバーが同じなら Apex ドメインでも行けるっぽい
ホスト | レコードタイプ | データ |
---|---|---|
lycolia.info | A | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
mail.lycolia.info | A | 163.43.80.45 |
lycolia.info | MX | 10 mail.lycolia.info. |
📖 参考情報
- ウェブとメールを別々のサーバで運営したい?・・・それ、ゾーン設定で出来ます! | さくらのナレッジ
- IP で指定すると上手く行かない的なことが書いてあります
- ググってたら偶々公式が引っかかったのですが、公式にこういう情報があるとありがてぇですね
- RFC 1035
- MX レコードには 16bit 整数で表現される優先度とドメイン名を定義する事、優先度は低い程優先されるということが書かれています