我一直试图想出一种在不使用端口转发或VPN服务的情况下建立P2P套接字连接的方法。
我知道TCP / UDP“打孔”方法,但是,为了这个目的,我不愿意在我的机器上设置和运行服务器24/7(除了我的网络在NAT后面... )。
我正在考虑在主机连接的URL上设置servlet代码,当客户端尝试连接时,它会要求servlet建立连接。
这是否合理和/或您是否可以帮助我开始(我以前从未编写过servlet代码)?
答案 0 :(得分:0)
我知道TCP / UDP“打孔”方法,但是,我不是 为此,我愿意在我的机器上24/7设置和运行服务器 (除了我的网络,无论如何都在NAT后面......)。
我在考虑在主机的URL上设置servlet代码 连接到,当客户端尝试连接时,它会询问 servlet建立连接。
如果你有一个servlet,那么它必须在服务器上全天候运行。因此,您只能在TCP / UDP打孔和使用servlet之间进行选择。
由于您支持NAT,因此您可能应该尝试通过多播解决连接问题。让对等方就IP多播地址达成一致,并将其私有IP地址相互通信。如果他们想建立直接的TCP连接,那就足够了。您不需要中央服务器/ servlet。