java - java中使用p2p连接进行文件传输

标签 java p2p nat

我想使用 p2p 连接传输文件。将有一个服务器或任何公共(public)场所来共享 A 和 B 计算机的信息以建立连接。

我已经使用 LAN 创建了 p2p 连接。但我的问题是 - 对于互联网,我如何检测两台计算机的 IP 地址以进行套接字编程?或任何其他选项,以便我可以在两台经常更改 IP 地址的计算机之间传输文件?

提前致谢。

最佳答案

JXTA 是一个可以为您做到这一点的框架。我写了一本名为 Practical JXTA 的书,可以在 Scribd 上在线阅读。它包含完整的代码示例。您想要使用版本 2.6 或 2.7。

如果您不想使用框架,则当远程边缘对等点连接到它时,您的中央对等点应该能够读取远程边缘对等点的 NAT 转换地址(请参阅 Socket#getRemoteSocketAddress() )。但这对 TCP 没有帮助(为了简单起见)。如果您使用 UDP,那么您就有机会,因为一旦在 NAT 中打出 UDP 漏洞,许多对等方(通常)可以连接到它。

关于java - java中使用p2p连接进行文件传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8605739/

相关文章:

java - 根据 JComboBox 值从 xml 文件获取下一个兄弟值到 java 并在控制台打印

javascript - 如何以这样的方式呈现 JSP,即在该字段的下拉列表中选择复选框(不完全是使用 id 创建的复选框)

Python 套接字点对点

Java - 使用套接字连接到虚拟机而不是本地主机

python - 有没有办法在 Python 3 中用十六进制进行数学运算?

amazon-web-services - 如何将 NAT 实例置于自动缩放中?

java - 在 JEditorPane 中获取选定文本的字体

java - 如何使用带有外键的PreparedStatement

java - NAT 网络正在合并 session

php - PHP 中的任何 STUN/TURN/ICE 客户端库?