在Unix中做了一个socket,用windows下的telnet登录到该端口的时候,每按一个键就会发送到socket中去,而在Unix下的telnet,则一直到按下回车后再发送到socket。这样导致socket中的命令分解。
- 在win下用telnet发送,就遇到上述问题,按一字符即发送至服务端,而服务端收到数据,即时反应,没有针对回车换行符之类特殊处理。导致无法发送完整数据。若在unix平台下,telnet下输入后,只有回车后,才会发送至服务端,不存在这个问题。
- 研究了win下的telnet许久,无设置全双工半双工工作模式的地方,未发现解决方法,但是突然想起telnet协议的send命令可发送数据串,一试,果然可行。在命令行窗口下操作如下:
- telnet ip port
- ^]进入命令模式(ctrl + ])
- send aaaaaaaaaaaaaaaaa
- 即可成功将成串数据发送至主机。