記事一覧 会社のメールの仕組み POP と IMAP の違いと、SPF/DKIM/DMARC の役割
Web担当者

会社のメールの仕組み POP と IMAP の違いと、SPF/DKIM/DMARC の役割

会社のメールの仕組み POP と IMAP の違いと、SPF/DKIM/DMARC の役割
メールソフトの設定を頼まれた時や、「メールが届かない」「迷惑メールに入っていた」と言われた時、会社のメールの仕組みを少し知っていると、どこを確かめて誰に聞けば良いかの見当が付きます。
この記事では、メールが届くまでの流れから、迷惑メール扱いを防ぐ設定までを紹介します。

メールが届くまでの流れ

送る人
メールソフト
メールを書いて送る
送信サーバーに渡す(SMTP)
送信側
送信サーバー
メールを送り出す
相手のドメインの MX レコードを DNS で調べて届ける(SMTP)
受信側
受信サーバー
届いたメールを預かる
メールソフトが取りに行く(POP/IMAP)
受け取る人
メールソフト
メールを受け取って読む
図:メールが届くまでの流れ

ドメインとは

ドメイン(domain)は、直訳すると「領域」、意訳すると「インターネット上の名前」です。
メールアドレスの @ より後ろや、ホームページのアドレスに使う名前(example.co.jp など)です。
インターネット上の住所にあたる IP アドレスは数字の並びなので、代わりに覚えやすいドメインを使います。

DNS とは

DNS(ディーエヌエス/Domain Name System)は、直訳すると「ドメイン名の仕組み」、意訳すると「ドメインと行き先を結びつける仕組み」です。
ドメイン毎に、ホームページやメールの行き先などの設定を登録しておくと、問い合わせに DNS がその内容を答えます。
送信サーバーは、宛先のドメインの MX レコードを DNS で調べて、届け先の受信サーバーにメールを送ります。
レコードとは
DNS に登録する設定の1つ1つを、レコードと呼びます。
メールの届け先を示す MX(エムエックス/Mail Exchanger)レコードや、ホームページの行き先を示す A レコードなどがあります。

SMTP とは

SMTP(エスエムティーピー/Simple Mail Transfer Protocol)は、直訳すると「メールを送り届けるための簡単な手順」、意訳すると「メールを送る方法」です。
メールソフトから送信サーバーへ、送信サーバーから受信サーバーへ、メールを渡す時に使います。
メールソフトの設定では、送信サーバーを SMTP サーバーとも呼びます。

メールの保存先と受け取り方(POP/IMAP)

メールの届け先(MX レコード)は、ホームページの行き先(A レコード)とは別の設定なので、ホームページとメールを別々の場所に置けます(ドメインの設定の記事)。
会社のメールの保存先には、主に次の4つがあります。
ホームページと同じサーバー
ホームページを置いているサーバーに、メールも届く
Google Workspace
Google の有料サービス。
メールが Google のサーバーに届く(Gmail の画面で読む)
Microsoft 365
Microsoft の有料サービス。
メールが Microsoft のサーバーに届く(Outlook で読む)
他のメールのサービス
ホームページとは別のサーバーや、メール専用のサービスに届く
メールソフトの受け取り方によっても、メールの保存先が変わります。
受け取り方には主に POP と IMAP の2つがあり、今は IMAP を使うことが多いです。
受信サーバーを、受け取り方に合わせて POP サーバー/IMAP サーバーとも呼びます。
どちらを使っているかは、メールソフトの設定画面で確かめられます。

POP とは

POP(ポップ/Post Office Protocol)は、直訳すると「郵便局の手順」、意訳すると「端末に取り込んで読む方法」です。
受信サーバーに届いたメールを、パソコンやスマホに取り込んで読みます。
既読にしたり削除したりしても、他の端末では変わりません。
1台の端末だけで読む時や、受信サーバーの容量が小さい時に使います。

IMAP とは

IMAP(アイマップ/Internet Message Access Protocol)は、直訳すると「インターネットでメールを見に行く手順」、意訳すると「サーバーに置いたまま読む方法」です。
メールを受信サーバーに置いたまま、メールソフトから読みます。
パソコン/スマホ/Webメールのどれで見ても、既読や削除が同じになります。

POP と IMAP のよくある質問

POP から IMAP に変えると、今までのメールは見れますか?
サーバーに残っているメールだけ見れます。
取り込み後にサーバーから消えたメールは、その端末でしか見れません。
IMAP を使う上で気を付けることはありますか?
メールがサーバーにたまるので、容量が一杯になると新しいメールを受け取れなくなります。
古いメールを削除するか、管理者に容量を増やしてもらってください。
削除したメールはサーバーからも消えるので、残したいものは先に保存しておきます。

メールソフトの設定の見方

メールソフトの設定には、送信サーバーと受信サーバー(合わせてメールサーバーと呼びます)の両方が要ります。
メールソフトにアカウントを追加する時は、サーバー会社や制作会社から届く案内を見ながら、次の項目を入力します。
Google Workspace や Microsoft 365 の場合は、メールアドレスとパスワードでログインするだけで済むことが多いです。
メールソフトの設定の例
受信サーバー(IMAP) sv123.example.net ポート 993 SSL/TLS
送信サーバー(SMTP) sv123.example.net ポート 465 SSL/TLS
ユーザー名 info@example.co.jp
パスワード ●●●●●●●●(案内に書かれたもの)
項目 意味
受信サーバー/送信サーバー メールを受け取る/送り出すサーバーの名前
ポート番号 サーバーに接続する時に指定する番号
暗号化(SSL/TLS) サーバーとの間の通信を、他人に見られないように守る設定
ユーザー名 サーバーにログインするための名前(メールアドレスのことが多い)
パスワード サーバーにログインするためのパスワード

迷惑メール扱いを防ぐ設定(SPF/DKIM/DMARC)

メールの差出人のアドレスは送信側で自由に書けるため、誰でも、他の会社になりすましたメールを送れます。
そこで受信側のサーバーは、SPF/DKIM/DMARC を見て、メールが本当に差出人のドメインから届いたものかを確かめています。
これらの設定が足りないと、フォームの通知や自動返信も含め、送ったメールが迷惑メールに入ったり、届かなかったりすることがあります。

受信側は、次の流れでメールを確かめます。
送信側
送信サーバー
DKIM の署名を付けて送る
メールを届ける(SMTP)
受信側での確認
SPF
送信サーバーが一覧にあるか
DKIM
署名が正しいか
2つの結果を合わせて判定する
判定
DMARC
差出人のドメインで、SPF か DKIM が通ったか
判定の結果で振り分ける
振り分け
受信箱
通ったメール
受信側に任せる
通らず、DMARC が none か未設定
迷惑メール
通らず、DMARC が quarantine
受け取らない
通らず、DMARC が reject
図:受信側がメールを確かめる流れ

SPF とは

SPF(エスピーエフ/Sender Policy Framework)は、直訳すると「送信者の方針の枠組み」、意訳すると「正式な送信サーバーの一覧」です。
自社のメールを送るサーバーを、一覧にしてドメインに登録しておくレコードです。
受信側は、一覧に無いサーバーから届いたメールを、疑わしいメールとして扱います。

DKIM とは

DKIM(ディーキム/DomainKeys Identified Mail)は、直訳すると「ドメインの鍵で確かめられたメール」、意訳すると「ドメインの電子署名」です。
自社から送るメールに電子署名を付け、それを確かめるための公開鍵をドメインに登録しておく設定です。
受信側は、署名が合わないメールについて、なりすましや途中での書き換えを疑います。

DMARC とは

DMARC(ディーマーク/Domain-based Message Authentication, Reporting, and Conformance)は、直訳すると「ドメインに基づくメールの認証/報告/適合」、意訳すると「認証できなかったメールの扱い方」です。
SPF でも DKIM でも差出人のドメインを確かめられなかったメールの扱い方を、ドメインに登録しておくレコードです。
受信側は、その扱い方(p= の値)を基にメールを振り分けます。
登録する名前は、ドメインの前に _dmarc を付けたものです。

p= に書く値の違い

p= の値 確かめられなかったメールの扱い
none 指定しない(受信側に任せる)
quarantine 迷惑メールにする
reject 受け取らない
quarantine か reject にすると、なりすましメールが相手に届きにくくなります。
none は、メールの扱いを変えずに、集計の報告だけを受け取りたい時に使います。

設定の例

SPF/DKIM/DMARC は、ドメインやメールの管理者が、TXT レコード(自由に文字を登録できる項目)に登録します(DKIM は、Microsoft 365 のように CNAME で登録するサービスもあります)。

次の例は、Google Workspace でメールを送る example.co.jp の設定です。
1行目の SPF は、Google Workspace の送信サーバーを一覧に入れた設定です。
2行目の DKIM は、Google Workspace で付けた署名を確かめるための公開鍵です。
名前の先頭の google を、セレクタ名と呼びます。
セレクタ名は、送るサービス毎に違います。
3行目の DMARC は、扱いを指定せず(p=none)、確かめた結果の集計を dmarc@example.co.jp に送ってもらう設定です。
ドメインの設定の例
example.co.jp TXT v=spf1 include:_spf.google.com ~all
google._domainkey.example.co.jp TXT v=DKIM1; k=rsa; p=(Google が出した文字)
_dmarc.example.co.jp TXT v=DMARC1; p=none; rua=mailto:dmarc@example.co.jp

設定する場面

次のような時に、SPF/DKIM/DMARC を見直します。
場面 見直す設定
Google Workspace/Microsoft 365 などのメールを使い始める SPF/DKIM
メール配信サービスやフォームから、自社のアドレスで送る SPF/DKIM
サーバーを移して、送信サーバーが変わる SPF/DKIM
メールを大量に送るので、Gmail などが求める条件を満たしたい SPF/DKIM/DMARC
なりすましメールを防ぎたい/自社のドメインを名乗るメールがどこから届いているかを調べたい DMARC
注意
SPF は1つのドメインに1つだけです。
送信サーバーを足す時は、新しく作らずに今の SPF に書き足します(2つあるとエラーになります)。

SPF/DKIM/DMARC のよくある質問

SPF/DKIM/DMARC は、3つとも設定する必要がありますか?
3つとも設定しておくのがおすすめです。
Gmail は、全ての送信者に SPF か DKIM を、Gmail 宛てに1日5,000通以上送る送信者には3つ全てを求めています。
Yahoo や Microsoft(Outlook.com)も、同じような条件を出しています。
DMARC は p=none なら届き方が変わらないので、まずはそこから始められます。
Gmail などへ転送したメールが、迷惑メールに入るのはなぜですか?
転送したメールは、転送したサーバーから相手に届くので、SPF が通らないことが多いです。
署名が残っていれば DKIM は通るので、SPF と DKIM は両方設定するのが一般的です。
「メールが届かない」「迷惑メールに入っていた」と言われたら、どこを確かめれば良いですか?
まず、宛先のアドレスに打ち間違いが無いかを確かめます。
そのうえで、自社の別のアドレスと、Gmail など社外のアドレスの両方とメールを送り合ってみると、どこで止まっているかを絞り込めます。

送ったメールが届かない時は、相手にも迷惑メールフォルダを見てもらいます。
それでも無い時は、MAILER-DAEMON などから届く「届かなかった」という知らせを管理者に見せると、原因を調べやすくなります。
相手からのメールが届かない時は、受信サーバーの容量が一杯になっていないかと、自社の迷惑メールフォルダを確かめます。
社外のどこからも届かない時は、メールの届け先(MX レコード)が正しいかを、管理者に確かめてもらってください。
相手の迷惑メールに入る時は、相手に連絡先へ登録してもらうと、次から受信箱に入りやすくなります。
何人もの相手で迷惑メールに入る時は、管理者に SPF/DKIM/DMARC を確かめてもらってください。
フォームの通知だけが迷惑メールに入るのはなぜですか?
フォームを送るサーバーが、SPF の一覧から漏れている可能性があります。
差出人を、問い合わせた人のアドレスにしている場合も、DMARC が通らずに迷惑メールに入ることがあります。
フォームのメールの送り方は、フォームのメールの記事にまとめています。
公開鍵を登録したのに、DKIM が通りません。
送信側で署名を有効にしていないか、公開鍵の値が違っている可能性があります。
メールを送るサービスを増やす時、今の DKIM はどうしますか?
消さずに、新しいサービスの分を足します。
サーバーを移すと、SPF と DKIM はどうなりますか?
新しいサーバーからメールを送る場合は、SPF に新しいサーバーを書き足し、DKIM は新しいサーバーの公開鍵を足します(制作会社の担当者がやることの記事)。
Google Workspace や Microsoft 365 から送るメールは、ホームページのサーバーを移しても変わりません。
SPF と DKIM は通っているのに、DMARC が通りません。
DMARC は、SPF か DKIM が、差出人のアドレスと同じドメインで通った時だけ通ります。
メール配信サービスから送ると、SPF や DKIM がサービス側のドメインで通るため、DMARC が通らないことがあります。
配信サービスの設定で、自社のドメインの DKIM を設定すると、DMARC も通るようになります。
集計の報告とは何ですか?
DMARC のレコードの rua= に書いたアドレスに、Gmail などの受信側から1日1回ほど届く報告です。
報告を見ると、自社のドメインを名乗るメールが、どのサーバーから何通届き、SPF/DKIM/DMARC が通ったかが分かります。
設定が漏れている送信元や、なりすましメールを見つけるのに使います。
数が多いので、普段とは別のアドレスで受け取るのがおすすめです。

なりすましメールを防ぐ流れ

なりすましメールを防ぐには、SPF と DKIM を整えてから、DMARC を段階的に強めます。
  1. SPF を設定する
    自社のメールを送るサーバーを、全て一覧に登録します。
  2. DKIM を設定する
    送るサービス毎に署名を有効にし、公開鍵を登録します。
  3. DMARC を p=none で設定する
    メールの扱いは変えずに、集計の報告を受け取り始めます。
  4. 集計の報告を確かめる
    通っていない正しいメールがあれば、その送信元を SPF に足すか、その送信元で DKIM を設定します。
  5. quarantine から reject へ進める
    正しいメールが全て通るのを確かめてから、p= を quarantine に変え、次に reject に変えます。

よくある質問

1つのアドレスに届いたメールを、何人かで受け取れますか?
受け取れます。
主な方法は、他のアドレスへ送り直す「転送」と、登録した全員に配る「メーリングリスト(グループ)」です。
どちらが使えるかは、メールのサービスによって違います。
社外のアドレス(Gmail など)へ転送すると、迷惑メールに入ったり、届かなかったりすることがあります(転送したメールの質問)。
退職した人のメールアドレスは、すぐに消しても良いですか?
すぐに消すと、取引先やお客様から届くメールを受け取れなくなります。
しばらくは残して後任の人へ転送し、パスワードを変えておくのが一般的です。
消す前に、そのアドレスを他のサービスのログインや、サーバー/ドメインの契約の連絡先に使っていないかも確かめてください。

まとめ

自社のメールについて、次の3つが分かっていると、メールソフトの設定や、メールが届かない時の相談を進めやすくなります。
  • メールがどこに保存してあるか(ホームページと同じサーバー/Google Workspace/Microsoft 365 など)
  • メールソフトが POP と IMAP のどちらで受け取っているか
  • SPF/DKIM/DMARC を設定してあるか
メールの設定で迷った時は、お問い合わせからご相談ください。
サイトの課題を、一緒に整理しませんか
IMG-flowは大阪のWeb制作会社です。
サイトの制作から公開後の運用改善まで、できることをサービスページにまとめています。
サービスを見る
この記事は参考になりましたか?
ご回答ありがとうございました