メールアドレスが存在するか確認する
メーリングリストの管理をしていると、メールが届かなくてエラーが返ってきて困る、ということがあります。そういう場合は、メールアドレスが有効かどうかを調べて、有効でないならばML登録を解除するという作業が必要になります。
まずは、ドメインのメールサーバが何かを確認しましょう。これにはnslookupコマンドを使います(最近はdigかな)。まず、setコマンドでMXレコードを指定し、次に確認するアドレス(ここではnguser@tondemo.org にします)のドメイン”tondemo.org”を入力します。
$ nslookup
> set type=mx
> tondemo.org
Server: *******
Address: ***.***.*.*
tondemo.org MX preference = 10,mail exchanger = mail.tondemo.org
mail.tondemo.org internet address = 012.034.056.078
> exit
複数のMXレコードが出ることもあります。その場合はMX preferenceの値が小さいものが優先度が高いので、そちらを使用します。
次にtelnetを使って、メールアドレスが有効か確認します。250 OKが返ってくれば基本的には存在します。550は存在しないと考えて良いでしょう。ちなみにheloコマンドでtest.tondemo.orgと入れてますが、本来は自分のドメインを渡すべきなので誤解しないようにしてください。
$ telnet mail.tondemo.org 25
Connect: mail.tondemo.org…
220 SMTP Server service ready;
helo test.tondemo.org
250 mail.tondemo.org
mail from: <>
250 OK
rcpt to: <user1@tondemo.org>
250 OK
rcpt to: <nguser@tondemo.org>
550 Mailbox unavailable <nguser@tondemo.org>
quit
221 closing transmission channel