gpt4 book ai didi

networking - 如何在防火墙后面连接两个客户端?

转载 作者:行者123 更新时间:2023-12-03 09:46:01 26 4
gpt4 key购买 nike

在使用 Live Messenger 等即时消息应用程序或 Google Talk 的桌面客户端时,计算机可以在彼此之间传输文件。我不能肯定地说,但我相当肯定计算机之间传输的数据不会通过微软或谷歌的 IM 服务器,而是两台装有 IM 软件的计算机直接相互通信。我想知道客户端之间的这种直接连接是否或如何建立,以及我将如何自己实现类似的东西。

我有一些使用个人网络的经验,但我只了解客户端-服务器关系,其中服务器始终在监听(并且端口不会被防火墙阻止)并且客户端在需要数据时向服务器发出请求。

最佳答案

我使用了一个名为 Hamachi 的程序这有点像点对点 vpn(虚拟网络到网络)。然后我按原样编写客户端服务器应用程序。这是一种快速获得通过 Internet 连接的功能的方法,而无需处理 NAT 路由器所需的技巧。

如果您需要“正确”地进行操作,常用方法之一是 udp hole punching .当您发送 Web 请求时,您的防火墙知道期望返回数据作为响应。诀窍是客户端 A 和客户端 B 都联系 Internet 上的服务器。服务器将客户端 A 发出的请求的详细信息传递给客户端 B,反之亦然。一旦建立了初始连接,即使主服务器不再存在,它们也可以继续通信。

关于networking - 如何在防火墙后面连接两个客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1300898/

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