メールってどうやって送信されるの? 〜これで入門書が読める!超初心者のためのインターネットの仕組み〜:インターネットのモヤモヤを解消する(10)(1/2 ページ)
メールを送るときのPCとSMTPサーバのシンプルなやりとりを、コマンドからtelnetを立ち上げて実際に見てみよう
いつも使ってるメールですが
今回学ぶこと
このところ新製品のリリースやバージョンアップがあったりして、忙しい日々を送っている芽衣子さんです。仕事に疲れてブログなんかを見たときにも自分の関わっている新製品に浮かれている人の記事が目に入ったりして、新製品はいいのだけどそれに合わせてむちゃなスケジュールでプロダクトを作る方は大変なんだからと余計にイライラが募ります。
そして、リリースが一段落したころ、それを見透かしたように固太りのアイツがさっそうとやって来ます。正男さんです。もちろんお付きの者も一緒です。
正男さん
弟の方が出世することに少しの悔しさもある正男さんですが、本社の束縛から外れて自由な行動できるいまの方が幸せです。新しい携帯電話を買おうかと画策中。
芽衣子さん
リリース前のバタバタとギリギリの変更ですっかり疲弊して、ストレスフルな状態です。
成沢さん
相変わらず本社の方が慌ただしく動いているのですが、遠くから聞くだけで焦るばかりの毎日です。しょうがないので家にこもってDVDばかり見ています。
正男 「新バージョンが発表されたアレ、また発売祭りに参加しようかと思ってるんですよ」
成沢「お前は何でも新製品好きだなあ」
ここでもさっきリリースし終わった製品についてうれしそうに語っているではないですか。一層たまっていた疲れが芽衣子さんにどっと押し寄せてきますが、それよりもすっかり忘れてしまっていたネットワークの話を切り出されると余計にげんなりした気分になってしまいます。
正男 「いま、暇そうですね。お時間いいですか」
芽衣子 「忙しかったんだからちょっとくらい休ませてよ……。早めに帰りたい」
正男「まあ、そういわれても、早く引き継げと本社もうるさいんですよね。ちょっとだけですから」
芽衣子 「もう、いいわ、なんなのよ」
すると、疲れている芽衣子さんを洗脳するかのように話を進めていきます。
メールを送るにはSMTPサーバを使う
正男 「さて、前回に引き続き、メールについて説明していくことにします。芽衣子さんもメールはいつも使っていますよね」
芽衣子 「バカにしないでよ。メールはビジネスパーソンの基本よ。携帯メールだって絵文字だって使えるようになったのよ」
自慢が少しだけ年齢を感じさせる芽衣子さんですが、3人とも携帯メールは苦手だったりするので誰も突っ込まずに話は進んでいきます。
正男 「そのメールですが、送信するにはSMTP(Simple Mail Transfer Protocol)という仕組みを使います。送る先もSMTPサーバと呼ばれています」
成沢 「ポートは25を使うぞ」
芽衣子 「HTTPとWebみたいにややこしいわけではないのね。覚える横文字が1つでも減って安心だわ」
芽衣子さんはよっぽど横文字が嫌いなようです。
正男 「シンプルメールというだけあって、その名のとおり使い方も非常にシンプルなメール送信プロトコルです」
芽衣子 「ほんとにシンプルなの?」
正男 「シンプルですよ、といってもらちが明かないので、試してみましょう」
というと、正男さんは慣れた手つきで近くのマシンから黒い画面を登場させていきます。いつものコマンドラインです。
メールを送ってみる
正男 「ということでtelnetを使ってメールを送ってみましょう。シンプルなことが分かると思います」
芽衣子 「え、また、これ? これでメールが送れたりするの?」
コマンドプロンプトの黒い画面に少しずつ慣れてきた芽衣子さんですが、相変わらず使い方はよく分かっていません。dirってなんですか?
正男 「ここからtelnetを使うんですよ」
芽衣子 「telnetってなんだっけ……」
成沢 「SMTPサーバは25なのでサーバのアドレスと25って入れるんだな」
コマンドの説明を加える成沢さんですが、芽衣子さんには何が何だかちっとも分かりません。
コマンドプロンプトとtelnetの違いが分からず困惑している芽衣子さんを置きざりにして、正男さんは勝手に先に進めていきます。
正男 「とにかく、やってみますよ」
プロンプトに、
C:\>telnet mail.atmarkit.co.jp 25
と入力されると、画面が切り替わります。
正男 「メールサーバにアクセスしました」
芽衣子 「?? 黒いままですが?」
成沢 「まあ、コマンドラインはそんなものだ。考えるな、感じるんだ」
そんなことをいわれて芽衣子さんも困ったものですが、しょうがないのでじっくり見学させてもらうことします。
正男 「まずはSMTPサーバにログインします」
220 mail.atmarkit.co.jp ESMTP
正男 「接続に成功するとこのようにメールサーバから返答がありますので、サーバにメールを出したいと連絡します」
EHLO atmarkit.co.jp 250-mail.atmarkit.co.jp Hello gw.atmarkit.co.jp [219.166.45.144], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-8BITMIME 250-SIZE 10240000 250-DSN 250-DELIVERBY 250 HELP
成沢 「EHLOの後に送信するアドレスのドメイン名を入力するんだな」
正男 「これでメールサーバに入れました」
成沢 「ちなみにずらっと出てくるのはこのサーバで使えるコマンドだな」
芽衣子 「は、はい……、つまり、メールサーバに入ったのね」
正男 「そうです。次にメールアドレスを指定します」
成沢 「まず、自分のメールアドレスだな」
正男 「mail from:に続いて送信元、つまり自分のメールアドレスを入力します」
mail from: kaji@atmarkit.co.jp 219.166.45.144 kaji@atmarkit.co.jp... Sender ok
正男 「Sender okと出ると、次に相手のメールアドレスを入力します。rcpt to:の後ろには送信したい相手のメールアドレスを入力すれば大丈夫です」
rcpt to:kaji@atmarkit.co.jp 219.166.45.144 kaji@atmarkit.co.jp... Recipient ok
成沢 「これで送受信先が決まったから、メールの本文を送るぞ」
data 354 Enter mail, end with "." on a line by itself
正男 「dataと入力してEnterキーを入力するとその下から送信したいメール本文になります」
こんにちは . 250 2.0.0 n5K4Lkua002486 Message accepted for delivery
正男 「行の最初に.を入力してEnterキーを入力すると本文が終了します」
quit
正男 「quitを入力するとサーバとお別れして、サーバはきっとメールを送ってくれるはずです。これでおしまいです。簡単でしょ」
芽衣子 「確かにサーバに接続して自分と相手のメールアドレスと中身を書いただけだから、普通にメールを送るのと変わらないわ」
成沢 「まあ、メーラーはこれを自動的にやってくれるだけだからな」
すぐに終わって、ちょっと拍子抜けの芽衣子さんです。
正男 「この送信したメールをメーラーから受信してみましょう」
といわれると、芽衣子さんは自分のメーラーからメールを受信してみます。するとメールが届いているではないですか。
芽衣子 「確かに私のところにメールが来たわ。なんかだまされているような気がするけど、確かに簡単なような気がするわ」
シンプルなのにちょっと納得な芽衣子さんです。
Copyright © ITmedia, Inc. All Rights Reserved.