Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

故障排除

 

生活中的事情可能不会根据计划–进行,BGP 网络也不例外。当您开始使用安全路由表并在网络中部署 RPKI 时,客户可能会注意到,在少数情况下,他们想访问的某些网络或 IP 地址变得不可达。

本章讨论您可以执行哪些步骤,了解已报告的问题是否是路由安全实施的结果。不要期望全面 BGP 故障排除教程、只是一些提示和技巧,以及一些有关在何处找到可供使用的附加信息的指针。

Note

故障排除 BGP 的一个好切入点是瞻博网络技术库:https://www.juniper.net/documentation/en_US/junos/topics/task/verification/bgp-configuration-process-summary.html.

检查路由表中是否存在目标

Junos OS 使用两个数据库(表)来提供路由信息:

  • 路由表:包含所有路由协议 [筋] 了解的所有路由信息。

  • 转发表:包含实际用于转发数据包的路由 [FIB]。

Junos OS 将路由表中的所有活动路由都安装到转发表中。活动路由是用于将数据包转发到目的地的路由。Junos 操作系统内核维护转发表的主副本。它会将转发表复制到数据包转发引擎,该组件负责转发数据包。

如果客户表示某个前缀可能无法到达,则需要将路由检查为该前缀。为了确保路由已安装且目标可从您的网络中访问,您应在路由和转发表中查看。

检查不同表的方法有三种:

  • show route <destination-prefix>可以:这将显示路由表条目。

  • show route forwarding-table destination <destination-prefix>可以:这将在转发表中显示路由引擎的目标前缀版本。

  • show pfe route ip prefix <destination-prefix>可以:这将显示每个 PFE 中实际安装的转发表条目。

在完美的世界中,目标前缀将在所有三个场景中可见,并应显示 RPKI valida-tion-state: valid如果它具有有效的 ROA 并通过 RPKI 验证。

检查路由的 RPKI 验证状态

为了检查是否使用了路由,在配置 RPKI 路由验证时,必须能够显示有关路由验证数据库的信息。您可以查询与给定前缀匹配的所有路由验证记录,或者 origin-autonomous-system. 此外,您可以通过特定 RPKI 缓存会话过滤输出:

验证状态可以是 RFC 6811 中定义的任何状态:

  • Valid

  • 无效

  • 清楚

此外,另一种状态是“指根本不运行验证”:

未验证的不同于未知的;如果尝试验证,则未验证的路由可能是有效、无效或未知的。未验证的基本上意味着原始验证(RPKI)根本’未启用或’未在您的路由器上运行。

Note

有关其他命令,请访问 Juniper 技术库:https://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/show-validation-database.html

检查 RPKI 验证程序是否可访问以及数据库是否处于最新状态

显示验证统计信息

此命令显示有关验证数据库的统计信息。显然,如果您已启用 RPKI,并且与验证器的连接正常工作,则应看到数据库中的条目:

技术库参考:https://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/show-validation-statistics.html.

显示验证数据库

此命令向您显示数据库的实际内容:

技术库参考:https://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/show-validation-database.html.

显示验证会话

如果您的验证数据库为空或您想要检查验证器是否仍处于运行状态,则可以使用 show validation session briefshow validation session detail指令

请注意,此输出中的第三个会话显示 connect而不是 up. 这很有可能是在同一 RPKI 组下配置所有三个会话的结果。如果您这样做,如果您’不更改每个组的最大验证器数,则只有两个会话会启动,并且任何其他操作都将保持关闭。

显示验证会话详细信息

根据指定的路由重新运行验证(可选)

如果配置了 BGP 原始验证,并且由于数据库遭到破坏或您想要刷新它,请手动请求路由 validation policy重新评估。此命令会导致依赖路由验证记录重新评估。依赖路由验证记录完全匹配且具有更具体的记录:

技术库参考:https://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/request-validation-policy.html.