使用私有ips从客户端向Web服务器发送HTTP请求

时间:2014-12-24 00:10:26

标签: http request response

我很好奇为什么私有路由器(或网关,无论如何使用私有IP,例如192.168.xx.xx)后面的客户端(基于android或c#的程序等)可以从对http的请求获得响应服务器

我知道这有效,但只是想知道如何。

回复响应的客户端是否需要端口转发,除非它没有使用公共IP?

1 个答案:

答案 0 :(得分:0)

他不需要端口转发。 这可以通过使用路由器中配置的NAT或PAT(网络地址转换或端口地址转换)来实现,主要由边缘路由器中的ISP配置。

-EDIT(添加了更多解释):

边缘路由器具有一些公共IP(主要是IP池),配置为在Internet(公共网络)中进行通信。 当来自具有私有IP的内部网络的请求需要并且将源IP(私有IP)更改为已配置的公共IP之一时,因此请求看起来像是由路由器本身做出的。

通常还会附加一个端口号,并将其保存在数据库表(路由器中的本地数据库)中,并使用最初发出请求的设备的私有IP,并将请求转发到Internet。

然后,当该路由器中的公共服务器收到响应时,它将通过端口将其映射到之前已将其保存在本地数据库中的私有IP,因此它将知道它最初属于谁,并将转发那到IP