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

时间:2011-12-22 15:04:57

标签: java p2p nat

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

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

提前致谢。

1 个答案:

答案 0 :(得分:2)

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

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