TCPぷろとこる





プロトコル 機能/使い方
POP-3 メールの受信
SMTP メールの送信
FTP ファイルの送受信
FTP
(裏ワザ)
ブラウザでユーザー名とパスワードを指定する方法
TFTP オペレーションコード一覧
HTTP Webブラウズ

じゃぁまたね!























◆POP3コマンド
  使い方は、Telnet address 110(or pop3 or pop-3)
  のようにTELNETにポートを指定して使います。
  UNIXのmailコマンドより便利です。
  また、UNIXのコマンドなら、
  fetchmail -p pop-3 -u username hostname
  というコマンドもあります。
コマンド 意味 書式
USER ユーザーの識別 USER username
PASS パスワード PASS password
STAT サーバーの状態をたずねる STAT
LIST リストの取得 LIST [message-Number]
RETR メールの取得 RETR message-number
DELE メールの削除 DELE message-number
NOOP 何もしない NOOP
RSET 削除動作の実行 RSET
QUIT 終了 QUIT
TOP メッセージ・ヘッダーの表示 TOP message-number lines
APOP ユーザーの識別 APOP username MD5digestString
UIDL ユニークID付きのリクエスト UIDL [message-number]

使用例(斜字が入力)

telnet xxx.xxx.xxx.xxx pop3
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.
+OK POP3 xxx.co.jp v6.50 server ready!
user fuku
+OK User name accepted, password please
pass zzzzzzzzzz
+OK Mailbox open, 1 messages
list		←メール一覧を取得
+OK Mailbox scan listing follows
retr 1		←1番目のメールを取得。
1 320
.
+OK 320 octets
Return-Path: aaa
Received: (from aaa@localhost)
	by xxx.co.jp (8.9.3/8.9.3) id QAA00322
	for fuku; Sat, 16 Sep 2000 16:07:17 GMT
Date: Sat, 16 Sep 2000 16:07:17 GMT
From: aaa 
Message-Id: <200009161607.QAA00322@xxx.co.jp>
To: fuku@yyy.co.jp
Subject: TEST Mail
Status:
This is Test	←メール本文
. quit +OK Sayonara

[戻る]





















◆SMTPコマンド
  使い方は、Telnet address 25(or smtp)
  のようにTELNETにポートを指定して使います。
  でもこんな使い方をする人はいないでしょう・・・。
コマンド 必要不可欠 意味 書式
HELO セッションの開始 HELO [hostname]
MAIL メールの転送開始 MAIL FROM:[address]
RCPT メールの宛先指定。宛先が複数ある場合はRCPTコマンドを複数回実行する。 RCPT TO:[address]
DATA メールの送信 DATA
RSET   処理の取消 RSET
VRFY   ユーザーの確認 VRFY [string]
EXPN   ユーザー・リストのメンバー取得 EXPN [string]
HELP   コマンド・ヘルプ HELP [string]
NOOP 何もしない NOOP
QUIT セッションの終了 QUIT

※拡張SMTPでは、EHLO、HELP、EXPN、ETRN、SIZE、DSN、といったコマンドが使用できます。

使用例(斜字が入力)

telnet xxx.xxx.xxx.xxx smtp
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.
220 xxx.co.jp ESMTP Sendmail 8.9.3/8.9.3; Sat, 16 Sep 2000 16:35:39 GMT
helo xxx.co.jp
250 xxx.co.jp Hello IDENT:root@xxx.co.jp [10.10.10.254], pleased to meet you
mail from:fuku@aaa.co.jp
250 fuku@aaa.co.jp... Sender ok
rcpt to:zzz@aaa.co.jp
250 fuku@aaa.co.jp... Recipient ok
data
354 Enter mail, end with "." on a line by itself
This is test mail	←メール本文
.
250 QAA00375 Message accepted for delivery
quit
221 aaa.co.jp closing connection

※SMTPの主なエラーコード
450 メールボックスが使用中
451 エラーが発生し、異常終了した
452 ディスク不足のため実行できない
500 文法エラー
554 メール処理に失敗した

[戻る]





















◆FTPコマンド
  使い方は、
  Telnet address ftp
 のようにTELNETにポートを指定して使います。
コマンド 意味 書式
USER ユーザー名の指定 USER [username]
PASS パスワードの指定 PASS [password]
ACCT アカウントの指定 ACCT [account-information]
CWD 作業ディレクトリの指定 CWD [pathname]
CDUP 親ディレクトリの指定 CDUP
SMNT 別のファイルシステム構造のマウント SMNT [pathname]
QUIT 接続終了 QUIT
REIN 新規接続状態に戻る REIN
PORT (*1) データ転送用のポートの指定 PORT [host-port]
PASV パッシブ・モードの開始 PASV
TYPE タイプの指定。ASCII,EBCDIC,IMAGEなど TYPE [type-code]
STRU ファイルストラクチャの指定。F:File R:Record P:Page STRU [structure-code]
MODE 転送モードの指定。S:ストリーム B:ブロック C:圧縮 MODE [mode-code]
RETR データ転送開始 RETR [pathname]
STOR データの受信と保存 STOR [pathname]
STOU 受信したファイルをカレントディレクトリで重複しない名前で保存 STOU
APPE 既存のファイルに追加。なければ新規作成。 APPE [pathname]
ALLO 指定したサイズのファイル領域を転送前に確保する。STOR/APPEに先だって使用。 ALLO [decimal-integer] R [decimal-integer]
REST ファイル転送の再開を指定 REST [marker]
RNFR リネームの対象になるファイルの指定 RNFR [pathname]
RNTO 新しいファイル名の指定。RNFRと対で使う。 RNTO [pathname]
ABOR 実行中のデータ転送の中止 ABOR
DELE ファイルの削除 DELE [pathname]
RMD ディレクトリの削除 RMD [pathname]
MKD ディレクトリの作成 MKD [pathname]
PWD カレント・ディレクトリの表示 PWD
LIST ディレクトリ内のファイルリストまたはファイル情報 LIST [pathname]
NLST ディレクトリ内のファイルリスト NLST [pathname]
SITE 特定のサイト用のコマンドの指定 SITE [string]
SYST サーバーのOSタイプの要求 SYST
STAT サーバーの状態 STAT [pathname]
HELP ヘルプの表示 HELP [string]
NOOP 何もしない NOOP

※FTPのエラーコード
125 データコネクションオープン済み、転送開始
150 ファイル状態OK、データコネクションほぼOK
200 コマンドOK
211 システム状態
213 ファイル状態
220 サービス準備完了
225 データコネクションオープン
226 データコネクションクローズ
231 ユーザーネームOK、要パスワード
421 サービス利用できず、制御コネクションクローズ
500 構文エラー、コマンド解釈できず
502 コマンド未実装
550 要求されたアクション実行不能

(*1)PORTコマンドで通知されたFTPクライアントのデータポート番号は、 1番目の数字×256+2番目で求まります。
(ex)"PORT 192,168,1,100,4,112"とコマンドが発行された場合、4×256+112=1136が 192.168.1.100に対するポート番号となります。

[戻る]









































◆ブラウザでユーザー名とパスワードを指定する方法
  ブラウザのアドレス欄に、

     ftp://ユーザ名:パスワード@FQDN or IPアドレス/

 の形式で入力します。

※もちろん、HTTP://ユーザ名:パスワード@FQDN or IPアドレス/ もできます。

[戻る]









































◆TFTPオペレーションコード一覧
  TFTPをあまり使うことはないと思いますが・・・、
コマンド オペレーションコード
(バイト数)
意味
RRQ 1(2) 読み出し要求
WRQ 2(2) 書き込み要求
DATA 3(2) データ
ACK 4(2) 肯定応答
ERROR 5(2) エラー

[戻る]









































◆HTTPコマンド
  使い方は、Telnet address 80(or http)
  のようにTELNETにポートを指定して使います。

メッソッド 意味
GET サーバーの情報(URLデータ)取得
HEAD メッセージヘッダのみを調べる
POST クライアントから情報を送る(登録)
PUT クライアントから情報を送る(更新)
DELETE 指定したリソースを削除する
TRACE リクエストメッセージをクライアントに渡す
LINK 他の既存情報の間にリンク関係を設定する
UNLINK リンク関係を削除する

使用例(斜字が入力)

telnet xxx.xxx.xxx.xxx http
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.
get /http/1.0			←ここでCTRL+Enterを2回押す。
HTTP/1.1 200 OK
Date: Sat, 16 Sep 2000 17:16:14 GMT
Server: Apache/1.3.6 (Unix)		←これでサーバーの種類がわかる
Last-Modified: Mon, 07 Aug 2000 09:25:32 GMT
ETag: "fd80-19b-398e808c"
Accept-Ranges: bytes
Content-Length: 411
Connection: close
Content-Type: text/html

<HTML>
<br> <HEAD> <TITLE>FUKU's Apache: TurboLinux Web Server</TITLE> </HEAD> <BODY BGCOLOR=#FFFFFF TEXT=#000000> <H1>FUKU's Apache 1.3.6: TurboLinux Web Server</H1> TurboLinux uses the Apache web server to provide WWW services. <h2><font color=ff0000>Here is FUKU's UNIX Server</font></h2> <h3>File Locations</h3> <ul> <li><a href="/~fuku/">User FUKU</a> </ul> <br> <hr> </BODY><br> </HTML><br>
※HTTPのエラーコード
100 サーバー処理中
101 より有効なプロトコルの切り替えを通知
200 正常終了
201 PUTリクエストに対するレスポンスで新規にファイルをなどを作成したことを通知
202 リクエストを受けつけたことだけを通知
203 エンティティヘッダー情報がオリジナルとは異なる
204 処理は成功したが送信するデータがない
205 クライアントが現在処理中のページを初期状態に戻す
206 レンジ検索の成功
300 ファイルなどのレスポンスデータを複数の形で表現できることを通知し、クライアントが最適な形式を選択できるようにする
301 リクエストされたファイルなどが別の場所に恒久的に移動
302 リクエストされたファイルなどが別の場所に一次的に移動
303 別のURLに対して検索要求リクエストをだすことを要求
304 GETリクエストに対するレスポンスで要求されたファイルが変更されていないことを通知
305 プロキシ経由でリクエストしなければならないことを通知
400 リクエストが不正
401 ユーザー認証失敗
402 (予約)
403 アクセス権限がない
404 リソースが存在しない
405 リクエストメッソドが不正
406 レスポンスはリクエスト中にあるACCEPT-*ヘッダーで指定されたものではない
407 プロキシを利用するのにユーザー認証が必要
408 タイムアウト
409 ファイルなどの状態に矛盾が生じているために処理不可能
410 ファイルなどが現在も将来も利用不可能
411 リクエスト中にContent-Length指定が必要なことを通知
412 リクエスト中の条件付ヘッダーのひとつが「偽」である
413 リクエスト中のエンティティが大きすぎて受けつけられない
414 リクエスト中のURLが長すぎて受け付けられない
415 フォーマットが未サポート
500 サーバーの内部エラー
501 サーバーが対応していないリクエストメソッドを受信
502 ゲートウェイが不正
503 サービスが停止中
504 ゲートウェイがタイムアウト
505 HTTPバージョンが未サポート

[戻る]






じゃぁまたね!