- 締切済み
telnetコマンド
telnetコマンドを、文字として認識させないためにIACを使うという事を知りました。 ここでふと疑問に思ったのですが、例えばECコマンドを使う場合、 EC(0xF7)を文字として認識させないためにIACを使うのだと思うのですが、 ASCIIコードでECに割り当てられているものを入力して、 サーバー側にECの文字を表示させても、 それはコマンドとして認識されないのでしょうか? 詳しい方からすればとんちんかんな質問かもしれませんが、 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- jyufi_february
- ベストアンサー率84% (42/50)
回答No.1
0xF7 というバイト自体が EC (Erase Character) を意味するのではなく、0xFF, 0xF7 という2バイトが揃って初めて EC の意味になります(※)。0xFF が先行しない 0xF7 が単体でやってきても、それは EC の意味にはならず、0xF7 という文字そのものをあらわします。 ※ RFC 854 の TELNET COMMAND STRUCTURE の節を参照。 ということで、0xF7 に相当する文字をタイプしたときのエコーバックは、やはり 0xF7 というバイトだけが飛んできます。0xFF がついていないので、ECとは認識されません。 ちなみに、0xFF に相当する文字を送信する場合は、IAC の後に 0xFF を送信します。すなわち、0xFF を2回 (0xFF, 0xFF)送信します。
お礼
jyufi_februaryさん、回答ありがとうございます 根本的な事がわかっていなかったようです、勉強になりました!