如何从公共端创建nat上的套接字连接

时间:2015-04-17 01:14:53

标签: sockets client server nat

我觉得这个问题最好从场景的简化版本开始。

服务器A连接到公共互联网。 服务器B位于专用网络中,使用网络地址转换连接到Internet。 我拥有两台服务器,可以在其上编辑软件。 我知道服务器和nat路由器的ip地址。

使用Winsock,我需要在它们之间建立连接。如果从服务器B启动连接,我对winsock知之甚少,但我需要服务器A来启动连接。

如果可能的话,我想避免使用额外的库,因为在我看来我只需要弄清楚启动连接时需要使用的ip和端口服务器。

我需要哪些其他信息,如何获取,以及如何根据信息采取行动。

注意:我调查了其他类似问题,但没有一个问题解决过这个问题。我不确定是否应该在服务器故障或其他网站上询问过这个问题,但如果是这样,请在标记为“关闭主题”之前说出哪一个而不是无言地关闭问题。

1 个答案:

答案 0 :(得分:0)

您需要在NAT设备上将端口转发设置为专用网络上的计算机。确切的步骤是设备/制造商特定的,但这是一般的想法:

选择一个端口号,配置NAT设备,以便将与其公共IP和该端口的连接转发到您的专用服务器的IP以及您的应用程序正在侦听的端口。