Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP MED 属性

了解用于确定 AS 中的出口点的 MED 属性

BGP 多出口鉴别器(MED 或 MULTI_EXIT_DISC)是一个非传递属性,这意味着它不会在整个互联网上传播,而只会传播到相邻的自治系统 (AS)。MED 属性是可选的,这意味着它并不总是随 BGP 更新一起发送。MED 的目的是影响其他 AS 进入您的 AS 以达到特定前缀的方式。

MED 属性具有一个称为 衡量指标的值。如果确定退出点的所有其他因素都相同,则首选指标最低的退出点。

如果通过外部 BGP 链路接收到 MED,则会通过内部链路将其传播到 AS 中其他支持 BGP 的设备。

如果路由是从 BGP 获知的并且已关联了 MED 指标,或者如果您在配置文件中配置 MED 指标,则 BGP 更新消息将包含 MED 指标。

MED 指标根据以下一般规则使用路由进行通告:

  • 更具体的指标会覆盖不太具体的指标。也就是说,特定于组的指标会覆盖全局 BGP 指标,而特定于对等的指标会覆盖全局 BGP 或特定于组的指标。

  • 使用路由策略定义的指标将覆盖使用该语句定义的 指标。metric-out

  • 如果定义了任何指标,它将覆盖路由中收到的指标。

  • 如果收到的路由没有关联的 MED 衡量指标,并且您未显式配置衡量指标值,则不会播发任何衡量指标。如果未显式配置指标值,则在播发活动路由时,MED 值等效于零 (0)。

由于 BGP 路由选择的主要标准是 AS 路径而不是主机之间的跃点数,因此,与对等 AS 有多个连接 AS 可以拥有多个等效 AS 路径。当路由表包含到相邻 AS 中同一主机的两个路由时,分配给每个路由的 MED 指标可以确定要包含在转表中的路由。您分配的 MED 指标可以强制流量通过 AS 中的特定出口点。

图 1 说明了如何使用 MED 指标来确定路由选择。

图 1: 默认 MED 示例默认 MED 示例

显示了通过两个单独的 BGP 链路连接到路由器 C 和 D 的 AS 1 和 AS 2。AS 1 中的主机 E 更靠近路由器 C。同样在 AS 1 中的主机 F 更靠近路由器 D。由于 AS 路径是等效的,因此每个主机都存在两个路由,一个通过路由器 C,一个通过路由器 D。要强制发往主机 E 的所有流量通过路由器 C,AS 1 的网络 管理员会在每台路由器的出口点将每个路由器的 MED 指标分配给主机 E。图 1MED 衡量指标 10 分配给通过路由器 C 到主机 E 的路由,MED 衡量指标 20 分配给通过路由器 D 到主机 E 的路由。AS 2 中的 BGP 路由器为转发表选择具有较低 MED 衡量指标的路由。

默认情况下,仅比较具有相同对等 AS 的路由的 MED。但是,您可以配置中 列出的路由表路径选择选项,以不同的方式比较 MED。表 1MED 选项不是互斥的,可以组合配置或独立配置。要使 MED 选项生效,必须在整个网络中统一配置它们。您配置的一个或多个 MED 选项确定所选路由。因此,我们建议您在配置 MED 选项之前仔细评估网络的首选路由。

表 1: 用于路由表路径选择的 MED 选项

选项(名称)

功能

利用

总是比较 MED()always-compare-med

确保在路由选择过程中,始终比较来自不同 AS 中对等方的路径的 MED。

当参与网络的所有企业都同意设置 MED 的统一策略时很有用。例如,在由两个 ISP 共享的网络中,双方都必须同意某个路径是正确配置 MED 值的更好路径。

将 IGP 成本添加到 MED ()med-plus-igp

在比较用于路径选择的 MED 值之前,会将到 BGP 下一跃点目标的 IGP 路由成本添加到 MED。

此选项将替换路由器的 MED 值,但不会影响 IGP 指标比较。因此,当多个路由在 MED-plus-IGP 比较后具有相同的值,并且路由选择继续时,也会比较 IGP 路由指标,即使它已添加到 MED 值并在选择过程的早期进行比较。

当下游 AS 需要跨多个 AS 接收的特定路由的完整成本时,非常有用。

应用 Cisco IOS 非确定性行为 ()cisco-non-deterministic

指定思科 IOS 软件的非确定性行为:

  • 活动路径始终排在第一位。所有非活动但符合条件的路径都遵循活动路径,并按接收顺序进行维护。不符合条件的路径仍位于列表末尾。

  • 将新路径添加到路由表时,将在所有路由之间进行路径比较,包括那些由于丢失 MED 平局规则而绝不能选择的路径。

我们建议您不要配置此选项,因为非确定性行为有时会阻止系统正确比较路径之间的 MED。

示例:配置用于确定 AS 中的出口点的 MED 属性

此示例说明如何配置多出口鉴别器 (MED) 指标以在 BGP 更新消息中播发。

要求

在配置此示例之前,不需要除设备初始化之外的特殊配置。

概述

要直接配置 MED 指标以在 BGP 更新消息中播发,请包含以下 语句:metric-out

metric 是发送到对等方的所有路由的主要指标。它可以是 0 到 4,294,967,295 (232 – 1) 范围内的值。

还支持以下可选设置:

  • minimum-igp— 将指标设置为在内部网关协议 (IGP) 中计算的最小指标值,以访问 BGP 下一跃点。如果新计算的指标大于最小指标值,则指标值保持不变。如果新计算的指标较低,则指标值将降低到该值。

  • igp— 将指标设置为在 IGP 中计算的最新指标值,以访问 BGP 下一跃点。

  • delay-med-update- 当 MED 值增加时延迟发送 MED 更新。配置语句时包括语句。delay-med-updateigp 延迟发送更新的默认间隔为 10 分钟,除非 MED 较低或与路由关联的其他属性已更改。在层次结构级别包含语句以修改默认间隔。med-igp-update-interval minutes[edit routing-options]

  • - 指定一个 值,用于增加或减少在 IGP 中计算的衡量指标值中使用的衡量指标。offsetoffset 指标值由指定的值偏移。如果值为正数,则在 IGP 中计算的指标(通过指定 或 )将会增加。igpigp-minimumoffset 如果 IGP 中计算的指标为负数,则通过指定 或 )将减少该值。igpigp-minimumoffset

    可以是 –231 到 231 – 1 范围内的值。请注意,调整后的指标永远不能低于 0 或高于 232 – 1。offset

图 2 显示了具有内部对等会话和到相邻自治系统 (AS) 的多个出口点的典型网络。

图 2: 具有 IBGP 会话和多个出口点的典型网络具有 IBGP 会话和多个出口点的典型网络

设备 R4 具有多个环路接口,配置为模拟播发的前缀。额外的环路接口地址为 44.44.44.44/32 和 144.144.144.144/32。此示例说明如何将设备 R4 配置为将 MED 值 30 播发至设备 R3,将 MED 值 20 播发至设备 R2。这会导致 AS 123 中的所有设备优先选择通过设备 R2 的路径到达 AS 4。

配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的网络配置匹配所需的任何详细信息,然后将命令复制并粘贴到层次结构级别的 CLI 中。[edit]

设备 R1

设备 R2

设备 R3

设备 R4

配置设备 R1

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R1:

  1. 配置接口。

  2. 配置 BGP。

  3. 配置 OSPF。

  4. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  5. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow policy-optionsshow protocolsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

配置设备 R2

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R2:

  1. 配置接口。

  2. 配置 BGP。

  3. 配置 OSPF。

  4. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  5. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow policy-optionsshow protocolsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

配置设备 R3

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R3:

  1. 配置接口。

  2. 配置 BGP。

  3. 配置 OSPF。

  4. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  5. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow policy-optionsshow protocolsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

配置设备 R4

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R4:

  1. 配置接口。

    设备 R4 具有多个环路接口地址,用于模拟播发前缀。

  2. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  3. 配置 BGP。

  4. 为邻居设备 R3 配置 MED 值 30,为邻居设备 R2 配置 MED 值 20。

    此配置会导致自治系统 (AS) 123(设备 R1、设备 R2 和设备 R3 是其成员)优先选择通过设备 R2 的路径以到达 AS 4。

  5. 配置路由器 ID 和 AS 编号。

成果

在配置模式下,输入 show interfacesshow policy-optionsshow protocolsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

验证

确认配置工作正常。

检查从设备 R1 到设备 R4 的活动路径

目的

验证活动路径是否通过设备 R2。

操作

在操作模式下,输入 show route protocol bgp 命令。

意义

星号 (*) 表示首选路径是通过设备 R2。路径选择的原因列为 MED 20。

验证设备 R4 是否正确发送其路由

目的

确保设备 R4 正在向设备 R2 发送值为 20 的更新消息,向设备 R3 发送值为 30 的更新消息。

操作

在操作模式下,输入 show route advertising-protocol bgp 24.24.24.2 命令。

意义

MED 列显示设备 R4 正在向其两个外部 BGP (EBGP) 邻接方发送正确的 MED 值。

示例:使用路由过滤器配置 MED

此示例说明如何配置使用路由筛选器修改要在 BGP 更新消息中播发的多出口鉴别器 (MED) 指标的策略。

要求

在配置此示例之前,不需要除设备初始化之外的特殊配置。

概述

要配置在 BGP 更新消息中修改播发的 MED 指标的路由过滤器策略,请在策略操作中包含该 语句。metric

图 3 显示了具有内部对等会话和到相邻自治系统 (AS) 的多个出口点的典型网络。

图 3: 具有 IBGP 会话和多个出口点的典型网络具有 IBGP 会话和多个出口点的典型网络

设备 R4 具有多个环路接口,配置为模拟播发的前缀。额外的环路接口地址为 172.16.44.0/32 和 172.16.144.0/32。此示例说明如何配置设备 R4,以便为除 172.16.144.0 之外的所有路由将 MED 值 30 播发至设备 R3。对于 172.16.144.0,MED 值 10 将播发至设备 3。无论路由前缀如何,MED 值 20 都会播发至设备 R2。

配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的网络配置匹配所需的任何详细信息,然后将命令复制并粘贴到层次结构级别的 CLI 中。[edit]

设备 R1

设备 R2

设备 R3

设备 R4

配置设备 R1

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R1:

  1. 配置设备接口。

  2. 配置 BGP。

  3. 配置 OSPF。

  4. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  5. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow protocolsshow policy-optionsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

配置设备 R2

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R2:

  1. 配置设备接口。

  2. 配置 BGP。

  3. 配置 OSPF。

  4. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  5. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow protocolsshow policy-optionsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

配置设备 R3

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R3:

  1. 配置设备接口。

  2. 配置 BGP。

  3. 配置 OSPF。

  4. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  5. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow protocolsshow policy-optionsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

配置设备 R4

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R4:

  1. 配置设备接口。

    设备 R4 具有多个环路接口地址,用于模拟播发前缀。

  2. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  3. 配置 BGP。

  4. 配置两个 MED 策略。

  5. 配置两个 EBGP 邻接方,将两个 MED 策略应用于设备 R3,并将 MED 值 20 应用于设备 R2。

  6. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow protocolsshow policy-optionsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

验证

确认配置工作正常。

检查从设备 R1 到设备 R4 的活动路径

目的

验证活动路径是否通过设备 R2。

操作

在操作模式下,输入 show route protocol bgp 命令。

意义

输出显示,对于除 172.16.144.0/32 之外的所有路由,设备 R4 通告的路由的首选路径是通过设备 R2。对于 172.16.144.0/32,首选路径是通过设备 R3。

验证设备 R4 是否正确发送其路由

目的

确保设备 R4 正在向设备 R2 发送值为 20 的更新消息,向设备 R3 发送值为 30 的更新消息。

操作

在操作模式下,输入 show route advertising-protocol bgp 命令。

意义

MED 列显示设备 R4 正在向其两个 EBGP 邻接方发送正确的 MED 值。

示例:使用社区配置 MED

对于来自特定社区的所有路由,将多出口鉴别器 (MED) 指标设置为 20。

示例:将 MED 路径属性与 IGP 指标相关联并延迟 MED 更新

此示例说明如何将多出口鉴别器 (MED) 路径属性与内部网关协议 (IGP) 指标相关联,以及如何配置计时器以延迟 MED 属性的更新。

要求

在配置此示例之前,不需要除设备初始化之外的特殊配置。

概述

可以将 BGP 配置为根据路由的内部 BGP (IBGP) 路由下一跃点的 IGP 距离通告路由的 MED 属性。IGP 指标使内部路由能够根据管理设置遵循最短路径。在某些部署中,最好将 IGP 最短路径信息传递给相邻自治系统 (AS) 中的外部 BGP (EBGP) 对等方。这允许这些 EBGP 对等方使用尽可能短的路径将流量转发到您的 AS。

从 EBGP 对等方获知的路由通常在直接连接的接口上具有下一跃点,因此 IGP 值等于零。零是宣传的值。当 BGP 对等方发送需要本地系统执行下一跃点解析(IBGP 配置、联合对等方内的配置或包含 该语句的 EBGP 配置)的第三方下一跃点时,IGP 指标是一个非零值。multihop 在这些情况下,通过包含 或 选项将 MED 值与 IGP 指标相关联可能是有意义的。metric-out minimum-igpmetric-out igp

将 MED 与 IGP 指标相关联的缺点是,当网络中存在 IGP 不稳定时,可能会出现路由通告过多的风险。为 MED 更新配置延迟提供了一种在此类情况下减少路由播发的机制。延迟的工作原理是在下一跃点的 IGP 指标更改时减慢 MED 更新速度。该方法使用计时器定期播发 MED 更新。计时器过期时,已配置路由 的 MED 属性将更新为下一跃点的当前 IGP 指标。metric-out igp delay-updates 启用 BGP 的设备会针对 MED 属性已更改的路由发出播发。

该 选项标识必须禁止其 MED 更新的 BGP 组(或对等方)。delay-updates 默认情况下,播发 MED 更新的时间设置为 10 分钟。您可以通过在 配置中包含 语句来将间隔增加到最多 600 分钟。med-igp-update-intervalrouting-options

注:

如果启用了不间断活动路由 (NSR) 并且发生了切换,则延迟的 MED 更新可能会在切换发生后立即播发。

配置该 选项时,IGP 指标会直接跟踪 IBGP 对等方的 IGP 成本。metric-out igp 当 IGP 成本下降时,通告的 MED 值也会下降。相反,当IGP成本上升时,MED值也会上升。

配置该 选项时,仅当 IBGP 对等方的 IGP 成本下降时,通告的 MED 值才会更改。metric-out minimum-igp IGP 成本的增加不会影响 MED 值。路由器会监控并记住最低 IGP 开销,直到路由进程 (rpd) 重新启动。仅当 MED 低于之前播发的值或与路由关联的其他属性已更改,或者 BGP 对等方正在响应刷新路由请求时,BGP 对等方才会发送更新。

此示例使用 OSPF 配置中的语句来 演示当 IGP 指标更改时,MED 也会在配置的延迟间隔后更改。metric OSPF 指标的范围为 1 到 65535。

图 4 显示了示例拓扑。

图 4: 用于延迟 MED 更新的拓扑用于延迟 MED 更新的拓扑

在此示例中,设备 R1 播发的 MED 值与在 AS 1 中运行的 IGP 相关联。当 AS 2 将流量转发到 AS 1 时,设备 R1 通告的 MED 值会影响相邻 AS (AS 2) 的决策。

配置

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的网络配置匹配所需的任何详细信息,然后将命令复制并粘贴到层次结构级别的 CLI 中。[edit]

设备 R1

设备 R2

设备 R3

设备 R4

设备 R5

设备 R6

设备 R7

设备 R8

配置设备 R1

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 R1:

  1. 配置接口。

  2. 配置 IBGP。

  3. 配置 EBGP。

  4. 将 MED 值与 IGP 指标相关联。

    包含该 选项时,MED 更新的默认值为 10 分钟。delay-med-update 排除该 选项时,MED 更新会在 IGP 指标更改后立即发生。delay-med-update

  5. (可选)配置 MED 更新的更新间隔。

    您可以配置从 10 分钟到 600 分钟的间隔。

  6. 配置 OSPF。

    此处使用该语句来演示 IGP 指标更改时发生的情况。metric

  7. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

  8. 配置路由器 ID 和自治系统 (AS) 编号。

成果

在配置模式下,输入 show interfacesshow policy-optionsshow protocolsshow routing-options 命令,以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit。根据您的网络需要在拓扑中的其他设备上重复这些配置步骤。

验证

确认配置工作正常。

检查 BGP 通告

目的

验证设备 R1 是否向设备 R4 播发反映 IGP 指标的 BGP MED 值。

操作

在操作模式下,输入 show route advertising-protocol bgp 命令。

意义

MED 列中的 601 值表示 MED 值已更新,以反映配置的 OSPF 指标。

验证 OSPF 指标更改时 MED 值是否更改

目的

确保在将 OSPF 指标提升到 700 时,MED 值将更新以反映此更改。

操作

从配置模式,输入 set protocols ospf area 0 interface fe-1/2/0.2 metric 700 命令。

等待 12 分钟(配置的延迟时间段)后,从操作模式输入 命令。show route advertising-protocol bgp

意义

MED 列中的 701 值显示 MED 值已更新,以反映配置的 OSPF 指标。

测试最小 igp 设置

目的

更改配置以使用 语句而不是 语句。minimum-igpigp 增加 OSPF 指标时,MED 值保持不变,但减少 OSPF 指标时,MED 值将反映新的 OSPF 指标。

操作

在配置模式下,删除语句,添加语句,然后增加 OSPF 指标。igpminimum-igp

在操作模式下,输入 命令以确保 MED 值不会更改。show route advertising-protocol bgp

在配置模式下,降低 OSPF 指标。

在操作模式下,输入 命令以确保 MED 值确实更改。show route advertising-protocol bgp

意义

配置语句 后,MED 值仅在有较短路径可用时更改。minimum-igp