- - PR -
CNAMEでバーチャルメールサーバ
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-07-09 19:42
いつもお世話になっております。
ちょっと不可解な現象が出ているので、みなさんのお知恵を貸してください。 現在、メールサーバをqmailで構築しています。ドメイン.xyz.or.jpを取得し、xyz.or.jpのドメインとabc.xyz.or.jpの2つのドメインをメールサーバで受信するようにvpopmailで設定をしています。DNSの設定は、xyz.or.jpは、MX10で定義、abc.xyz.or.jpは、CNAMEで同じホストを定義しています。 この環境で問題なく動作していたのですが、特定のプロバイダの人が「aaa@abc.xyz.or.jp」宛にメールを送るとエラーがで戻ってくるというのです。 エラーな内容は、 The Postfix program <aaa@abc.xyz.or.jp>: host mail.xyz.or.jp[123.456.78.90] said: 553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1) 当方は、qmailですから、相手がたのメールサーバがPostfixなのだと思います。 しかし、MXレコードで定義したメール 「hij@xyz.or.jp」宛にはメールを送ることができるのです。 相手側のメールサーバに問題があるのかよくわからないのですが、どうもDNSの方にCNAMEしかレコードがないとうまくいかないような気がします。 通常、CNAMEで定義されたホストがメールまで取りに行くというのはおかしい話なのでしょうか?また、このような現象を見かけられたかたなどいらっしゃいましたら、是非ヒントや現象を教えていただきたいと思います。 他のプロバイダからは何ともないということもあるので、謎です。Postfixの仕様ではないと思いますし・・・。 | ||||
|
投稿日時: 2003-07-09 22:11
SMTPサーバは、
・MXレコードに対応しなくてはならない(MUST) ・DNSをひけなくてはならない(MUST) (これはAレコードのこと?) ・CNAMEをひくべきである(should) で、CNAME は「ひかなきゃならないわけじゃない」という ことであってますか? > 識者 | ||||
|
投稿日時: 2003-07-09 22:33
[ メッセージ編集済み 編集者: rrru 編集日時 2003-07-10 06:54 ] | ||||
|
投稿日時: 2003-07-10 01:38
エラーメッセージの中に host mail.xyz.or.jp said とありますね。
従って、これ以下は mail.xyz.or.jp、つまり Dr.Doraemon さんのサーバーが送信したエラーメッセージです。そのサーバーが何らかの原因でメールを拒絶しているようです。 他の ISP では何ともないとなると、qmail 側の設定に誤りがあるとは考えにくいですね。確かにかなり不可解な現象なので、どうすればよいのかもよくわかりませんが、とりあえず abc.xyz.or.jp に xyz.or.jp と同じ MX レコード(MX 10 mail.xyz.or.jp かな?)を指定されてみてはいかがでしょう? なおこのとき、CNAME レコードは必要があれば残しておいて構いません。 #この意見にほとんど根拠はありません。 ちなみに、Postfix 側の POP before SMTP が原因であれば、以下のメッセージになります。 554 <aaa@abc.xyz.or.jp>: Recipient address rejected: Relay access denied
RFC の該当部分を読んでいませんのではっきりとはいえませんが、CNAME のところで SHOULD という単語が使用されていたのであれば、一応その認識であっています。 今回の場合、Postfix 側はきちんと CNAME を引いているようなので(上のエラーメッセージから明らか)、これが原因ではなさそうですが… [ メッセージ編集済み 編集者: IZUMI Yusuke 編集日時 2003-07-10 01:45 ] | ||||
|
投稿日時: 2003-07-10 06:52
昨日は相当寝ぼけた発言をして申し訳ありませんでした。
nslookup -type=mx abc.xyz.or.jp 等で正引きができていますか? DNSかqmailかどちらに問題があるかノ判断が難しいですね。 | ||||
|
投稿日時: 2003-07-10 08:23
おっと、エラーメッセージをちゃんとみてませんでした、すみません。
ものすごく素直に解釈すると、その Postfix なサーバが送った RCPT コマンドの内容が変だ、ということになるですね。 そこが分かればヒントになるかも、ですが... | ||||
|
投稿日時: 2003-07-10 13:31
ぽんすさん、rrruさん、IZUMI Yusukeさん レスありがとうございます
いわれるように、確かに「rcpthosts」に該当のドメインがないということになる訳なのですが、他のプロバイダからの送信はうまくいっていることを考えるとおかしな話ですし、謎なんです。 IZUMI Yusukeさんのいわれるように、とりあえずMXレコードを付け加えてみようと思うのですが、MXレコードとCNAMEのレコードが同一のサーバ名を定義するとBINDから怒られてしまいます。BINDは9.2.2を利用しています。なので、AレコードとMXレコードで別々にしないといけないと思っていたのですが、これは私の認識違いでしょうか? 現在の構成では、サーバの管理用の名前をAレコードで定義し、実際に運用するドメインは全てCNAMEで定義しています。ただ、xyz.or.jpという親ドメイン宛のメールの対応のためにこれだけはMXレコードを別に設定しています。 なので、逆引きをしたり、Aレコードからひっぱてきたアドレスは、rcpthostsには追加していないというのは事実です。 やはり、これは影響があるのでしょうか? | ||||
|
投稿日時: 2003-07-12 11:21
Postfixでは、CNAMEを必ず本名に書き換えます。また、sendmailでもDONT_EXPAND_CNAMEの設定によりCNAMEを展開することが出来ます。
結果、相手MTAの「RCPT TO」コマンドで展開された名前が使われていることが原因と思われます。(原因ですが相手のMTAの動きに問題があるという意味ではありません) RFC2181の「10.3. MX and NS records」では、alias(CNAMEが本来の"canonical name"ではなくなっているのでaliasと文書内では表現されている)をMXの値に使うべきではないともありますし、私はDNSの設定を直す方が良いと思いますが、「rcpthosts」の変更でも解決出来ることだと思います。 |