Http服务器如何区分路由器后面的计算机

穆罕默德·乌默(Muhammad Umer)

HTTP服务器通常在端口80上运行。然而,当今大多数NAT路由器都将端口分配给传出的请求,因此它们应该知道,当请求返回时,应该连接的是哪台计算机。他们这样做是因为即使路由器后面的所有计算机都被赋予了公共IP地址,而它们是本地IP地址,它们也只能使用一个公共IP。这意味着它们仅适用于该路由器后面的每个人。

那么服务器如何处理这个问题。它仅在端口80上工作,并且路由器根据可用端口和编程方式在其希望执行的任何端口上发送。

我的理解:

  1. 计算机A到路由器。22.22.22.22.22:80

  2. 通往世界的路由器:12.68.191.1.102:1-ISP给出了IP地址:用于区分与其连接的计算机的端口。

怎么办

也许端口和源端口之间存在差异。

大卫·施瓦兹(David Schwartz)

您混淆了源端口和目标端口。当请求发送到HTTP服务器时,目标端口是80,因为这是Web服务器通常侦听的端口。NAT路由器可以选择所需的任何源端口。当他们收到答复时,他们将使用目标端口(和其他信息),该端口应与为出站数据包选择的源端口相匹配,以了解数据包与哪个连接相关联。

您的计算机必须执行相同的操作。假设您启动了两个不同的浏览器,并且每个都指向superuser.com您认为您的计算机如何判断传入数据包属于哪个TCP连接?

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

连接到路由器后面的家用计算机

连接到我无法控制的路由器后面的计算机

SSH到防火墙和路由器后面的计算机

将数据包发送到路由器后面的计算机

如何防止一台计算机访问路由器后面的另一台计算机?

Cisco路由器后面的Exchange服务器

如何从同一网络连接到路由器后面的交换机后面的计算机?

通过NAT后面的远程服务器访问远程计算机

如何将NAT路由器后面的客户端连接到NAT路由器后面的Asterisk服务器?

在路由器上或在路由器后面的专用计算机上运行openvpn的安全性更高?

在路由器隐藏的计算机与管理连接的服务器之间实现直接TCP链接

如何在路由器后面的笔记本电脑和服务器之间进行SSH

如何通过SSH进入路由器后面的家庭网络中运行的服务器?

来自远程服务器的IP数据包如何“找到” NAT防火墙后面的家用计算机?

保护对NAT路由器后面的本地服务器的远程访问

在NAT后面的DD-WRT路由器上设置VPN服务器

NAT路由器后面的Web服务器无法访问

无法使用 SSH 连接到路由器后面的 Ubuntu 服务器

如何将流量从ssh服务器路由到我的本地计算机?

路由器后面的2台计算机能否在没有代理的情况下相互连接

将第二台路由器后面的计算机连接到局域网的其余部分

在路由器后面设置SSH服务器

向路由器后面的设备发送HTTP请求

灰烬JS | ember如何区分路由器资源和路由?

如果我有两个路由器,计算机如何选择要使用的路由器?

使路由器成为Ubuntu计算机

计算机连接到错误的路由器

无法从域计算机访问路由器

如何在NAT路由器后面使用DNS服务器