假设 IP 地址为 192.168.10.10 的 PC1 要将数据包发送到同一网络的另一台主机。 PC1 根据目的 IP 地址检查 IPv4 路由表。 然后,PC1 发现此主机位于同一网络,于是只使用自身接口 (On-link) 发送数据包。

注意:R1 并不参与数据包的传输。 如果 PC1 将数据包转发至本地网络外的任何其他网络,则它必须使用路由器 R1 的服务,将数据包转发至其本地默认路由 (192.168.10.1)。

以下示例说明了主机和路由器如何通过查询各自的路由表做出数据包路由决策:

示例 1:PC1 要验证到其默认网关 192.168.10.1(路由器接口)的连通性:

1. PC1 根据目的 IP 地址查询 IPv4 路由表。

2. PC1 发现此主机位于同一网络,于是只是使用其自身接口 (On-link) 发送 ping 数据包。

3. R1 在 Gigabit Ethernet 0/0 (G0/0) 接口接收数据包,并查看数据包的目的 IP 地址。

4. R1 查询其路由表。

5. R1 将目的 IP 地址与 L 192.168.10.1/32 路由表条目进行匹配,发现该路由指向其自身的本地接口,如图 1 所示。

6. R1 打开 IP 数据包的剩余部分,并做出相应响应。

示例 2:PC1 要发送数据包到 PC2 (192.168.11.10):

1. PC1 咨询 IPv4 路由表,发现没有完全匹配。

2. 因此,PC1 使用全路由网络 (0.0.0.0),并使用本地默认路由 (192.168.10.1) 发送数据包。

3. R1 使用 Gigabit Ethernet 0/0 (G0/0) 接口接收数据包,并查看数据包的目的 IP 地址 (192.168.11.10)。

4. R1 查询其路由表并将目的 IP 地址与 C 192.168.11.0/24 路由表条目匹配,如图 2. 所示。

5. R1 通过其直连 Gigabit Ethernet 0/1 接口 (G0/1) 转发数据包。

6. PC2 接收数据包并查询其主机的 IPv4 路由表。

7. PC2 发现自己是此数据包的目的设备,于是打开数据包的剩余部分,并做出相应响应。

示例 3:PC1 要发送数据包到 209.165.200.226:

1. PC1 查询 IPv4 路由表,发现没有完全匹配项。

2. 因此,PC1 使用默认路由 (0.0.0.0/0),并使用默认网关 (192.168.10.1) 发送数据包。

3. R1 使用 Gigabit Ethernet 0/0 (G0/0) 接口接收数据包,并查看此数据包的目的 IP 地址 (209.165.200.226) 。

4. R1 查询其路由表,并将目的 IP 地址与 C 209.165.200.224/30 路由表条目进行匹配,如图 3. 所示。

5. R1 会将数据包从其直连 Serial 0/0/0 接口 (S0/0/0) 转发出去。

示例 4:PC1 要发送数据包到 IP 地址为 10.1.1.10 的主机:

1. PC1 咨询 IPv4 路由表,发现没有完全匹配。

2. 因此,PC1 使用全路由网络 (0.0.0.0),并将数据包发送至其本地默认路由 (192.168.10.1)。

3. R1 使用 Gigabit Ethernet 0/0 (G0/0) 接口接收数据包,并查看此数据包的目的 IP 地址 (10.1.1.10)。

4. R1 查询其路由表并将目的 IP 地址与 D 10.1.1.0/24 路由表条目进行匹配,如图 4 所示。

5. R1 发现它必须将数据包发送到下一跳地址 209.165.200.226。

6. R1 再次查询其路由表并将目的 IP 地址与 C 209.165.200.224/30 路由表条目进行匹配,如图 4 所示。

7. R1 会将数据包从其直连 Serial 0/0/0 接口 (S0/0/0) 转发出去。