我正在尝试使用被动ftp ftp文件但是在调用put
命令时我得到超时(12002)。
我可以将被动ftp与其他ftp站点一起使用,但不能使用这个新站点。
我在同一台服务器上尝试过三种不同的方式:
- FileZilla Client处于被动模式 - 这可以正常工作
- 被动模式下的WinINet图书馆 - 调用PutFile
时出现超时- 处于被动模式的IE 6 - 尝试目录列表时出现超时
这是在Windows 2000服务器上。
我认为自FileZilla工作以来我的防火墙设置正确。
任何人都可以帮我弄清楚发生了什么事吗?
答案 0 :(得分:1)
在被动模式下,FTP服务器在其末端打开一个端口,并告诉FTP客户端它需要连接的IP /端口。在客户端,它创建一个新套接字,将其绑定到本地IP /端口(通常是随机IP /端口,除非另有配置),并连接到服务器的指定IP /端口。如果没有实际看到来自网络数据包嗅探器(如Wireshark)的跟踪日志,那么我猜测客户端上的防火墙/路由器阻止出站连接,或者服务器端的防火墙/路由器阻止入站连接。 FileZilla正在通过OK的事实可能意味着连接两端的IP /端口对恰好匹配两端接受连接的所有防火墙/路由器规则,而WinInet / IE IP /端口对中的东西是被拒绝了。这有点不寻常,因为被动模式往往比活动模式更多的防火墙/路由器友好。您是否尝试过使用Windows的命令行ftp.exe实用程序来查看它是否有效?顺便说一句,IE使用WinInet进行所有连接。