2016-10-25 20 views
0

は、私はエラーメッセージが表示されました:無効なIPv6アドレス

エラーは、FTPサーバからファイルをダウンロードするに発生します。ftp://speedtest.tele2.net:無効なIPv6アドレス

このラインから:

String serverAddress = "ftp://speedtest.tele2.net"; 
FTPClient ftp = new FTPClient(); 
ftp.connect(serverAddress); 

私はそれについて何をすべきかわからない?

私が得た唯一のアドバイスは、このシステム特性についてですが、それは問題を解決しませんでした。

java.net.preferIPv4Stack -> true 
java.net.preferIPv6Addresses -> true 

誰でもアドバイスやレフェリーがありますか? ありがとうございます!

+0

はい、 'System.setProperty(" java.net.preferIPv6Addresses "、" false ");' を試しましたが、それは助けになりませんでした。 – AbsolutBeginner

答えて

4

をサイトがIPv6とIPv4の両方が利用可能な場合はIPv6が通常好ましい

$ dig AAAA speedtest.tele2.net -> 2a00:800:1010::1 
$ dig A speedtest.tele2.net -> 90.130.70.73 

に対処しています。 しかし、サーバはIPv4アドレスポート21に到達することができますが、IPv6アドレス、つまり一貫性のないFTPとDNSの設定では到達できません。

Javaからのエラーメッセージは、実際には悪いIPv6アドレスではありませんが、このアドレスに接続できないため、混乱しています。

+1

この説明をありがとう!これはIPアドレスで動作します。 – AbsolutBeginner

+2

可能であれば、そのサーバーの管理者に連絡して、セットアップが壊れていることを伝えてください:) –

0

おそらく、コードからそのプロパティを設定しても機能しません。プログラムを実行するとき

あなたは、コマンドライン引数としてプロパティを設定しようとしたことがあり:

java -Djava.net.preferIPv6Addresses=false -Djava.net.preferIPv4Stack=true -jar program.jar

+0

もし彼らが何かしたことをOPに尋ねると、答えよりもコメントのように聞こえる。言い換えれば "設定しようとしましたか..."を "設定しよう"とか同様のものにすることを考えてください – jonhopkins

関連する問題