Hagex-day info

紅茶とお菓子について書いているほっこりブログです

telnetメモ



Windowsのコマンドプロンプトからのtelnetの使い方、というようりローカルエコーの設定がわからなくなったので、メモ。Linuxのターミナルからだと以下のように普通にtelnetで接続できる

$ telnet 192.168.0.1 80
Trying 192.168.0.10...
Connected to 192.168.0.1.
Escape character is '^]'.
HEAD / HTTP/1.0 ←コレは自分でタイプする

HTTP/1.1 200 OK
Date: Tue, 21 Dec 2004 06:59:52 GMT
Server: Apache/2.0.51 (Fedora)
Last-Modified: Mon, 25 Oct 2004 06:55:41 GMT
ETag: "104228-80-14adf540"
Accept-Ranges: bytes
Content-Length: 128
Connection: close
Content-Type: text/html

Connection closed by foreign host.

Windows2000だと
C:\Documents and Settings\hoge>telnet 192.168.0.2 80
としても、画面が変わって

とタイプしても何も表示されない。あぁ、ローカルエコーがきちんと設定されていないからだ。Windowsのコマンドプロンプトのローカルエコーってどうやって設定するんだっけ? と検索してみると setコマンドでできると判明
Microsoft (R) Windows 2000 (TM) Version 5.00 (Build 2195)
Microsoft Telnet クライアントへようこそ
Telnet Client Build 5.00.99206.1

エスケープ文字は 'CTRL+]' です

Microsoft Telnet> set ?
NTLM            NTLM 認証を使用します。
LOCAL_ECHO      ローカル エコーを使用します。
TERM x          (x には ANSI、VT100、VT52 または VTNT が入ります)
CODESET x       (x には Shift JIS,
                        Japanese EUC,
                        JIS Kanji,
                        JIS Kanji(78),
                        DEC Kanji または
                        NEC Kanji がはいります)
CRLF            CR と LF の両方を送信します。
Microsoft Telnet> set local_echo

とりあえず「set ?」でヘルプを見て、「set local_echo」で設定完了(オフにするときは「unset local_echo」)。XPだと「set localecho」のようだ。
C:\Documents and Settings\hoge>telnet 192.168.0.2 80
とタイプしてみると・・・
HEAD / HTTP/1.0 ←コレは自分でタイプする

HTTP/1.1 200 OK
Date: Tue, 21 Dec 2004 07:14:15 GMT
Server: Apache/1.3.31 (Win32) PHP/4.3.9
Content-Location: index.html.en
Vary: negotiate,accept-language,accept-charset
TCN: choice
Last-Modified: Thu, 03 May 2001 08:00:38 GMT
ETag: "0-5d6-3af11026;4176303a"
Accept-Ranges: bytes
Content-Length: 1494
Connection: close
Content-Type: text/html
Content-Language: en
Expires: Tue, 21 Dec 2004 07:14:15 GMT



ホストとの接続が切断されました

と無事に接続ができました。(違うサーバーに繋いだので結果が違っていますが)
※参考
Telnetクライアントの使い方(@IT)
これだけは知っておきたいネットワークコマンド