FTP SYST回答“Unix类型:L8”

问题描述 投票:2回答:1

我正在使用某种形式的FTP服务器,我注意到SYST命令的响应是“Unix Type:L8”。我想知道这究竟是什么意思,并发现在RFC 959中,SYST命令被定义为返回服务器操作系统的类型作为其响应的第一个字。那仍然没有告诉我“Type:L8”是什么意思。我真的想知道它意味着什么,因为那里有很多FTP服务器似乎给出了同样的响应。

unix ftp
1个回答
6
投票

我不知道它在哪里指定,但它表明服务器接受带有参数TYPE L8命令。

TYPE L就像TYPE I(二进制),但带有一个参数,表示一个字节中有多少位。设计FTP时,8位字节不像现在那样通用。同一RFC的3.1.1.4节涵盖了TYPE L并给出了一些例子。 (尽管如此,还是有很多未说明的。)

不再需要TYPE L了。如果您在客户端中实现TYPE I,那么您已经完成了所有您需要做的事情。服务器需要实现TYPE A作为默认模式,但不要在该服务器上投入太多工作,因为合理的客户端不会使用它。 (只需在发送时执行\n - > \r\n,在接收时执行反向操作)。

在djb的"FTP in practice" documentation中,他写道:

许多客户滥用SYST作为服务器功能的声明。当一些客户端在SYST响应中看到特定字符串时,它们会以相当奇怪的方式运行。某些客户端在SYST响应中看不到特定字符串时会禁用基本功能;这给服务器带来了严重的问题。我建议所有新服务器使用无意义的字符串响应SYST

215 UNIX Type: L8

与大多数当前服务器完全一样。

对我来说听起来不错。如果你是服务器,你应该说UNIX Type: L8,这意味着“是的,我是一个FTP服务器”,如果你是一个客户端,你不应该打扰SYST命令,因为响应没有告诉你什么。

© www.soinside.com 2019 - 2024. All rights reserved.