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

How to port forward automatically in java?

我知道比特流客户端使用自动端口转发(必须配置路由器的端口转发)以便它们可以相互连接。我希望我的应用程序中的用户无需配置路由器即可托管服务器。所以我想知道在 java?

中你会怎么做

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

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

您可以使用 UPnP(通用即插即用)端口转发。提到的一个库是 Cling, but there's much simpler library - WaifUPnP,它允许您仅用一行转发端口,例如:

UPnP.openTCP(portnumber);