gpt4 book ai didi

java - UDP 打洞 (Java)

转载 作者:搜寻专家 更新时间:2023-10-31 20:34:10 25 4
gpt4 key购买 nike

几周来我一直在尝试创建套接字聊天/文件传输应用程序。我花了几个小时在互联网上搜索一段关于 UDP 打洞的代码,但我没有找到任何有效或足够简单供我使用的代码。

我正在尝试让路由器 (NAT) 后面的两个客户端相互连接。我已经设法设置了一个共享两个客户端 IP 和端口的服务器,但我还没有设法真正启动连接。有任何我可以使用的源代码吗?

我找到了几个像 JStun 这样的 STUN/ICE/TURN 库,但是没有关于如何使用它们的文档。我需要一个 STUN 服务器来启动连接吗?我可以使用像 numb.viagenie.ca 或 http://www.stunserver.org/ 这样的公共(public)网站吗? ?

任何答案将不胜感激。谢谢!

编辑:我仔细研究了一下,发现即使通过 PHP 也很容易制作 STUN。我已经设置了我自己的 PHP stun,它只共享两个客户端数据。困难的部分是连接两个客户端,但这使用了一种叫做 ICE 的东西。感谢发布 this 的 selbie在评论中。这让我走上了 ICE 的正确轨道。如果有人想出任何其他问题,我会把这个问题悬而未决。我将开始编写我自己的 ICE 代码,或者尝试在网上寻找一些东西。谢谢!

最佳答案

可以在此处找到纯 Java 中的 UDP 打洞示例: https://github.com/lklacar/java-hole-punching

不再维护,但这里有一个 STUN 过程等的框架: https://github.com/htwg/UCE

我已经尝试让 UDP 打洞与 Java 客户端和 PHP 服务器一起工作,但还不能让它工作。如果你有,你可以与我们分享并回答以下问题: Java-Client PHP-Server UDP Hole Punching example code

关于java - UDP 打洞 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25465334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com