Qiitaに投稿し始めてもうすぐ2年。赴くままに書いているので、エンドユーザー向けの投稿もあれば、365管理者向けの投稿も雑多になっている。
そんな中で、意外な記事の閲覧数が多い。それがコレ。
エンドユーザー向けでも365管理者向けでもなくて、すごくニッチな投稿だと思うけどコンスタントに増えてんだよな…。
というところで、受信制限と対応案についてまとめてみる。
受信スロットリングとは
詳しくは上記の記事を見てほしいけど、ざっくり「あんまりメールきすぎてるからブロックするわ」という機能。
メールボックスごとに、1時間当たり3600のメッセージを超えると「上限を超えてっぞ」とメールを受信を遅らせるらしい。
通常の個人用メールアドレスで使ってる限りはこんなにメールくることはない(キッパリ)。
でも、社内システムのアラートメールを受けるメールアドレスとかだとこの閾値を超えてしまうケースもある。ということでそんなケースから対応案を考えたみる。
オンプレミスとか、固定のグローバルIP内にSMTPサーバーがあり、そこからアラートメールなどを送信するシナリオです。
コネクタで回避できる?
社内のSMTPサーバーからのメールはOffice365ではない(=外部)ので、外部のメールサーバーの扱いでメールを受信してると、スロットリングの影響を受けてしまう。
これは「受信コネクタ」を作成して、「このIPからのメールは信頼してるから大丈夫」と登録しておくことで緩和することもできる。
Exchnage管理センター - メールフロー - コネクタ、から、「組織のメールサーバーからOffice365」で送信元IPアドレスを指定してやる。詳しいつくり方は割愛。
だがしかし、そこには罠がある。
コネクタの罠
それは
- 受信コネクタをつかうと、外部テナントのメールですらコネクタの影響を受ける
- 受信コネクタを使うと、外部にもメールを送信できるけど、内部外部あわせて一切送信できないケースがある
という2つ。
「外部テナントのメールですら、コネクタの影響を受ける」
受信コネクタを作成すると、コネクタに設定しているIPからOffice365を使っているすべてのドメイン宛のメールは、自社テナントを経由するようになってしまう。
そもそも受信コネクタなので社内向けのメールが中心のはず。なのでコネクタを作って社外にメール送るってことは本来少ないはず。ではあるけどまれにこういうケースがある場合は影響を受けてしまう。
コネクタ経由になってしまう社外当てのメールが、きちんと外に出ていくよう、トランスポートルールなどで検討する必要あり。
「受信コネクタを使うと、外部にもメールを送信できるけど、内部外部あわせて一切送受信できないケースがある」
1つのメッセージの宛先に、複数のドメインを含むとアウト。
テナント外のドメイン+テナント内のドメインでも、テナント内のドメイン+テナント内のドメインでもダメ。どうしてもコネクタが必要なら、ドメインごとにメッセージを分けなきゃダメらしくい。
コネクタを作るより、もっと簡単な回避策
受信するメールボックスを分割する。それだけ。
流量制限はメールボックスごとなので、メールボックスを分ければメールボックスごとの受信数は逆数で減る。
受信用メールボックスが1つで流量制限受けるなら2つ3つにする。一番シンプル。もっとも、アプリ側で対応必要になるケースもあるけど。
まとめ
そもそも、受信の流量制限対応としては、SMTP送信・直接送信が本来の推奨構成。さらにこれらが選べないケースは外部のメール送信サービスを使うことを推奨されてる。
その3つが選べないような、超レアケースの対応案でしかない。
どうしても受信スロットリングへの対応が必要なほどメールを受ける場合は
- そもそも、受信スロットリングの影響受けるケースが少なく
要件的にシステム通知用のメールとかのはずで、そういったものは社内から社内宛のはずなので、先の2つの構成とか、メールボックスを複数持つことを優先的に考える
それでもテナント外の宛先を含めたいし、メールボックスを分けることも難しいような超レアケースの場合は、受信コネクタではない別の方法か、十分に考慮
それこそ、ドメインごとにメッセージ分けるとか、アプリ側の作りこみとか。でも、メッセージ分けると流量制限の影響を受ける可能性が上がるというパラドックス。
そんなケースなら、いっそメール使わない方法を考えたほうが早いんじゃないだろうか。
安直にコネクタでいいじゃん、と考えないように注意しましょう。
参考資料
Office 365 を使用してメールを送信するように多機能デバイスまたはアプリケーションをセット アップする方法
https://docs.microsoft.com/ja-jp/exchange/mail-flow-best-practices/how-to-set-up-a-multifunction-device-or-application-to-send-email-using-office-3
コネクタ設定における 3 つのポイント (送信元 : 組織のメール サーバー)
https://blogs.technet.microsoft.com/exchangeteamjp/2017/12/07/3points-of-inbound-connector/