networking - 如何在不需要任何重定向配置的情况下使 TCP 服务器在路由器 (NAT) 后面工作

标签 networking tcp p2p nat

场景如下。我有两台机器A和B: A:客户端(在 NAT 后面) B:服务器(NAT后)

我希望 B 能够监听任何给定端口,以便 A 可以通过该特定 TCP 端口向 B 发送数据包并接收任何响应。如果两台机器都不在 NAT 后面,则过程非常简单。然而,我如何让它工作,以便即使 B 在路由器后面也能工作,而无需他去更改路由器配置启用一些端口转发等...

例如,在用户无需进行任何配置的情况下,像 Torrent 客户端这样的点对点程序如何工作?

最佳答案

回答点对点程序的例子,一般来说:有一种技术叫做 Universal Plug and Play NAT 路由器可以使用哪些 NAT 路由器允许它们后面的客户端向外部公开端口。这就是 bittorrent 客户端可以使用的内容,以便其他客户端可以直接连接到它们。

关于networking - 如何在不需要任何重定向配置的情况下使 TCP 服务器在路由器 (NAT) 后面工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1511562/

相关文章:

java - UPnP 打印机设备发现

windows - WMI EnableDHCP 在断开连接的适配器上失败

c - 为什么要限制与套接字交互的 C 标准 I/O 流?

android - 通过互联网从应用程序发送和接收数据

java - 您可以将哪些高级功能添加到任何通用应用程序中?

java - 如何在同一台机器上用Java测试广播udp包?

java - 如何在 Java 中将 TCP 发送按钮放入循环中?

tcp - 如何从它的 TCP header 中检测 Telegram 协议(protocol)?

iphone - GKSession - 如果我关闭蓝牙和 Wi-Fi 怎么办?

.net - Windows Metro 应用程序中没有 P2P?