如何在java中自动端口转发?

Posted

技术标签:

【中文标题】如何在java中自动端口转发?【英文标题】:How to port forward automatically in java? 【发布时间】:2015-11-04 06:01:30 【问题描述】:

我知道 Bit Torrent 客户端使用自动端口转发(必须配置路由器的端口转发),以便它们可以相互连接。我希望我的应用程序中的用户能够托管服务器而无需配置路由器。所以我想知道您将如何在 java 中这样做?

【问题讨论】:

【参考方案1】:

您可以使用 UPnP(通用即插即用)端口转发。提到的一个库是 Cling,但还有更简单的库 - WaifUPnP,它允许您转发一个端口,只需一行:

UPnP.openTCP(portnumber);

【讨论】:

【参考方案2】:

UPnP 是您的朋友。这是一种标准化方法,允许自动配置路由器以转发端口。有几种不同的方法可以做到这一点。在 Java 下支持 UPnP 的一个包是 Cling。 http://4thline.org/projects/cling/

【讨论】:

【参考方案3】:

UPnP 协议可以处理自动端口转发。 试试这个库(Cling - Java/android UPnP 库和工具): http://4thline.org/projects/cling/

【讨论】:

以上是关于如何在java中自动端口转发?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Java SDK 使用 AWS 端口转发会话

用Nginx做端口转发(反向代理)

用Nginx做端口转发(反向代理)

SSH进行端口转发

自动端口转发 (UPnP ?) C++

Linux下80端口转发,请帮助