数据包如何到达目的地?

Fri*_*Kim 7 networking internet

在路由器网络内,可以轻松路由所有包裹。路由器知道所有客户端。然而,在互联网上,有这么多的IP地址。

我从我的计算机向 IP 1.2.3.4 发送一个数据包。它到达路由器。它根据其规则检查它,并发现这不在本地网络上。然后它通过以太网端口路由它。接下来发生什么?然后它到达服务器,服务器发送一个数据包作为回报。最后它到达路由器。路由器如何知道将其发送到哪台计算机(我的)?

Mic*_*l P 8

简而言之,当路由器不知道如何路由数据包时,它会将数据包发送到默认网关/下一个“跃点”。

基本上,当您的路由器找不到有效规则(或更正式地说,它是路由表)时,它会将数据包发送到默认网关,默认网关通常会将其向上发送到您的 ISP。

一旦数据包到达您 ISP 的路由器,就像您自己的路由器一样,它们将拥有自己的路由表。但这次他们会更详细。了解其他客户和其他 ISP。

这将一直持续到最后一个路由器附加了最终目标规则,将其发送到特定的计算机/接口。

一直以来,数据包都包含指示原始数据包来自何处的源信息。您的路由器(可能带有 NAT)会将此源信息从您本地机器的内部 IP 地址(例如 192.168.1.25)转换为您的 ISP 提供给您的WAN IP 地址(例如 121.147.148.55),并且此 WAN IP 将是包的源信息中包含的内容。

因此,所有上游路由器都可以简单地执行与上述相同的路由,但反过来将您的数据包发送回给您。但是,一旦它到达您的路由器。你的路由器有它自己的特殊规则,知道应该使用它的内部 IP 地址将某个数据包转发回你的本地机器。这称为网络地址转换

  • @FriendofKim 是的,您的 ISP 将根据其路由表知道要发送您的请求的物理电缆(这对您的 ISP 的 ISP 及其 ISP 等重复)。然而,这可能不一定是物理上的“最短”路径。在大多数情况下,路由表是手动制作的,主要 ISP 的网络工程师会考虑许多变量,例如连接成本、可用带宽、稳定性等。 (2认同)