【发布时间】:2016-04-19 00:13:51
【问题描述】:
我遇到桌面应用程序 (c#) 客户端需要从服务器接收连接的情况。为了避免强制客户端在其 NAT 中打开端口,有人建议改用客户端发起的 http 持久连接。我不确定这是不是正确的解决方案,但它似乎有点滥用这个 http 扩展。这个解决方案可以吗,还是我应该研究一下更好的替代方案?
【问题讨论】:
-
要通过 NAT 接收入站连接,必须在 NAT 上打开一个端口并映射到目标 PC。如果在 NAT 上启用了 uPNP,则目标应用程序可以通过编程方式打开和映射端口,否则 NAT 管理员必须打开端口。另一种选择是改为建立出站连接。它不必位于 HTTP 端口(尽管这是最常用的端口,因为大多数 NAT/防火墙允许到端口 80 的出站连接以允许 Web 浏览器流量),并且接收服务器不必是 HTTP 服务器.
-
*护脸,对。我可能想多了
-
顺便说一句,您的评论可以作为答案