FTP对PASV命令的错误响应

时间:2013-02-17 21:11:16

标签: ftp passive-mode

为什么某些FTP被动模式响应有时会因关闭括号的方式而改变。

我希望对PASV命令的FTP响应为:

227 Entering Passive Mode (h1,h2,h3,h4,p1,p2)\r\n

相反,我得到了:

227 Entering Passive Mode (h1,h2,h3,h4,p1,p2\r\n\r\n

结束括号,另外还有\ r \ n而不是

我正在为专有平台编写软件,而我正在使用我无法修改的FTP库。如果没有那个结束,那个图书馆显然不起作用。

从Internet访问服务器(在NAT中)时会出现此问题。在本地网络中,结束括号就在那里。

示例:从LAN我得到:

227 Entering Passive Mode (h1,h2,h3,h4,p1,p2)\r\n

其中h1,h2,h3,h4是私有IP地址h1.h2.h3.h4

来自互联网:

227 Entering Passive Mode (h1,h2,h3,h4,p1,p2\r\n\r\n

其中h1,h2,h3,h4是公共IP地址h1.h2.h3.h4,但请注意缺少的结束括号和其他\r\n

尝试了IIS FTP和Filezilla,结果是一样的。此外,IP地址和端口是正确的(我已经通过在该IP /端口上打开另一个telnet连接来测试它。)

不幸的是,我没有关于服务器所在网络的更多细节。

这种行为可能是什么原因?路由器,防火墙?可以解决吗?我排除了FTP服务器本身,因为从服务器本地网络内部连接时响应是正确的。

谢谢。

0 个答案:

没有答案