Simple Mail Transfer Protocol
Simple Mail Transfer Protocolの最新ニュースをまとめて検索!
| アプリケーション層 |
| 9P ·CMIP · DHCP (DHCPv4 · DHCPv6) · DNS · EHRP · FTP · Gopher · GTP · HTTP · IMAP4 · IRC · NNTP · NTP · POP3 · RTCP · RTSP · SDP · SIP · SMTP · SNMP · SOAP · SSH · STUN · TELNET · XMPP |
| プレゼンテーション層 |
| HTML · XML · AFP |
| セッション層 |
| SSL/TLS · RPC |
| トランスポート層 |
| DCCP · IGMP · PPTP · RSVP · RTP · RUDP · SCTP · TCP · UDP · UDP-Lite |
| ネットワーク層 |
| ARP · BGP · ICMP · ICMPv6 · IGP · IP (IPv4 · IPv6) · IPsec · IS-IS · OSPF · RARP · RIP |
| データリンク層 |
| 802.11 · 802.16 · ATM · DTM · EVDO · FDDI · GPRS · HDLC · HSPA · ISDN · L2TP · PPP · SLIP · SMDS · Wi-Fi · WiMAX · アークネット · イーサネット · トークンリング · フレームリレー |
| 物理層 |
| G.709 · OFDM · PLC · SONET/SDH · イーサネット物理層 · ツイストペアケーブル · 同軸ケーブル · 光ファイバー · モデム |
Simple Mail Transfer Protocol(簡易メール転送プロトコル、SMTP)は、インターネットで電子メールを転送するプロトコルである。通常 TCP のポート番号 25 を利用する。 転送先のサーバを特定するために、DNS の MXレコードが使われる。RFC5321で標準化されている。
目次 |
[編集] 概要
SMTP は IETF において標準化されたメール転送のためのプロトコルである。1980年 9 月にメール転送プロトコル (Mail Transfer Protocol) という名称のプロトコルが RFC 772 において提案され、2 回の改訂を経て 1982年 8 月に簡易メール転送プロトコル (SMTP) という名称で RFC 821 / STD0010 (J. B. Postel 著: Simple Mail Transfer Protocol) として標準 (Standard) になった。その後 2001年 4 月に SMTP は他の RFC の内容もあわせて改訂され、RFC 2821 (J. Klensin 編: Simple Mail Transfer Protocol) として提案標準 (Proposed Standard) になった。RFC 821 から約 20 年を経て改訂版が発行されたのは、おもにインターネットの普及にともなって様々なメール拡張機能が実装され、それらをささえる部分を整理する必要があったからである。サーバー外からの攻撃や、IPv6のアドレスにも対応できるよう、またSPF (RFC 4408)、DKIM (RFC 4871) などにも対応すべく 2008年10月に再度改訂された。
SMTP はメールサーバの MTA 間の転送だけでなく、MUA からメールサーバにメールを送信するときにも使われることが多い。 ただし、この場合受信したサーバ側のふるまいがサーバ同士の転送と異なる点が多いため、サーバ側を MSA と呼びポート番号 587 を利用し、通常の MTA と分けることが多くなってきている (RFC 5321でRFC 4409が推奨になった)。
SMTP は本来テキストベースのプロトコルであり、要求/応答メッセージのみではなく、全ての文字が 7 bit ASCII でなければならないという制限があった。現在では拡張機能により 8 bit 以上を要求する言語や添付ファイルに使われることの多いバイナリもそのまま転送することも可能であるが、互換性を考慮すると、MIME という方式で、7 bit に収まるようにすることが望ましい。 なお、日本語は通常 ISO-2022-JP という文字コードを使うことで、全てのバイトが 7 bit に収まるようにしている。
SMTP においてはサーバとクライアントの役割が明確に分離されている。RFC 5321 によれば、それらは下図のように記述される。
+--------+ +---------+ +---------+
| User |<-->| | | |
+--------+ | | SMTP | |
| Client- | Commands/Replies | Server- |
+--------+ | SMTP |<---------------->| SMTP | +--------+
| File |<-->| | and Mail | |<-->| File |
| System | | | | | | System |
+--------+ +---------+ +---------+ +--------+
SMTP client SMTP server
SMTP においてはクライアントがサーバに接続するとただちにサーバ-クライアント間に "SMTP セッション" が確立され、その後、両者の間でFTPの様な対話型でコマンドやそれに対する応答やメールがやりとりされる。メール・トランザクションはそのうちDATAコマンドを利用したデータの送信であるため、一つのSMTP セッション中には複数のメール・トランザクションが含まれうる。セッションの終了のためには QUIT コマンドが使用されるが、この点においてもFTPとの同様である。
SMTP においてはトランスポート・プロトコルとして通常 TCP が使用されるが、それに限定されることはない。
[編集] SMTP の認証機構
当初はユーザー認証機構を備えていなかったが、インターネットの普及に伴ってその必要に迫られたため、SASLメカニズムを利用した認証機構が SMTP-AUTH (SMTP Authentication) として標準化された。 認証方式として PLAIN、LOGIN、DIGEST-MD5、CRAM-MD5 などが広く利用されている。
また、SMTP-AUTH 標準化以前に POP before SMTP と呼ばれる SMTP プロトコル外の機構による利用ユーザー制限方法が考案され、現在でも利用されている。
[編集] RFC
- RFC 5321 - Simple Mail Transfer Protocol
- RFC 1869 - SMTP Service Extensions (ESMTP)
- RFC 1891 - SMTP Service Extension for Delivery Status Notifications (DSN)
- RFC 2554 - SMTP Service Extension for Authentication
[編集] 関連項目
- Outbound Port 25 Blocking
- POP3
- IMAP
- スパム (メール)(いわゆる迷惑メール)
最終更新 2009年9月17日 (木) 00:43 (日時は個人設定で未設定ならばUTC)。
【Simple Mail Transfer Protocol】変更履歴

