FTP4J 错误“您使用 IPv6 进行连接。PASV 仅适用于 IPv4。您必须改用 EPSV 命令”

问题描述 投票:0回答:0

我有问题,当我尝试使用 FTP4J 从 FTP 服务器下载文件时,我收到此错误消息:

您已使用 IPv6 连接。 PASV 仅适用于 IPv4。您必须改用 EPSV 命令

事情是,因为我在本地使用它们,所以我对所有这些都使用“localhost”,所以我不知道“IPv6”来自哪里

我使用以下设置:

客户:FTP4J
服务器:FileZilla 服务器 1.6.7

代码:

private static boolean ftpAltProxyTest() throws IllegalStateException, IOException, FTPIllegalReplyException, FTPException, FTPDataTransferException, FTPAbortedException {
    //Verbindung aufbauen
    FTPClient ftpClient = new FTPClient();
    ftpClient.connect("localhost", "21");
    ftpClient.login(ftpUser, ftpPass);

    if(!ftpClient.isAuthenticated()){
        ftpClient.disconnect(true);
        return false;
    }
  
    ftpClient.download("Test/Hallo.txt", new java.io.File("test/Hallo_FTP_ftp4j.txt"));

    ftpClient.disconnect(true);
    return true;
}

我在 Apache Commons Net 上遇到了同样的问题,但我可以用

ftpClient.setUseEPSVwithIPv4(true);
消除它,但在 FTP4J 中似乎没有类似的问题。

我错过了什么吗?

java ftp filezilla ftp4j
© www.soinside.com 2019 - 2024. All rights reserved.