我有一个Arduino和以太网盾编码来创建一个简单的串口到远程登录客户端。这适用于将串行终端程序连接到Telnet BBS类型系统,例如bbs.thebytexchange.com使用端口23的系统。连接到Linux使用Telnet提示
当我使用同一个客户端与我的Arch盒通信时,它连接正常,但是,我立即从Arch框接收5个字节,然后停止。无论我发送给Arch盒什么都不会返回。 五个字节(十六进制),如下所示。 18 20 23 27 24.如果我连接运行Raspian的Raspberry Pi,则会返回四个字节(18 20 23 27),并显示相同的症状。
我很高兴每个Telnet服务器运行良好,因为我可以使用标准的Telnet应用程序使用Telnet从我的Mac连接并登录到两个盒子,我也可以在每台计算机上Telnet到本地主机。我很高兴,因为我可以使用串行终端(任何)连接到互联网的Telnet资源,但是,当连接到Linux登录提示符时,我显然缺少某些东西,任何想法可能是什么?
亲切的问候
约翰
UPDATE:进一步的调查表明,我所看到的是来自服务器的尝试让我洽谈几个选项。我看到的字节每个都以FF开头(由于FF从监视中被滤除,最初没有注意到这一点)。的字节是Telnet协议的一部分,并且表示以下含义:
- FF FD 18注销
- FF FD 20的数据输入端子
- FF FD 27输出标记
- FF FD 24的终端类型
现在的问题是,我该如何回应?
通过打开telnet二进制文件的套接字级调试,可以获得有关该错误的更多信息。使用'telnet -d'或telnet会话类型'toggle debug'来启用和禁用调试。 –
Gaurav
正如问题中提到的,当使用telnet时,没有错误。而我的自制Telnet客户端在连接到Telnet BBS时工作正常,但是,当连接到Linux登录时,我会收到上述响应。我在想这是我不处理的某种应用协议。 –
通过快速搜索,似乎您可以通过“WONT”回复响应任何服务器的请求,即服务器:0xFF xx - 您:0xFF 0xFC xx。见例如[这里](http://mud-dev.wikidot.com/telnet:negotiation)。 – JimmyB