所以我的问题就是,我完全无法连接到 FTP 服务器,这种情况我以前从未见过。情况如下:
- 在执行 MLSD 命令后我收到“连接超时”信息。
- 我通常在 Ubuntu 下使用 Filezilla,但为了确保问题与这个特定的客户端无关,我尝试了其他几个:ubuntu 上的 gftp 和 Windows 7 上的 winscp 和 freeftp。结果都一样。
- 还确保尝试了主动或被动模式。结果相同。
- 此时,我倾向于认为我当前的网络出了问题(此外,据同事说,FTP 服务器没有问题)。但我确实检查了http://ftptest.net/并且我能够获取目录列表(无法通过 FTP 客户端获取)。
所以最后我最后没有尝试的是使用另一个网络,这个解决方案似乎可行,但从长远来看并不实用。因此我猜我的路由器有问题...但可能是什么问题呢?
注意:我确实尝试先在 filezilla 的论坛上注册并发布这个问题...但我无法使用 gmail 或 hotmail 帐户创建帐户。WTF?
答案1
根据 FileZilla 管理员的说法,问题可能出在您的路由器上(尽管您可能对此无能为力),并且如果 MLSD 超时,他们不会修复它以返回到 LIST。请参阅:http://forum.filezilla-project.org/viewtopic.php?f=2&t=11405&start=15
解决方案:尝试 Core FTP 或类似程序。您不太可能说服固执的 FileZilla 人员添加(极其简单的)变通选项 - “如果 MLSD 超时则返回到 LIST”。
或者,既然它是开源的,看看你或其他人是否可以自己进行更改并编译。我想如果你尝试提交更改以添加到官方版本中,他们会拒绝它,但也许我们会感到惊喜。
答案2
经过长时间的搜索,解决方案很简单:
转到Site Management
,选择有问题的站点。选择选项卡Transfer Settings
并选择Active
而不是Default
。
答案3
我发现问题在于加密当我将其更改为“仅使用普通 FTP(不安全)”时,它运行完美!
FileZilla对我来说太熟悉了,每次更新都需要我去查找bug。
答案4
只是想让人们知道我是如何做到这一点的。
由于 MLSD 超时,问题也可能出在路由器上。
我买了一个新的华硕路由器,但我错误地转发了被动模式的端口。我有一台 qnap NAS,我在被动模式下连接到 ftp 上的端口 21 和端口 xxxxx:xxxxx。在我的华硕路由器中,我现在正确设置了端口转发(虚拟服务器),它又可以正常工作了。我的 FTP 在端口 21 上正确转发到我的 NAS IP,只是标准的东西。问题在于我的 NAS 也想使用的被动端口。
我在端口转发部分执行了此操作(华硕路由器中称为虚拟服务器):
服务名称:Whateveryoulike
端口范围:您的设备将使用的被动端口(Qnap 的标准端口为 55536:56559)
本地 IP:设备的本地 IP(例如 192.168.0.xxx)
本地端口:留空
协议:两者皆可
添加
申请
轰!我们成功获取上行链路。
问题可能出在其他方面,但是这解决了我的超时问题,现在一切正常。