電子書籍の厳選無料作品が豊富!

SPFレコードの書き方について教えてください。

現在サーバ環境に2台のMTPサーバがあります。
以下の通りです。

【DMZ】
 DNSサーバ&外部SMTPサーバ(外部からのメール受信&内部SMTPサーバへの転送)

【LAN】
 内部SMTPサーバ(外部SMTPサーバからの転送を受信(SMTP)&POPサーバ&内部からの外部へのメール送信)

DNSサーバのゾーンファイルに書かれる
MXレコードというのは外部(インターネット)からのメールサーバの問い合わせに対して
返すレコードかと思っております。
なので、外部SMTPサーバになると思っております。
もし間違っていたら指摘ください。

例)
IN  MX  10 (サーバ名)

外部へ送信するサーバは上記の通り、LAN内にある別の内部SMTPサーバです。

その場合は、MXレコードの下にどのように書けば良いのでしょうか?

IN TXT "v=spf1 +mx ~all"

という書き方は使用できるのでしょうか?

それとも

IN TXT "v=spf1 +ip4: (内部SMTPサーバのローカルアドレス) ~all"

というような書き方をするのでしょうか?

それともこのようなケースでは使用出来ないのでしょうか?

よろしくお願い致します。

 

A 回答 (1件)

SPFレコードはそのドメインのメールを送信するサーバを示すものなので


(もちろんグローバルIPアドレス)

>外部へ送信するサーバは上記の通り、LAN内にある別の内部SMTPサーバです。

であれば、
この内部SMTPサーバが外部に出るときに使用するグローバルIPアドレスになるので

IN TXT "v=spf1 +ip4: (内部SMTPサーバが外部に出るときに使用するグローバルIPアドレス) ~all"

になります。

>IN TXT "v=spf1 +ip4: (内部SMTPサーバのローカルアドレス) ~all"

ローカルアドレスというのはプライベートIPアドレスを言っていると思いますので、これはありえません。

>IN TXT "v=spf1 +mx ~all"

「内部SMTPサーバが外部に出るときに使用するグローバルIPアドレス」がMXで示されたホストのIPアドレスと同じであるのならば、
このようも書けますが、質問者さんの環境では同じにはならないと思われます。


注意しなければならないのは、外部が直接メールを外部送信する場合もあると思います。
例えばエラーメールなどです。
送信するサーバは全部書いていないと問題になるので、

IN TXT "v=spf1 +ip4:xxx.xxx.xxx.xxx +ip4:yyy.yyy.yyy.yyy ~all"

xxx.xxx.xxx.xxx 内部SMTPサーバが外部に出るときに使用するグローバルIPアドレス
yyy.yyy.yyy.yyy 外部SMTPサーバのグローバルIPアドレス

のようにリストアップする必要があります。

「内部SMTPサーバが外部に出るときに使用するグローバルIPアドレス」がラウンドロビンで複数あるような場合はもちろん全部リストアップが必要です。

同一サブネット全体
xxx.xxx.xxx.xxx/29
の指定のほうが良い場合もあるでしょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!