最近やっている自前でのサーバ構築。
今回はメールサーバに挑戦してみた。
送信サーバにpostfix
受信サーバにDovecot
を使用した。
色々と試したのだが、ローカル環境でメールの送受信は出来る。
Linux のコマンドラインから
mail test@galaxy-comet.net
って打ってメールを送信し、
mail
って打って受信内容を確認するとちゃんとある。
しかし、携帯電話からメールを送信するとホストが見つかりません。というエラーになる。
だけど、ノートパソコンから受信メールサーバを見ると、ローカルで送受信したメールは見られる。
しばらく頭をひねったよ。
host -t mx docomo.ne.jp
ってコマンドを打つと
docomo.ne.jp mail is handled by 10 mfsmax.docomo.ne.jp.
って返ってきて、
PING mfsmax.docomo.ne.jp (203.138.181.240) 56(84) bytes of data.
って打つと、サーバがIPv4だと言うことが分かる。
もしかしたら立てたサーバがIPv6だったのが悪かったのか?を思い、DNSの設定でIPv4を追加してみた。
携帯電話からメールを送信してみた結果、今度はちゃんと受信される。
何かで読んだけど、IPv4とIPv6ってそもそも経路が別らしい。
だからIPv6のメールサーバに送信しても、サーバがIPv4だったから駄目だったのだろう。
問題は送信が出来ないと言うことだ。
外部から送信サーバにアクセスしてもエラーになる。
ローカルからローカルにはエラーにならないが、ローカルからmailコマンドで外部に送信しても受信出来ない。
今の状況をまとめると、
sshでサーバにログオンし、mailコマンドでローカルのユーザ宛にメールを送信すると出来る。
ローカルでmail コマンドで受信確認するとこれも出来る。
携帯電話からメールを送信すると、ローカルのmailコマンドで受信確認も出来る。
携帯電話からの送信メールをノートパソコンから携帯回線を通じてアクセスしても、これも問題なく接続出来る。
出来ないのはローカル環境からmailコマンドで外部へのメール送信と、外部からメーラーを使ってメールを送信できない。この2点だ。
今のところネットの情報を漁っても解決策は見えない。
何が問題なのか?もさっぱり不明だ。
コメント