Nic*_*sis 12
如果您需要更多详细信息,将简化此说明。它不完全准确,但它应该给你一个很好的解释。
它基本上是冒泡的。当您执行 ping x 时。如果您的计算机的路由表中没有地址 x,它会转到它的网关(如果您查看路由表,它将是具有目的地默认值的那个,或者0.0.0.0
)然后它会查看它的路由表,看看它是否有与此地址或 IP 范围匹配的路由,例如,如果它123.123.123.0/24
作为路由,它会将其发送到与该路由关联的任何 IP 地址。如果不是,它将与您的计算机执行相同的操作,请将其发送到默认路由。
例如,对于您的计算机,当您的 ISP 收到此信息时,这将结束,并将其发送到它知道具有该地址路由的任何对等方(或者也可能是,它们在该级别共享路由表)。然后发生相反的过程,它下降到更具体的范围,直到它到达有问题的计算机。
123.0.0.0/8
与关联地址 10.10.10.1)123.123.0.0/16
与关联地址 123.123.0.1)123.123.123.0/24
与关联地址 123.123.123.1)命令route
和traceroute
(tracert
对于windows)可能有助于更清楚地说明这一点。在 unix 上,这些命令有一个-n
选项,使它们显示地址而不是特定地址的 DNS 名称。
使用路由,我的默认路由是 show do 是:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 100 0 0 eth0
Run Code Online (Sandbox Code Playgroud)
这里的 IFACE 很重要,因为它告诉计算机什么网卡连接到这个位于 192.168.1.1 的路由器。我的电脑会通过eth0
网卡发送所有位置未知的数据包。