gpt4 book ai didi

java - JAVA写FTP客户端时如何使用PORT命令

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:55 24 4
gpt4 key购买 nike

我正在尝试使用 java 编写 FTP 客户端。

据我所知,当我需要建立 Activity 连接时,我需要使用 PORT 命令发送我的 IP 地址,但是,我如何获得该 IP 地址?

我正在尝试做这样的事情,但显然是错误的:

ServerSocket ssock = new ServerSocket();
ssock.bind(null);
ssock.ssock.getLocalPort();
ssock.getInetAddress();

最后一行返回 null。

那么我怎样才能将我的 IP 地址和端口发送到服务器呢?

谢谢。

最佳答案

您需要先连接,然后调用socket.getLocalAddress() 获取正确的本地地址。当您有多个 IP 时,您只有在建立连接后才知道到达特定目的地的正确地址。

Sun JRE 带有一个 FTP 客户端 sun.net.ftp.FtpClient。您可以查看他们是如何做到的。

随着 NAT 和代理的广泛使用,PORT 命令很少起作用。您应该先尝试被动模式。如您所见,Sun 的客户端仅在 PASV 失败时执行 PORT。

关于java - JAVA写FTP客户端时如何使用PORT命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1870593/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com