首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >网关路由器如何将数据包发送到其本地网络中的主机(仅具有私有IP地址,如192.168.2.101)?

网关路由器如何将数据包发送到其本地网络中的主机(仅具有私有IP地址,如192.168.2.101)?
EN

Stack Overflow用户
提问于 2021-04-25 21:28:13
回答 1查看 57关注 0票数 1

当我从连接到家庭wi-fi路由器的一台计算机向web服务器发送请求时,响应包如何找到返回到我的计算机而不是另一台计算机的路径?我的本地网络中的所有计算机都只有一个公用IP和不同的专用IP (从192.168开始...)-但传出IP数据包中的源地址将是该公用IP,因此响应数据包的目标IP也将是该公用IP。内网IP (如192.168.2.101)信息存放在哪里?

EN

Stack Overflow用户

发布于 2021-04-26 07:18:38

多亏了NAT,多个私有IP地址可以共享一个公网IP。

TCPUDP中,每个数据包都包含一个源IP和一个源端口(以及一个目的IP和端口)。当内网机器向公网服务器发送请求时,NAT设备/路由器会将请求包中的私有源IP+source端口覆盖为路由器的公网IP和某个唯一的端口,并将原始源IP+port对和被覆盖的源端口保存在转换表中。远程服务器响应router+overwritten端口号的公网IP,路由器根据被覆盖的端口号在转换表中进行查找,将原私有ip+port放入应答报文中,发送给私有机(原IP+port)。图片来自维基百科:

(more detailed on Wikipedia)

所以答案是:路由器上的转换表可以区分本地网络中的计算机,并将响应发送到正确的本地计算机。

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67253918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档