+ 作るログイン
図を読み込んでいます…
1 / 11
メールのしくみ ― DNS から SPF・DKIM・DMARC、Resend の運用まで / 全11章

メールのしくみ 1:IPアドレスとドメイン

発行
アニメモ公式
版
第1版
改訂
コマ
全11

メールの話の土台として、インターネットの「住所」を説明します。IPアドレスとは何か、データがどう運ばれるのか、ポートとは何か、そしてなぜ番号とは別にドメインという名前を持つのか。ドメインの読み方と「持ち主」の意味まで。

メールの前に、インターネットの住所から

このシリーズは、メールを送る機能を作るときに出てくる言葉(DNS、SMTP、SPF、DKIM、DMARC、Resend……)を、ほぼ知識ゼロの状態から1つずつ説明していきます。どの作品でも、「なぜそうしなければならないのか」を中心に話します。

全11本の並びは次のとおりです。

番号話題
1IPアドレスとドメイン(この作品)
2DNS:名前から番号を引く仕組み
3SMTP:メールが届くまで
4欠陥となりすまし
5SPF
6DKIM
7DMARC
8評判
9Resend と2つの入口
10Resend の DNS 設定
11運用とつまずき

先に、シリーズ全体を貫く一文を渡しておきます。メールは、1980年代に「相手を信頼する」前提で作られた仕組みに、あとから身元確認を何層も継ぎ足したものです。 出てくる設定のほとんどは、この「継ぎ足し」のどこかに属しています。

最初の作品では、メールそのものではなく、その下にあるインターネットの住所の話をします。メールも Web も、「相手がどこにいるか」が分からなければ何も送れません。後の作品で出てくる「DNS に書く」という作業の意味も、ここを押さえておくとすっと入ってきます。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 1 / 11
  • メールの前に、インターネットの住所から
  • あなたのPC
  • ?
  • サーバー
  • どこへ送ればいい? どうやって見つける?
  • メールも Web も、まず相手の住所が分からないと始まらない。

IPアドレス:ネットにつながった機械の番号

インターネットにつながっている機械には、1台ずつ 203.0.113.10 のような番号が振られています。これが IPアドレスです。

家の住所にたとえられることが多いですが、もっと近いのは電話番号です。電話をかけるときに相手の番号が要るように、インターネットで何かを送るときには、必ず相手の IP アドレスが要ります。Web ページを開くときも、メールを送るときも、裏では「この番号の機械に、このデータを届けて」ということが起きています。

※このシリーズに出てくる IP アドレスは、説明用に予約された「例の番号」です。実在の機械ではありません。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 2 / 11
  • IPアドレス:ネットにつながった機械の番号
  • この番号あてに送る
  • あなたのPC
  • サーバー
  • 203.0.113.10
  • 通信はすべて、この番号あてに届く。

IPv4 は「0〜255 の数字4つ」

よく見る 203.0.113.10 の形は IPv4 と呼ばれます。点で区切られた4つの数字で、それぞれが 0 から 255 までです。

組み合わせの数は 256 × 256 × 256 × 256 で、約43億通り。インターネットが作られた当時は十分すぎる数でしたが、スマホやサーバーが世界中に広がった今では足りなくなりました。

そこで作られたのが IPv6 です。2001:db8::1 のように16進数で書き、桁がはるかに多いので、事実上使い切れない数の番号があります。今は IPv4 と IPv6 が並んで使われています。

メールの設定でこの違いを意識する場面は多くありませんが、SPF(5本目)の設定に ip4: や ip6: という書き方が出てきたら、この2種類の番号のことだと思い出してください。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 3 / 11
  • IPv4 は「0〜255 の数字4つ」
  • 203
  • .
  • 0
  • .
  • 113
  • .
  • 10
  • 0〜255
  • 0〜255
  • 0〜255
  • 0〜255
  • 256 × 256 × 256 × 256 = 約43億通り
  • IPv6: 2001:db8::1(桁がずっと多い)
  • 組み合わせは約43億通り。世界中の機械には足りなくなった。

データは小包に分けて、宛先の番号を付けて送る

インターネットでは、送りたいデータを1本のまま流すのではなく、小さな小包(パケット)に分けて送ります。1通のメールも、何十個、何百個という小包になって運ばれます。

それぞれの小包には、荷札のように次の2つが書かれています。

荷札の欄意味
宛先の番号どの機械へ届けるか
差出人の番号返事をどこへ返すか

差出人の番号が必ず書かれているのには理由があります。インターネットの通信は、ほとんどが「送ったら返事が来る」やりとりだからです。返事の行き先が書いていなければ、会話が成り立ちません。

この「差出人の番号」は、メールの身元確認(5本目の SPF)で大事な役割を果たします。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 4 / 11
  • データは小包に分けて、宛先の番号を付けて送る
  • あなたのPC
  • 中継
  • 中継
  • 中継
  • サーバー
  • 203.0.113.10
  • 宛先 203.0.113.10
  • 宛先 203.0.113.10
  • 差出人の番号も必ず書く(返事を返してもらうため)
  • 宛先 203.0.113.10
  • 小包の1つ1つに「宛先」と「差出人」の番号が書いてある。

途中の中継機は、宛先の番号だけを見て次へ渡す

小包は、あなたの PC から相手のサーバーへ一直線に飛んでいくわけではありません。途中にある中継機(ルーター)を、いくつも経由して運ばれます。

中継機がやることは単純で、荷札の宛先の番号だけを見て、「その番号ならこっちの方向」と次の中継機に渡すだけです。小包の中身がメールか Web ページかは気にしません。

ここから2つのことが分かります。

1つは、宛先の番号が分からなければ、何も届かないことです。名前しか知らない相手には、まず番号を調べる必要があります(これが2本目の DNS です)。

もう1つは、差出人の番号はごまかしにくいことです。荷札に嘘の番号を書くことはできても、そうすると返事が自分に届かなくなります。メールの受け渡しのように何往復も会話する通信では、嘘の番号では会話が続きません。だから「いま自分と話している相手の番号」は信頼できる情報として使えます。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 5 / 11
  • 途中の中継機は、宛先の番号だけを見て次へ渡す
  • あなたのPC
  • 中継
  • 中継
  • 中継
  • サーバー
  • 203.0.113.10
  • 宛先 203.0.113.10
  • 宛先 203.0.113.10
  • 宛先 203.0.113.10
  • 送信元の番号はごまかしにくい(返事が自分に届かなくなるので)
  • 中継機は中身を気にしない。だから番号が分からないと何も届かない。

1台の中には、用途ごとの窓口(ポート)がある

1台のサーバーが、Web ページもメールも同時に扱っていることがあります。そこで番号とは別に、機械の中の窓口を指定する仕組みがあります。これがポートです。

建物の住所(IP アドレス)と、その中の部屋番号(ポート)の関係だと考えてください。

ポート窓口の用途
443Web ページ(HTTPS)
25メールの受け渡し(サーバー同士)
587メールの送信依頼(アプリやメールソフトから)
465メールの送信依頼(最初から暗号化する方式)

メールだけで窓口が3つあることに注目してください。サーバー同士が渡し合う窓口と、アプリが「送って」と頼む窓口は別になっています。この違いは3本目で、「なぜ自分のサーバーから直接メールを送れないのか」という話につながります。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 6 / 11
  • 1台の中には、用途ごとの窓口(ポート)がある
  • 443番
  • Web ページ(HTTPS)
  • あなたのPC
  • 25番
  • メールの受け渡し(サーバー同士)
  • 203.0.113.10 の 443番へ
  • 587番
  • メールの送信依頼(アプリから)
  • 465番
  • 同じく送信依頼(最初から暗号化)
  • 203.0.113.10 の中
  • 番号で機械を選び、ポートで窓口を選ぶ。メールにも専用の窓口がある。

ドメイン:人間のための名前

番号さえあれば通信はできます。それなのに、私たちは animemo.app や gmail.com のようなドメインという名前を使います。理由は2つあります。

① 人間は数字を覚えられない

198.51.100.7 を覚えておいて打ち込むのは現実的ではありません。名刺に書くことも、口で伝えることも難しいです。

② 番号は変わる

こちらのほうが本質的です。サーバーを別の会社に引っ越したり、故障した機械を入れ替えたり、クラウドの事業者が裏で機械を差し替えたりするたびに、番号は変わります。

もし全員が番号で覚えていたら、番号が変わった瞬間に、誰もたどり着けなくなります。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 7 / 11
  • ドメイン:人間のための名前
  • animemo.app
  • 名前で呼びたい
  • あなたのPC
  • サーバー
  • 203.0.113.10
  • ① 人間は数字を覚えられない
  • ② 番号は変わる(引っ越し・入れ替え)
  • 名前を別に持つ理由は2つ。覚えられない、そして番号は変わる。

番号が変わっても、名前はそのまま

図では、サーバーが引っ越して、番号が 203.0.113.10 から 198.51.100.7 に変わりました。それでも animemo.app という名前の札は同じ場所にあり、線の先が新しいサーバーにつながり直しただけです。

これが名前を1段挟む意味です。利用者はずっと名前で呼び、名前と番号の対応表だけを書き換えれば、引っ越しは誰にも気づかれません。

プログラミングで、値を直接書かずに変数や定数に名前を付けておくのと同じ発想です。値が変わっても、名前を使っている側は書き換えずに済みます。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 8 / 11
  • 番号が変わっても、名前はそのまま
  • animemo.app
  • あなたのPC
  • 名前あてなら困らない
  • 203.0.113.10
  • ① 人間は数字を覚えられない
  • サーバー
  • ② 番号は変わる(引っ越し・入れ替え)
  • 198.51.100.7
  • 名前を1段挟めば、名前と番号の対応を書き換えるだけで済む。

ドメインは右から読む

mail.animemo.app のようなドメインは、点で区切られた部分に分かれていて、右から左へ読むと構造が分かります。

部分呼び名意味
appトップレベルドメイン一番大きな区分。.com・.jp・.app など
animemo(animemo.app として)登録したドメインお金を払って借り、持ち主になる部分
mailサブドメイン持ち主が自由に作れる、その下の名前

大事なのは、サブドメインは持ち主が自由に、いくつでも作れることです。animemo.app を持っていれば、mail.animemo.app も send.mail.animemo.app も、追加料金なしで作れます。

メールの設定では、用途ごとにサブドメインを分ける場面が何度も出てきます(10本目)。そのとき「別のドメインを買っている」わけではなく、「自分の持ち物の中に部屋を作っている」のだと思ってください。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 9 / 11
  • ドメインは右から読む
  • mail
  • .
  • animemo
  • .
  • app
  • サブドメイン (持ち主が自由に作る)
  • 買って持つ部分 (animemo.app)
  • トップレベル (.app・.com・.jp)
  • 右から左へ、区分が細かくなる
  • 右端が一番大きな区分。左へ行くほど持ち主が細かく決めた名前。

ドメインは「借りて持つ」もの

ドメインは買い切りではなく、年ごとに更新して借り続けるものです。

仕組みは3段になっています。.app のようなトップレベルドメインごとに全体を管理する組織(レジストリ)があり、一般の人は 販売店(レジストラ) を通して申し込みます。Cloudflare やお名前.com などがこの販売店です。申し込むと、そのドメインの持ち主として登録されます。

更新を忘れると、ドメインは手放したことになり、しばらくすると他人が取得できるようになります。そうなると、そのドメインあてのメールも、そのドメインを名乗る権利も、他人のものになります。

そして、持ち主であることの一番大事な意味はこれです。

そのドメインの設定(DNS)を書き換えられるのは、持ち主だけです。

次の作品で説明する DNS は、この「持ち主しか書けない」という性質の上に成り立っています。そしてメールの身元確認も、すべてこの性質を足場にしています。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 10 / 11
  • ドメインは「借りて持つ」もの
  • .app の管理者
  • 販売店
  • あなた
  • レジストリ
  • 例: Cloudflare
  • animemo.app の持ち主
  • 年ごとに更新する。更新を忘れると他人の手に渡りうる
  • 持ち主の権利 = そのドメインの DNS を書ける
  • 持ち主だけが、そのドメインの設定(DNS)を書き換えられる。

まとめ:番号と名前

この作品で見たことをまとめます。

言葉意味メールとの関係
IPアドレスネットにつながった機械の番号メールも最後は番号あてに運ばれる
差出人の番号通信の相手の番号。ごまかしにくいSPF(5本目)が使う
ポート機械の中の窓口受け渡し用と送信依頼用で窓口が違う(3本目)
ドメイン人間用の名前。番号が変わっても変わらないメールアドレスの @ の右側
サブドメイン持ち主が自由に作れる下の名前用途ごとに分ける(10本目)
持ち主ドメインを借りている人DNS を書き換えられる唯一の人

残る疑問は、「名前と番号の対応表はどこにあって、誰がどうやって引いているのか」です。次の作品で、それを担う DNS を見ていきます。

  • メールのしくみ 1 / 11 ― IPアドレスとドメイン
  • 11 / 11
  • まとめ:番号と名前
  • animemo.app
  • あなたのPC
  • IPアドレス = 機械の番号
  • ポート = 機械の中の窓口
  • サーバー
  • ドメイン = 人間用の名前(持ち主がいる)
  • 198.51.100.7
  • 次の作品では、名前から番号を引く仕組み(DNS)を見る。

0 件のコメント

読み込み中…

権利侵害・不適切な内容の連絡: [email protected]