「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

SPFレコード

pointこの用語のポイント

pointゾーンファイルの中身だよ

pointコメント行だよ

point送信元メールサーバの情報が書かれているよ

スポンサーリンク

簡単に書くよ

SPFレコード(読:エスピーエフレコード 英:SPF record)とは

「このメールアドレス(メールの世界の宛先情報)のメールは、このメールサーバ(メールに関する機能を提供してくれるコンピュータ)から送られま~す」とあらかじめ宣言しておくことでメールの送信元をチェックできるようにする仕組み(SPF)で使うデータ
であり

DNSサーバさん(IPアドレスとドメイン名の対応を管理するのが仕事のコンピュータ)のお仕事用資料(ゾーンファイル)に書かれた「このメールアドレスのメールは、このメールサーバから送られま~す」な情報のこと
です。
もう少し具体的に書くと

自分の管理している情報を教えてあげるのが仕事のDNSサーバさん(権威DNSサーバ)がお仕事で使うネタ帳(ゾーンファイル)の中身
であり

実際にはただのコメント行(TXTレコード)なんだけど、特別な書き方をすることで「このメールアドレスのメールは、このメールサーバから送られま~す」な情報を表現したもの
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「SPF」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

SPFは「メール送信元をチェックする仕組み(のひとつ)」です。

メールを受け取ったメールサーバさんは、送信元メールアドレスドメイン(メールアドレスの「@」より後ろの部分)の情報を管理しているDNSサーバさんに「このメールアドレスのメールって、どこから送られてくるはず?」と問い合わせをします。

SPFレコード

それに対してDNSサーバさんは、お仕事用の資料ゾーンファイルを見て「あー、そのメールアドレスのメールは○○メールサーバから送られてくるはずだよ」とお返事します。

SPFレコード2

メールサーバさんは、その情報をもとにして、受け取ったメールの送信元が○○メールサーバかチェックします。
メールの送信元が○○メールサーバじゃなかったら「なんかおかしいな。なりすましか?」と判断するわけです。

SPFレコード3

かなり大雑把な説明ですが、これがSPFの仕組みです。
もう少し細かい内容が知りたい人は、用語「SPF」の説明を ご覧ください。

SPFレコード4

あと

DNSサーバ
権威DNSサーバDNSコンテンツサーバ
ゾーンファイル


が何か分からない方は、できれば先に勉強してきてください。
特にゾーンファイルが何か分からないと、ここから先の話についていくのは難しいです。

SPFレコード5

以上を踏まえて、本題に入ります。

SPFの仕組みにおいて、DNSサーバさんはゾーンファイルを見て「そのメールアドレスのメールは○○メールサーバから送られてくるはずだよ」とお返事しました。

SPFレコード6

この話において、DNSサーバさんが見た

ゾーンファイルに書いてある「そのメールアドレスのメールは○○メールサーバから送られてくるはず」な情報(が書いてある場所)

が「SPFレコード」です。

SPFレコード7

せっかくなので、もう少し細かい部分まで見てみましょう。

権威DNSサーバ(DNSコンテンツサーバ)と呼ばれるDNSサーバさんは、IPアドレスドメイン名の対応表を使ってお仕事をしています。
この対応表は「ゾーンファイル」という名前です。
ゾーンファイルの中身の一行一行は「DNSレコード」と言います。

ゾーンファイルの中身のDNSレコードは、いくつかの種類に分類されます。
例えば

ns1.example.com.     IN A            198.51.100.2

のように「IN」の後ろに「A」を書いた行は「Aレコード」です。
Aレコードは「○○ドメイン名に対応するIPアドレスIPv4形式)は××で~す」を表現しています。

DNSレコードには、Aレコード以外にも、SOAレコードNSレコードMXレコードなど、いくつかの種類があります。

ところが困ったことにですね。
「SPFレコード」というレコードは ありません。
「どんな情報をDNSレコードで表現する?」を最初に決めたときに「送信元メールサーバを表現しようぜ!」とは ならなかったからです。

そのため、後からSPFレコードを追加……しようと思ったのですが簡単には行きません。
DNSレコードの種類を増やすのは、とっても大変なのです。
世界中のDNSサーバさんの動きを変える必要がありますからね。
本音で言えば、そんなことは、やりたくありません。

そこで、SPFレコードを新しく増やすのは諦めました。
その代わりとして、元々ある「TXTレコード」と呼ばれる、メモ書き用の行を有効活用することにしたのです。

TXTレコードは単純にメモ書きを書いておくための行です。
コンピュータ的には何の意味も持ちません。
例えば

example.com.     IN TXT            "2021-04-02新規登録↓"

のように書いて、人間様用のメモ書きとして使うのが本来の役割です。
ここに

example.com.     IN TXT            "この行はSPFレコードです。差出人が「~~@example.com」なメールはピヨ太メールサーバから送られま~す"

と書くことにしました。
先頭に「この行はSPFレコードです。」と書いてあるTXTレコードをSPFレコードとして扱うことに決めたのです。
※これはイメージの話です。実際に「この行はSPFレコードです。」と書くわけでは、ありませんよ。

これで問題は解決ですね。
DNSレコードの種類を増やすことなくSPFレコードを追加できました。

これがSPFレコードの正体です。
「このメールアドレスのメールは、このメールサーバから送られま~す」な情報を表現したTXTレコードです。

SPFレコード8

SPFレコードの書き方については、ここでは説明しません。
いろいろな書き方ができるので。
参考までに1つだけ例を書いておくと、例えば

IN TXT "v=spf1 ip4:198.51.100.1 ~all"

のような書き方をします。
この例のように書くと「『198.51.100.1』から送られたメールは真っ当に送られたメールだよ。それ以外から送られたメールはインチキだよ」な意味になります。

他にも、あーだこーだと指定の仕方があります。
必要に応じて専門的に解説しているところで情報を補完してください。


image piyo2

一言でまとめるよ

まぁ「SPFレコード」って単語が出てきたら「『このメールアドレス(メールの世界の宛先情報)のメールは、このメールサーバ(メールに関する機能を提供してくれるコンピュータ)から送られま~す』な情報を表現したTXTレコード(ゾーンファイルの中身で、コメントが書かれている行)なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像031
書籍画像031

おまけ

■訳してみるよ

「SPF」は「Sender Policy Framework(センダー・ポリシー・フレームワーク)」の略です。
「sender(センダー)」は「send(センド)」+「er」です。
「send(センド)」の意味は「送る」とか「届ける」とか「送り出す」とかです。
接尾辞「er」を付けると「~する人」とか「~するもの」的な意味になります。
「policy(ポリシー)」の意味は「方針」とか「指針」とか「やり方」とかです。
「framework(フレームワーク)」の意味は「骨組み」とか「枠組み」とかです。
「record(レコード)」の意味は「記録」とか「成績」とか「レコード」とか「記録する」とか「録音する」とかです。
何となく くっつけると

差出人・方針・枠組みの記録

となります。


■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
AI用語図鑑 ビジネス・開発・試験対策に使える厳選キーワード256
ソフトウェア開発現場の「失敗」集めてみた。 42の失敗事例で学ぶチーム開発のうまい進めかた