IPv6地址无效

Abs*_*ner 3 java ftp ftp-client ipv6 apache-commons-net

我收到了错误消息:

从ftp服务器下载文件时出错:ftp://speedtest.tele2.net:IPv6地址无效

从这条线:

String serverAddress = "ftp://speedtest.tele2.net";
FTPClient ftp = new FTPClient();
ftp.connect(serverAddress);
Run Code Online (Sandbox Code Playgroud)

我不明白该怎么办?

我得到的唯一建议是关于这个系统属性,但这并没有解决问题.

java.net.preferIPv4Stack -> true
java.net.preferIPv6Addresses -> true
Run Code Online (Sandbox Code Playgroud)

有人得到建议或推荐吗?非常感谢你!

Ste*_*ich 6

该站点具有IPv6和IPv4地址

$ dig AAAA speedtest.tele2.net -> 2a00:800:1010::1
$ dig A speedtest.tele2.net    -> 90.130.70.73
Run Code Online (Sandbox Code Playgroud)

如果可用,通常首选IPv6.但是,虽然可以通过IPv4地址端口21访问服务器,但无法通过IPv6地址访问服务器,即FTP和DNS的设置不一致.

来自Java的错误消息令人困惑,因为它实际上不是IPv6地址,但它无法连接到此地址.

  • 谢谢您的澄清!它适用于IP地址。 (2认同)
  • 如果可能的话,请联系该服务器的管理员告诉他们他们的设置已损坏:) (2认同)

小智 6

尝试使用没有“ftp://”的地址

String serverAddress = "speedtest.tele2.net";
Run Code Online (Sandbox Code Playgroud)