, (ドット)が続いていは行けない…..

au とか docomo が許していた/いるメアドで「@の前の文字列にドットが連続してあってはいけない、@の直前にドットがあってはならない」(SHOULD NOT)というRFC規則に引っかかるメアドを許している件である。auもdocomoも新規に作るメアドではRFCに準拠したものでないと許可しないようになったが、以前に作成したメアドはそのまま使っていいことになっている。

多くのパソコンで使うメールソフトはRFC規則に沿っていないメアドをはじくようになっているので、途中のSMTPサーバや最終的に受信するauとかdocomo のサーバが受け付けていても、メールを送ることができない。メールソフトはアドレスの入力間違いとしてはじいてしまうのだ。

しかし、RFC2821の2.3.10 では@前の文字列であるloca-part の意味の解釈および割り当ては、そのアドレスのドメイン部で指定されているホストによってのみ行われなければならない(MUST)。とあるのでau とかdocomoの勝手であってなんら問題はないはずである。

RFCのどこに、上記のような規則が書いてあるのか、調べてみるが、よくわからない。

結論からいうとメールアドレスの書式というページに書いてあることのようだ。

このページの最後に個人的な雑感というのがあって、この感想に賛成だ。RFCの文書のどこにこのような規則があるのかよくわからない。

メールソフトで、この規則にのっとっていないメアドを ”  ”  でくくって送ると届くはず。” ”内は文字列として文法上の記号等があっても無視できるからである。

事実、Thunderbird でこのようなメアドから来たメールのヘッダーを見ると、
From: “xxxxxx..yyyyy”@ezweb.ne.jp とFrom欄を解釈し、 ” ” でくくっていて、単純に返信すると

To: xxxxxx..yyyyy@ezweb.ne.jp
に送信している。問題なく送受信できている。Outlook なんかはだめなようだ。
mailman もだめなようで、このようなメアドを登録すると、さきに書いたように届かない。
mailman では登録すらできない。” “でくくると登録ができるが、どうやらとどかないようだ。送信エラーもこない。送られたのだがau とか docomo が捨てちゃうのだろうか?届かないと学生は言うがとどいているのかもしれない。もし捨てちゃうようだったらauやdocomoはものすごくたちが悪いことになる。

パソコンからThunderbirdで
“xxxxxx..yyyyy”@ezweb.ne.jp あるいは
xxxxxx..yyyyy@ezweb.ne.jp で送付すると届く。ということはauは” “をちゃんと解釈してくれているようだ。
しかしmailmanからだと
“xxxxxx..yyyyy”@ezweb.ne.jp は登録できるが、届かない。
xxxxxx..yyyyy@ezweb.ne.jp は登録ができない。

mailmanの設定かな? ちがったPostfix のせいだ。ためしたのはハイフンで始まるメアドだったからだ。

http://www.postfix-jp.info/trans-2.3/jhtml/postconf.5.html#allow_min_user によると;

allow_min_user (デフォルト: no)
受信者アドレスが最初の文字として `-‘ を持つことを許可します。コマンドラインでEメールアドレスを渡すソフトウェアでの事故を避けるため、デフォルトではこれを認めません。そのようなソフトウェアは悪意のあるアドレスと正しいコマンドラインオプションを区別できないでしょう。これは “–” オプションターミネータをコマンドラインに入れることで防げますが、一貫して全体に強制するのは困難です。

で、デフォルトの設定だからだ。

mike (MacOSX)の場合、しかしながら

/etc/postfix/main.cf にallow_min_user の記述がない。