如果路由器上没有详细路由,或者主机配置了错误的默认网关,那么不同网络中两个端点之间的通信将无法进行。 图 1 显示 PC1 使用 R1 作为其默认网关。 同理,R1 使用 R2 作为其默认网关或最后选用网关。

如果主机需要访问本地网络以外的资源,则必须配置默认网关。 默认网关是通向本地网络之外目的地的路径上的第一个路由器。

故障排除示例 1

图 2 显示了可检验是否存在 IPv4 默认网关的 show ip route Cisco IOS 命令和 route print Windows 命令。

在本示例中,R1 路由器具有正确的默认网关,即 R2 路由器的 IPv4 地址。 但是,PC1 具有错误的默认网关。 PC1 应该拥有 R1 路由器 10.1.10.1 的默认网关。 如果 PC1 上手动配置了 IPv4 编址信息,则该默认网关必须手动配置。 如果 IPv4 编址信息是从 DHCPv4 服务器自动获取的,那么必须检查 DHCP 服务器上的配置。 DHCP 服务器上的配置问题通常可由多个客户端查看。

故障排除示例 2

在 IPv6 中,可手动配置或使用无状态自动配置 (SLAAC) 或 DHCPv6 配置默认网关。 使用 SLAAC 时,默认网关由路由器使用 ICMPv6 路由器通告 (RA) 消息通告给主机。 RA 消息中的默认网关是路由器接口的本地链路 IPv6 地址。 如果在主机上手动配置默认网关(不太可能),默认网关可设置为全局 IPv6 地址或本地链路 IPv6 地址。

如图 3 所示,show ipv6 route Cisco IOS 命令显示 R1 上的 IPv6 默认路由,而 ipconfig Windows 命令用于检验是否存在 IPv6 默认网关。

R1 有一个通过路由器 R2 的默认路由,但请注意,ipconfig 命令显示 IPv6 全局单播地址和 IPv6 默认网关缺失。 PC1 启用了 IPv6,因为它具有 IPv6 本地链路地址。 本地链路地址由设备自动创建。 在检查网络文档时,网络管理员确认了此 LAN 上的主机应该正在从使用 SLAAC 的路由器接收其 IPv6 地址信息。

注意:在本示例中,同一 LAN 上使用 SLAAC 的其他设备也会在接收 IPv6 地址信息时遇到相同问题。

使用图 4 中的 show ipv6 interface GigabitEthernet 0/0 命令,可以看到虽然接口有一个 IPv6 地址,但它不是全部由 IPv6 路由器组成的组播组 FF02::2 的成员。 这意味着路由器在此接口上并未发出 ICMPv6 RA。 在图 5 中,使用 ipv6 unicast-routing 命令将 R1 作为 IPv6 路由器启用。 现在 show ipv6 interface GigabitEthernet 0/0 命令显示 R1 是 FF02::2(全部由 IPv6 路由器组成的组播组)中的成员。

要检验 PC1 是否已设置默认网关,请在 Microsoft Windows PC 上使用 ipconfig 命令,或在 Linux 和 Mac OS X 上使用 ifconfig 命令。 在图 6 中,PC1 具有 IPv6 全局单播地址和 IPv6 默认网关。 默认网关已设置为路由器 R1 (FE80::/1) 的本地链路地址。