メールサーバーの移転をサポートした。MXレコードが反映されているかなどのDNSを確認する場面では、いつもそのコマンドをググるという、なかなか物覚えが悪く、加えて今回は DNS request timed out という文字列が目の前に現れ、これまた以前にも出てきたメッセージだ、毎回エラーを教えてくれる優しいコンピューターに再びご迷惑をお掛けしまいとメモする事にした。環境はWindows 7で、コマンドプロンプトを使用する。
例えばexample.comをドメインとした場合で、MXレコードを調べたい場合は nslookupコマンドに -type=mx のオプションを与えてコマンドを実行すればよい。入力したコマンドと結果は次の通り
>nslookup -type=mx example.com
DNS request timed out.
timeout was 2 seconds.
サーバー: UnKnown
Address: xxxx:xxx:xxxx:x:xxx:xxxx:xxxx:xxxx (注:ipv6アドレス)DNS request timed out.
timeout was 2 seconds.
(同一エラーメッセージ省略)
*** UnKnown への要求がタイムアウトしました
どうもIPv6でDNSサーバーへアクセスしているようで、どの端末でIPv6未対応なのか分からない事はさておき、IPv4で問い合わせてほしい訳なので、調べてみると次のようにコマンドを打てばIPv4でDNSサーバーの現在のMXレコードを確認できた。
> nslookup -type=mx example.com DNSサーバーIPアドレス
私の環境では実際のところ、DNSサーバーはネットワーク内で最も身近なルーターが代理してくれているので、ルーターのLAN側IPを指定すればよい。つまり;
> nslookup -type=mx example.com 192.168.xx.1
サーバー: UnKnown
Address: 192.168.xx.1権限のない回答:
ドメイン名 MX preference = 10, mail exchanger = example.com
余談を書くと、-type=allもしくは-type=anyでMXレコード以外のAやCNAME、NS、AAAAなどすべてのレコードが表示されるようだ。
nslookupのヘルプは nslookup /? で表示でき、オプションの詳細は nslookup – 192.168.xx.1 で対話モードに入ってから help と打ってエンターキーを押すとより詳細なヘルプが表示される。