Telnet①復習

詳解TCP/IP〈Vol.1〉プロトコルより。

RFC(一部)

 ・RFC854[Postel and Reynolds 1983a]
 ・RFC856[Postel and Reynolds 1983b]

NVT ASCII

 ・ASCIIキャラクタ7ビット
 ・行末: CR LF / \r\n
 ・改行: CR NUL / \r\0

Telnetコマンド
名前 コード(10) コード(16) 説明
EOF 236 EC EOF
SUSP 237 ED 現行プロセスの中断(ジョブ制御)
ABORT 238 EE プロセスの打ち切り
EOR 239 EF レコード終端
SE 240 F0 サブオプション終了
NOP 241 F1 オペレーションなし
DM 242 F2 データ・マーク
BRK 243 F3 ブレーク
IP 244 F4 プロセスの割り込み
AO 245 F5 出力打ち切り
AYT 246 F6 そのにいますか?
EC 247 F7 エスケープ・キャラク
EL 248 F8 行消去
GA 249 F9 先へ進め
SB 250 FA サブオプション開始
WILL 251 FB オプション交渉
WONT 252 FC オプション交渉
DO 253 FD オプション交渉
DONT 254 FE オプション交渉
IAC 255 FF データ・バイト255
オプション交渉
要求 説明
WILL 送り手はオプションを有効にしたい
DO 送り手は受け手にオプションを有効にさせたい
WONT 送り手はオプションを無効にしたい
DONT 送り手は受け手にオプションを無効にさせたい

オプション交渉シナリオ

送り手 受け手 説明
WILL DO 送り手のオプション有効要求→OK
   DONT 送り手のオプション有効要求→NG
DO WILL 受け手のオプション有効要求→OK
   WONT 受け手のオプション有効要求→NG
WONT DONT 送り手のオプション無効要求→OK
DONT WONT 受け手のオプション無効要求→OK

Telnetオプションコード(一部)

オプションID コード(16) 名前 RFC
1 01 echo(エコー) 857
3 03 suppress go ahead(進行抑止) 858
5 05 status(状態) 859
6 06 timing mark(タイミング・マーク) 860
24 18 terminal type(ターミナル・タイプ) 1091
31 1F window size(ウィンドウ・サイズ) 1073
32 20 terminal speed(ターミナル速度) 1079
33 21 remote flow control(リモート・フロー制御) 1372
34 22 linemode(ラインモード) 1184
36 24 environment variables(環境変数) 1408
動作モード

 ・半二重
 ・キャラクタ単位
 ・ライン単位
 ・ラインモード

同期信号

 ・TCP緊急データでデータマークコマンド(DM)を送る

その他

 ・toggle options: オプション処理表示
 ・UNIXTelnetクライアントは23以外のポート番号が指定されるとオプション交渉を行わない!