「telnetの使い方」に戻る

reference count : access counter

ポートを指定して使おう (telnetの使い方)

誰もが知っている使い方

telnet は普通リモートホストにログインするために、以下のように ホスト名だけを指定してtelnetコマンドを実行します。

% telnet hibiki.kitakyu-techno-ctr.co.jp
Trying 210.160.116.130...
Connected to hibiki.kitakyu-techno-ctr.co.jp.
Escape character is '^]'.

FreeBSD/i386 (hibiki.kitakyu-techno-ctr.co.jp) (ttyp4)

login:

この使い方は誰でも知っています。でも、以下に示す使い方は あまり使われていないのではないでしょうか。

ポートを指定する

実は、telnet は実はポートを指定できるのです。ポートを指定しなければ、 デフォルトの23番ポートに接続しますが、ホスト名の後に ポート番号を指定すると、そのポートに接続できるのです。 ポートについては「ポートの概念」をご覧ください。

一例を挙げます。 WWW サーバのポートに接続するには次のようにします。

% telnet www.kitakyu-techno-ctr.co.jp 80
Trying 210.160.116.130...
Connected to hibiki.kitakyu-techno-ctr.co.jp.
Escape character is '^]'.
windows付属のtelnet.exeでも、[接続]メニューの[リモートシステム]を 選択して表示されるダイアログで [ポート] に80を入力して 接続すると同じことが可能です。
この例では hibiki.kitakyu-techno-ctr.co.jp というホストの 80 番ポートに接続しています。この www.kitakyu-techno-ctr.co.jp というホストの 80 番ポートは www のサーバが動いていますが、 そのポートに接続したのです。ここでは、80 という数字で直接 ポート番号を指定していますが、unixマシンでは
"telnet www.kitakyu-techno-ctr.co.jp http"
のように、80の代わりに http と指定することもできます。この場合 /etc/services の内容を見て、httpが何番ポートかを調べ、そのポートに 接続することになります。

このようにポートを接続した場合、普通の使い方のtelnetの場合のように ログインプロンプト "login: " は出ません。 でも "Connected to hibiki.kitakyu-techno-ctr.co.jp." という 表示の通り、接続は成功しているのです。
この例のように接続した場合、接続先の wwwサーバはhttpプロトコルのコマンドを受け付けますから、試しに httpプロトコルのgetコマンド "GET /index.html" を送ってみましょう。 以下はその例です

% telnet www.kitakyu-techno-ctr.co.jp 80
Trying 210.160.116.130...
Connected to hibiki.kitakyu-techno-ctr.co.jp.
Escape character is '^]'.
GET /index.html
<HTML>
<HEAD>
<TITLE>Kitakyushu Technology Center Home Page</TITLE>
</HEAD>
         :
         :
         :
赤く表示されている部分がユーザが入力した部分で、それ以外の部分は サーバからの応答です。

httpプロトコルで通信する場合は、改行コードは"CR"ではなく"CRLF" でなければなりません。(使っているターミナルソフトの設定が 必要となる場合があります)
サーバによっては、"GET index.html HTTP/1.0"とやらなければ ならないものもあります。この場合はリターンキーを2回入力 してください。
このように、GET コマンドに対する応答として、wwwサーバは 指定されたドキュメント(この例の場合 index.htmlのソース)を 送ってきたのです。

wwwのブラウザは、このように HTTP プロトコルで規定されたコマンドを WWW サーバへ送って、ドキュメントを取得し、表示しているのです。 それで、普通はユーザがこの通信の様子を通常見ることはできませんし、 見る必要もありません。 しかし、開発者や管理者はこのコマンドを試したい場合があります。 このような場合にこの telnet は威力を発揮するのです。

imap4のサーバでもnntpサーバなどの他のサーバに対しても、 そのサーバが telnet プロトコルをサポートしている場合 telnet で接続することができます。 では telnet 使って実際にネットワークサーバが機能しているのを確認する例 として、smtpポートに接続してみましょう。

「SMTP サーバへの接続」へ

[ポートを指定して使おう ] [SMTP サーバへの接続] [POP サーバへの接続]
「telnetの使い方」のページへ戻る