Tcp:公共远程端点但是私有本地端点?

时间:2017-12-10 00:25:08

标签: c# tcp

我的情况看起来像这样:我转发了我的路由器上的端口80,它连接到互联网并将其链接到我的电脑。在我的电脑上,我正在运行一个C#程序(我使用类 HttpListener ),该程序记录正在进行的每个TCP连接。它打印时间戳,远程端点和本地端点。

我希望,当我的远程端点是公共 ip时,我的本地端点是来自路由器的公共IP

但是在我的日志文件中我发现了这个

62.143.189.207(远程),192.168.178.25(本地)

任何人都可以说,这怎么可能?

1 个答案:

答案 0 :(得分:1)

您的应用程序是绑定到PC上网络接口的http侦听器。

您的所有网卡都知道您的本地IP地址。它实际上并不知道路由器上面向公众的地址。

当请求进入时,路由器正在执行地址转换,将端口80流量引导到您的PC,从而将流量返回到客户端。