読者です 読者をやめる 読者になる 読者になる

windows7 で telnet を使ってみる

ネットのお勉強をしようということで、まずはコマンドプロンプトから telnet を使ってみようと思う。OS は windows7

のっけからまずコマンドプロンプトで、telnet が使えないようになっている。これはデフォルトの仕様なので、使えるようにしなければならない。やり方は、ここを参考にするとよい。

まず、コマンドプロンプトtelnet と入れてみる。対話モードになるので、? を入れるとヘルプが表示される。このままだと、相手側に接続した時にコマンドを入力する文字が見えないので、set localecho とすれば文字が見えるようになる(これを毎回行わなければならないのが面倒)。

次に、例えば open www.kyoto-u.ac.jp 80 と入力してみる。「接続中:~」と出たときにENTERキーでカーソルが上に飛ぶので(ここで何故か表示がおかしくなる)、GET /index.html HTTP/1.0 と入力してENTERを二回押す。すると、

HTTP/1.1 404 Not Found
Server: nginx/1.4.4
Date: Mon, 12 Jan 2015 16:58:08 GMT
Content-Type: text/html;charset=utf-8
Content-Length: 17211
Connection: close
Vary: Accept-Encoding
Expires: Sat, 1 Jan 2000 00:00:00 GMT
X-Ua-Compatible: IE=edge,chrome=1
Content-Language: ja
X-Varnish-Action: YES (YES: but for 1m - beresp.status :404)
Accept-Ranges: bytes
X-Varnish: 822599160
Via: 1.1 varnish
X-Served-By: esxl018
X-Cache: MISS
X-Varnish-Age: 0
Age: 0

(この部分を「ヘッダ」という)の後に、HP の HTMLソースが表示される筈。ただし、この HP の文字コードUTF-8 なので、コマンドプロンプトの画面では漢字がどうしても文字化けする。なお、冒頭が 404 Not Found なのは、正しくは www.kyoto-u.ac.jp が存在しないからである。けれども、www.kyoto-u.ac.jp/ja は存在するので、その内容が表示されるということらしい。

また、open www.google.co.jp 80 であとは同じようにやると、

HTTP/1.0 302 Found
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Location: http://www.google.co.jp/index.html?gfe_rd=cr&ei=muSzVM6BBKbS8geN-oGwDg
Content-Length: 271
Date: Mon, 12 Jan 2015 15:13:30 GMT
Server: GFE/2.0
Alternate-Protocol: 80:quic,p=0.02

などとなる。

どうも今ひとつよくわからないのであり、例えば open d.hatena.ne.jp 80 だと、

HTTP/1.1 404 Not Found
Date: Mon, 12 Jan 2015 15:29:17 GMT
Server: Apache/2.2.3 (CentOS)
Vary: Accept-Language,Accept-Encoding,User-Agent
X-Ridge-Dispatch: Hatena::Announce::Engine::Index#default#html
X-Runtime: 13ms
X-View-Runtime: 8ms
Content-Length: 13
Content-Type: text/plain; charset=utf-8
Set-Cookie: b=$1$u4Nga0jX$l4r8JWbJueQZiYeI7dusy1; path=/; expires=Wed, 04-Jan-45 15:29:17 GMT; domain=.hatena.com
Connection: close

なのである。はてなに対しては上手くいかないわけだ。

それにしても、windowstelnet というのは必ずしも使いやすくないな。かなり面倒。


参考:
Windows TIPS:Telnetクライアントの使い方 - @IT
Telnet コマンド - Windows ヘルプ
Telnet: よく寄せられる質問 - Windows ヘルプ