ネットワークを利用していると,サーバー・マシンでソフトがきちんと動いているか調べたくなることがある。例えば,いつも使っているWebサーバーから応答がないとき。でも,ping(ピング)コマンド*で調べたらサーバー・マシンからは応答がきちんと返ってくる。そんなときは,サーバー上でWebサーバー・ソフトが本当に動いているかを調べる必要がある。

 また管理者なら,サーバー・ソフトの種類やバージョンを調べたいこともあるだろう。ソフトが最新バージョンにアップグレードされているかや,パッチ*がきちんと当たっているかを調べるためだ。こんなときに役立つのがtelnetテルネットというコマンドだ。

 telnetは,IPネットワークにつながっているサーバー・マシンにログインして,コマンドを送ってその応答を画面に表示するコマンドである。今回は,本来の利用目的であるリモート・ログイン*としてではなく,ちょっと変わった使い方でサーバー・ソフトの稼働状況や種類を調べるテクニックを紹介しよう。

相手のポート番号も指定する


図1 telnetコマンドを使ってリモートからサーバー・ソフトが稼働しているかを調べる
コマンド・プロンプトから「telnet 相手のコンピュータ ポート番号」と実行すると,サーバー・ソフトの待ち受けポートへアクセスし,サーバー・ソフトが稼働中なら応答メッセージなどが表示される。

[画像のクリックで拡大表示]

 telnetコマンドを実行するには,まずWindowsXPのコマンド・プロンプト*を開く。そして,

telnet 192.168.0.200 25
のように打ち込む(図1[拡大表示]の(1))。これは,「IPアドレスが192.168.0.200のサーバー・マシンの25番ポートに接続せよ」という意味だ。25番ポートは,SMTP*サーバー・ソフトがメール受信の待ち受け用として使うのが一般的だ。したがってサーバー・ソフトが稼働していれば,このコマンドによってサーバー・マシン上のSMTPサーバー・ソフトにつながる。

 telnetコマンドを実行した結果,画面に何も表示されなかったり,何らかのメッセージが出た場合(この例では,画面に「220 test-server.…」のようなメッセージが表示されている)は,相手ときちんとつながっている((2))。つまり,SMTPサーバー・ソフトが稼働していることがわかる。

 図1(2)の例では,画面に「220 test-server.…」のようなメッセージが表示された。このメッセージ中には,「Microsoft ESMTP MAIL Service, Version: 5.0.2195.6713」と書かれた部分がある。これを見れば,サーバー・ソフトはマイクロソフト製のメール・サーバー・ソフトでバージョンが5.0.2195.6713だということも確認できる。

 逆に,コマンド実行結果としてウインドウ中に「接続に失敗しました」と表示されたら,25番ポートで待ち受けているサーバー・ソフトはないということになる((2)’)。たったこれだけでサーバー・マシン上のサーバー・ソフトの稼働状況がわかるわけだ。