メールアドレス()、Eメールアドレス(イーメールアドレス)、電子メールアドレスhttps://kotobank.jp/word/電子メールアドレス-6535 (でんしメールアドレス) とは、電子メールにおける送信先や発信元を表す。略称としてアドレス、メルアド、メアドなどがある。

構成 メールアドレスは、次の構文を持つ。 ローカル部@ドメイン(例:[email protected])

ローカル部の構成はメールサーバの仕様による。ユーザ名またはユーザ名の別名(alias)が基本である。ドメインはホスト名(ホストに割り当てられるドメイン名)であり、メールサーバを特定する。この例では、「“example.com”で特定できるメールサーバに登録している“foo”というユーザ」が基本である。 メールアドレスのフォーマットを規定する文書として、RFCの (Simple Mail Transfer Protocol) および (Internet Message Format) が存在し、メールアドレスに使用できる文字を定義している & 5321に沿ったメールアドレス(local-part)のテストデータを考えてみた https://qiita.com/yoshitake_1201/items/40268332cd23f67c504c。

ローカル部に使用できる文字 ローカル部に使用できる文字は以下のASCII文字である。 まず、次のASCII文字をそのまま並べた形式(ではDot-string、ではdot-atomと呼ぶ)が使用できる。 大小のラテン文字(本来は大文字・小文字は区別されるが、実際には区別されていない実装がほとんどであるの2.4節“General Syntax Principles and Transaction Model”と4.1.2節“Command Argument Syntax”によれば、Quoted-stringを必要とするメールボックス、大文字小文字を区別するローカル部をもつメールボックスを定義することは、相互運用性を妨げるため、避けるべきであると定義されている。。一般的には小文字で表記される) 数字 ! # $ % & ' * + - / = ? ^ _ ` { | } ~(実際には、プロバイダ側で利用可能な記号文字を一部のみに制限している場合が多い) .(先頭と末尾以外で使用可能。2個以上連続してはならない ※ドコモ,auの携帯メールアドレスでは利用できるケースがある。) さらに、“" "”でくくられたquoted-stringの形式であれば、加えて次のASCII文字を使用できる 4.1.2節“Command Argument Syntax”によれば、quoted-string形式が要求されるローカル部をもつメールボックスを定義することは、相互運用性を妨げるため、避けるべきである。。 ( ) < > [ ] : ; @ , .(quoted-string中では制限はない) スペース さらにquoted-string中では、“\”を前につけたquoted-pairの形式であれば、加えて次のASCII文字を使用できる。 \ " たとえば、以下はRFCの規定において有効なメールアドレスである。 [email protected] (dot-atom) [email protected] (dot-atom) user+mailbox/[email protected] (dot-atom) !#$%&'*+-/=?^_`.{|}[email protected] (dot-atom)但し、rfc976 https://datatracker.ietf.org/doc/html/rfc976 UUCP Mail Interchange Format Standard では、( ! でホスト名をつないでメールアドレスを表現する) bang path がある。bang path の例としては hosta!hostb!user などがある。 "Abc@def"@example.com (quoted-string) "Fred\ Bloggs"@example.com(quoted-pairを含んだquoted-string) "Joe.\\Blow"@example.com(quoted-pairを含んだquoted-string)

RFC5322 p.12 の定義 dot-atom-text = 1*atext *("." 1*atext) から、「.」の後に必ず文字が必要であるため、以下は無効なメールアドレスである Internet Message Format,IETF, 2008 https://www.rfc-editor.org/rfc/rfc5322.txt。 [email protected](“.”をローカル部の末尾に使用している) [email protected](“.”が連続している)

ローカル部の長さの最大値は64文字である 4.5.3.1節“Size limits and minimums”。(実際には、プロバイダ側の設定や、メールソフトの制約などでローカル部の長さの最大値を20~30文字程度に制限している場合が多い)

ドメインに使用できる文字 ドメインには、次のいずれかの形式が使用できる。 ラテン文字・数字・“-”(先頭はラテン文字または数字)から成るサブドメインを“.”でつないだ形式で、A RRもしくはMX RR(またはそれらに名前解決されるCNAME RR)に名前解決される完全修飾ドメイン名 (FQDN) 3.6節“Relaying and Mail Routing”。 “[ ]”でくくられたIPアドレス(例: [192.0.2.69]は実在のIPアドレスで例示しているが、ここでは例示用のIPアドレスを使った。)。

ドメインの長さの最大値は253文字、メールアドレス全体の長さの最大値は254文字である。

#ローカル部に使用できる文字で述べたように、ローカル部にはquoted-string形式でなければ“.”を先頭と末尾で使用することや2個以上連続して使用することはできない。 しかし、一部の実装(実例:携帯電話のメール)はこの仕様を逸脱しており、規定外の特殊な文字が使用可能な場合もある。

Postfixは、配送する電子メールのエンベロープやヘッダに仕様を逸脱したローカル部を持つメールアドレスが存在すると、ローカル部を" "”でくくった形に変形する。エンベロープ中のメールアドレスについてはこの機能を無効に設定できる“smtp_quote_rfc821_envelope”パラメータを“no”に設定する(参照)。が、ヘッダ中のメールアドレスについては無効化できない。

電子メールでのメールアドレスの使用 メールアドレスは電子メールの中のいくつかの箇所で使用され、使用される箇所により決まった形式で現れる。

電子メールでメールアドレスが使用される箇所 エンベロープ中のパス。で定義される。 reverse-path 電子メールの送信元。エンベロープfromとも呼ばれる。 forward-path 電子メールの送信先。エンベロープtoとも呼ばれる。 メールヘッダ中のフィールド。で定義される。 Fromフィールド 電子メールの著者。 Senderフィールド 電子メールの送信者が著者と異なる場合や、著者が複数の場合の、電子メールの送信者。 Toフィールド 電子メールの受信者。 Reply-Toフィールド 電子メールの返信先。 Ccフィールド カーボンコピーの受信者。 Bccフィールド ブラインドカーボンコピーの受信者。 再送フィールド (Resent-From・Resent-Sender・Resent-To・Resent-Cc・Resent-Bcc) 電子メール再送時の情報を、元のフィールドを変更せずに記入するために使用される。それぞれ、“Resent-”のつかないフィールドに対応する。 Return-Pathフィールド SMTPサーバにより、reverse-pathの情報が記入される。

電子メールでの使用形式 それぞれの使用箇所で使用できるメールアドレスの形式を、以下の表に示す。 + メールアドレスの使用形式一覧 形式 での呼称 使用箇所(エンベロープ) での呼称 使用箇所(ヘッダ) [email protected] Mailbox - address mailbox addr-spec From Sender Reply-To To Cc Bcc <[email protected]> - - name-addr foo <[email protected]> foobar: foo <[email protected]>, bar <[email protected]>; - - group Reply-To To Cc Bcc <[email protected]> Path reverse-path forward-path path Return-Path 再送フィールド (Resent-From・Resent-Sender・Resent-To・Resent-Cc・Resent-Bcc) で使用できるメールアドレスの形式は、それぞれ対応する“Resent-”のつかないフィールドと同様である。

「ローカル部@ドメイン」の形式(例: [email protected])を、ではメールボックス (Mailbox) と呼び、 ではaddr-specと呼ぶ。 メールアドレスが使用されるヘッダフィールドのうちReturn-Path以外のヘッダフィールドには、addr-specのほか、addr-specの形式を“< >”でくくったり、さらに前に表示名を挿入したりしたname-addr(例: <[email protected]>、foo <[email protected]>)が使用できる。では、addr-specとname-addrをあわせてメールボックス (mailbox) と呼ぶ。 Fromフィールドには、メールボックスを“,”で区切ったメールボックスのリストを用いて複数の著者を記入できる。このとき、1つの送信者のメールボックスを記入したSenderフィールドが必須である。 Reply-To、To、Cc、Bccフィールドには、複数人のメールボックスを“,”で区切り、前に表示名と“:”、後ろに“;”を挿入したグループ (group)(例: foobar:foo <[email protected]>,bar <[email protected]>;)も使用でき、ではメールボックスとグループをあわせてアドレス (address) と呼ぶ。Reply-To、To、Cc、Bccフィールドには、アドレスを“,”で区切ったアドレスのリストを用いて複数記入できる(メールボックスもアドレスであるから、メールボックスのリストも使用できる)。Bccフィールドの値は空でもよい。 reverse-pathおよびforward-pathには、Mailboxの形式を“< >”でくくったパス (Path)(例: <[email protected]>)を用いる。Return-Pathフィールドも同様である。

特別なメールアドレス Postmaster メールシステムの管理者のメールアドレスとして使われる。SMTPサーバは、forward-pathに「Postmaster@ドメイン」、またはドメインのない“Postmaster”が指定された電子メールを受け取らなければならない。どちらも“Postmaster”の文字は大文字小文字を区別しない。 Nullアドレス メール転送エージェント (MTA) は宛先の間違いなどで電子メールを配送できない場合に、その電子メールのreverse-path宛に配送不能を知らせるバウンスメールを配送する。バウンスメールのreverse-pathには空値(Null)のアドレスを用いたパス、すなわち“<>”が使用される。 MAILER-DAEMON sendmail、Postfix、qmailなどのMTAは、バウンスメールのFromフィールドに、ローカル部に“MAILER-DAEMON”を使用したメールアドレスを使用する。 そのほか、 (Mailbox Names for Common Services, Roles and Functions) に、よく使うメールアドレスを定義している。

脚注

出典

関連項目 電子メール メールマガジン メール広告